Merge from origin/emacs-25
[emacs.git] / ChangeLog.2
blob87a78fb33e59304e607f2dafcf02ac758fa28fe9
1 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
3         Fix 'expand-file-name' during startup on MS-Windows
5         * src/w32.c (w32_init_file_name_codepage): New function, resets
6         file_name_codepage and w32_ansi_code_page to undo the values
7         recorded during dumping.
8         (codepage_for_filenames): Fix an embarrassing typo.  Ignore the
9         cached value of file-name encoding if it is nil, i.e. not
10         initialized yet.  Actually cache the last used file-name encoding
11         to avoid calling APIs when not necessary.
13         * src/w32.h (w32_init_file_name_codepage): Add prototype.
15         * src/w32term.c (syms_of_w32term): Set the value of
16         w32_unicode_filenames according to the OS version.  This avoids
17         resetting it during startup, which then causes temacs to run with
18         the incorrect value.
20         * src/emacs.c (main): Call w32_init_file_name_codepage early
21         during the startup.
23         * src/fileio.c (Fexpand_file_name) [WINDOWSNT]: Update 'newdir'
24         after converting $HOME to a UTF-8 string, so that 'newdirlim' is
25         consistent with it.  (Bug#25038)
27         * lisp/international/mule-cmds.el (set-locale-environment): Set
28         'default-file-name-coding-system' to the ANSI codepage even in
29         non-interactive sessions.
31         * lisp/files.el (directory-abbrev-alist, abbreviated-home-dir):
32         Doc fix.
33         (abbreviate-file-name): Decode 'abbreviated-home-dir' if it is a
34         unibyte string.
36         * doc/lispref/files.texi (Directory Names): Index
37         'directory-abbrev-alist'.
39 2016-12-07  Nicolas Petton  <nicolas@petton.fr>
41         * admin/authors.el (authors-renamed-files-alist): Addition.
43 2016-12-07  Glenn Morris  <rgm@gnu.org>
45         Tweak refcard note about documentation location
47         * etc/refcards/calccard.tex, etc/refcards/cs-dired-ref.tex:
48         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
49         * etc/refcards/de-refcard.tex, etc/refcards/dired-ref.tex:
50         * etc/refcards/fr-dired-ref.tex, etc/refcards/fr-refcard.tex:
51         * etc/refcards/fr-survival.tex, etc/refcards/gnus-refcard.tex:
52         * etc/refcards/orgcard.tex, etc/refcards/pl-refcard.tex:
53         * etc/refcards/pt-br-refcard.tex, etc/refcards/refcard.tex:
54         * etc/refcards/ru-refcard.tex, etc/refcards/sk-dired-ref.tex:
55         * etc/refcards/sk-refcard.tex, etc/refcards/sk-survival.tex:
56         * etc/refcards/survival.tex, etc/refcards/vipcard.tex:
57         * etc/refcards/viperCard.tex: Tweak documentation url.
59 2016-12-07  Glenn Morris  <rgm@gnu.org>
61         Improve treatment of Fortran's "class is"
63         * lisp/progmodes/f90.el (f90-start-block-re, f90-no-block-limit):
64         Handle "class is".  (Bug#25039)
65         * test/automated/f90.el (f90-test-bug25039): New test.
67 2016-12-07  Nicolas Petton  <nicolas@petton.fr>
69         Bump Emacs version to 25.1.90
71         * README:
72         * configure.ac:
73         * msdos/sed2v2.inp:
74         * nt/README.W32: Bump Emacs version to 25.1.90
76 2016-12-07  Nicolas Petton  <nicolas@petton.fr>
78         Bump Emacs version
80         * README:
81         * configure.ac:
82         * etc/NEWS:
83         * msdos/sed2v2.inp:
84         * nt/README.W32: Bump Emacs version to 25.2.90
86 2016-12-07  Karl Fogel  <kfogel@red-bean.com>
88         Handle TeX comments when making new paragraph
90         * lisp/textmodes/tex-mode.el (tex-handle-newline): New function.
91           Handle comment case directly, and dispatch to `tex-terminate-paragraph'
92           for original behavior in non-comment case.
93           (tex-mode-map): Bind above to C-j, replacing `tex-terminate-paragraph'.
95 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
97         Restore keystroke echo in 'C-q'
99         * lisp/simple.el (read-quoted-char): Use 'read-event' instead of
100         'read-key', to avoid losing the keystroke echo in 'C-q'.  (Bug#24635)
102 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
104         Improve documentation of 'current-word'
106         * lisp/simple.el (current-word): Clarify and improve the doc
107         string.  (Bug#24979)
109 2016-12-07  Chunyang Xu  <mail@xuchunyang.me>
111         Fix a typo in an Eshell defcustom
113         * lisp/eshell/esh-mode.el (eshell-scroll-to-bottom-on-output): Fix
114         a typo in the 'others' standard value.  (Bug#24983)
116 2016-12-07  Hong Xu  <hong@topbug.net>  (tiny change)
118         Minor copyedits of electric-pair-mode
120         * doc/emacs/programs.texi (Matching): Add index entries.  Fix
121         typos.  (Bug#25012)
123 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
125         Fix documentation of 'invocation-directory'
127         * doc/lispref/os.texi (System Environment): Fix wording of the
128         description of 'invocation-directory'.  (Bug#24999)
130 2016-12-07  Glenn Morris  <rgm@gnu.org>
132         * admin/authors.el (authors-aliases): Add an entry.
134 2016-12-07  Philipp Stephani  <phst@google.com>
136         Guard terminal parameter in XTerm mouse mode
138         It has been observed (in the HTerm terminal emulator) that the
139         event stored in the 'xterm-mouse-last-down' terminal parameter gets
140         overwritten during a mouse drag operation, causing Emacs to attempt to
141         synthesize the non-existing <drag-mouse-0> event.  Copy the event into
142         the terminal parameter to protect against such modifications.
144         * lisp/xt-mouse.el (xterm-mouse-translate-1): Guard against modification
145         of input event list.
147 2016-12-07  Nicolas Petton  <nicolas@petton.fr>
149         * etc/AUTHORS: Regenerate the AUTHORS file
151 2016-12-07  Nicolas Petton  <nicolas@petton.fr>
153         Update ChangeLog files and authors.el
155         * admin/authors.el (authors-renamed-files-alist): Add entries for
156           obsolete files.
157         * ChangeLog.2: Update.
159 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
161         Fix menu bindings of Dired 'A' and 'Q' commands
163         * lisp/dired.el (dired-mode-map): Rebind "Search Files" and "Query
164         Replace in Files" menu items to 'dired-do-find-regexp' and
165         'dired-do-find-regexp-and-replace', respectively.  (Bug#24977)
167 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
168 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
170         Avoid errors in shr-pixel-column due to dedicated windows
172         * lisp/net/shr.el (shr-pixel-column): If we are switching to
173         another buffer in the selected window, make that window
174         temporarily non-dedicated.  (Bug#24950)
176 2016-12-07  Tino Calancha  <tino.calancha@gmail.com>
178         Update format-time-string documentation
180         * doc/lispref/os.texi (Time Parsing):
181         Document %F, %g, %G, %u and %V.
183 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
185         * admin/release-process: Update versions and blocking bug numbers.
187 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
189         Improve documentation of functions that accept time values
191         * doc/lispref/os.texi (Time Calculations): Mention the meaning of
192         'nil' or a scalar number as the time-value argument.  Add a
193         cross-reference to 'float-time' for computing a time difference as
194         a scalar number of seconds.
196         * src/editfns.c (Fformat_time_string, Ftime_less_p)
197         (Ftime_subtract, Ftime_add, Fdecode_time, Fcurrent_time_string)
198         (Fcurrent_time_zone): Mention in the doc strings the meaning of
199         nil argument and the fact that a time value can be a scalar number
200         of seconds since the epoch.
201         (Ftime_subtract): Mention 'float-time'.
203 2016-12-07  Daniel Colascione  <dancol@dancol.org>
205         Speed up initialization by preferring /dev/urandom to GnuTLS
207         * src/sysdep.c (init_random): Try /dev/urandom before GnuTLS.
209         (cherry picked from commit a37eba849eddc41375ad73974f6fcb1258aa8eba)
211 2016-12-07  Glenn Morris  <rgm@gnu.org>
213         Add a comment in generated refcards about the source
215         * etc/refcards/calccard.tex, etc/refcards/cs-dired-ref.tex:
216         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
217         * etc/refcards/de-refcard.tex, etc/refcards/dired-ref.tex:
218         * etc/refcards/fr-dired-ref.tex, etc/refcards/fr-refcard.tex:
219         * etc/refcards/fr-survival.tex, etc/refcards/gnus-refcard.tex:
220         * etc/refcards/orgcard.tex, etc/refcards/pl-refcard.tex:
221         * etc/refcards/pt-br-refcard.tex, etc/refcards/refcard.tex:
222         * etc/refcards/ru-refcard.tex, etc/refcards/sk-dired-ref.tex:
223         * etc/refcards/sk-refcard.tex, etc/refcards/sk-survival.tex:
224         * etc/refcards/survival.tex, etc/refcards/vipcard.tex:
225         * etc/refcards/viperCard.tex: Add comment about the source.
227 2016-12-07  Dmitry Gutov  <dgutov@yandex.ru>
229         js-mode: Fix indent problem after a regexp
231         * lisp/progmodes/js.el (js--looking-at-operator-p): Check that the
232         slash is not ending a regexp (bug#24854).
234 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
236         Fix sluggish display of symbols in UTF-8 language environment
238         * lisp/international/fontset.el (setup-default-fontset): Make sure
239         Symbola and FreeMono are set up in the default fontset as belonging
240         to the "iso10646-1" registry.  In the UTF-8 locale, this avoids a
241         long and futile search for a suitable font, whose side effect is a
242         lot of consing, which then hits the font-cache compacting issue,
243         and causes very sluggish redisplay of characters displayed by
244         these fonts.  All this happens because the default for the
245         registry is "iso8859-1".  (Bug#24953)
247 2016-12-07  Glenn Morris  <rgm@gnu.org>
249         Don't confuse how Texinfo outputs @var with the input
251         * doc/emacs/rmail.texi (Movemail):
252         * doc/lispref/control.texi (Pattern matching case statement):
253         * doc/lispref/frames.texi (Size and Position):
254         * doc/lispref/processes.texi (Asynchronous Processes):
255         * doc/lispref/text.texi (Document Object Model):
256         * doc/lispref/windows.texi (Coordinates and Windows):
257         Do not upper-case the argument of @var.
259 2016-12-07  Glenn Morris  <rgm@gnu.org>
261         * doc/lispref/display.texi (Scroll Bars):
262         * doc/lispref/frames.texi (Size and Position):
263         * doc/lispref/windows.texi (Window Sizes): Fix arglist typos.
265         * doc/emacs/cmdargs.texi (Initial Options): Copyedit for --daemon.
267 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
269         More fixes in copyright notices in etc/refcards/
271         * etc/refcards/calccard.tex:
272         * etc/refcards/cs-dired-ref.tex:
273         * etc/refcards/cs-refcard.tex:
274         * etc/refcards/cs-survival.tex:
275         * etc/refcards/de-refcard.tex:
276         * etc/refcards/dired-ref.tex:
277         * etc/refcards/fr-dired-ref.tex:
278         * etc/refcards/fr-refcard.tex:
279         * etc/refcards/fr-survival.tex:
280         * etc/refcards/orgcard.tex:
281         * etc/refcards/pl-refcard.tex:
282         * etc/refcards/pt-br-refcard.tex:
283         * etc/refcards/refcard.tex:
284         * etc/refcards/ru-refcard.tex:
285         * etc/refcards/sk-dired-ref.tex:
286         * etc/refcards/sk-refcard.tex:
287         * etc/refcards/sk-survival.tex:
288         * etc/refcards/survival.tex:
289         * etc/refcards/vipcard.tex:
290         * etc/refcards/viperCard.tex: Change "GNU Emacs" to "this
291         document" in copyright notices.  (Bug#24520)
293 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
295         Update copyright text in refcards
297         * etc/refcards/viperCard.tex:
298         * etc/refcards/vipcard.tex:
299         * etc/refcards/survival.tex:
300         * etc/refcards/sk-survival.tex:
301         * etc/refcards/sk-dired-ref.tex:
302         * etc/refcards/sk-refcard.tex:
303         * etc/refcards/ru-refcard.tex:
304         * etc/refcards/refcard.tex:
305         * etc/refcards/pt-br-refcard.tex:
306         * etc/refcards/pl-refcard.tex:
307         * etc/refcards/orgcard.tex:
308         * etc/refcards/gnus-refcard.tex:
309         * etc/refcards/fr-survival.tex:
310         * etc/refcards/fr-refcard.tex:
311         * etc/refcards/fr-dired-ref.tex:
312         * etc/refcards/dired-ref.tex:
313         * etc/refcards/de-refcard.tex:
314         * etc/refcards/cs-survival.tex:
315         * etc/refcards/cs-refcard.tex:
316         * etc/refcards/cs-dired-ref.tex:
317         * etc/refcards/calccard.tex: Update the copyright blurb.  (Bug#24520)
319 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
321         Fix Outline command names
323         * doc/emacs/text.texi (Foldout): Use the outline-* names instead
324         of the obsolete aliases.  (Bug#24890)
326 2016-12-07  Philipp Stephani  <phst@google.com>
328         Send text received by bracketed paste to process
330         See Bug#24639.
332         * lisp/term.el (term--xterm-paste): New function.
333         (term-raw-map): Use it.
334         (xterm--pasted-text): Declare function from xterm.el.
336 2016-12-07  Alan Mackenzie  <acm@muc.de>
338         Correct the statement about programming modes always running prog-mode-hook.
340         * doc/emacs/modes.texi (Major Modes): Amend the statement about programming
341         modes running prog-mode-hook to say that it applies to many (not all) such
342         modes, and specifying exactly which modes.
344 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
346         Improve documentation of 'occur'
348         * doc/emacs/search.texi (Other Repeating Search): Clarify how to
349         use Occur with search strings from last Isearch.  (Bug#24890)
351 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
353         Do call debugger on failed cl-assert
355         "Don't call debug on failed cl-assert..." removed the call to `debug' in
356         cl--assertion-failed because `debug' calls `kill-emacs' in batch mode,
357         thus messing up ert test runs.  However, calling the debugger is useful
358         because it allows catching failed assertions even inside
359         `condition-case' calls.  The problem with ert can be avoided by calling
360         `debugger' instead of `debug' directly, since ert installs its own
361         debugger while running tests.
363         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): Call
364         `debugger' if `debug-on-error' is non-nil.
366 2016-12-07  Daniel Colascione  <dancol@dancol.org>
368         Avoid infloop in python
370         Fix bug#24905
372         * lisp/progmodes/python.el (python-info-docstring-p): Improve
373         infloop avoidance: replace (bobp) with generic test for
374         forward progress.
375         * test/automated/python-tests.el (python-bob-infloop-avoid): Add
376         test for bug#24905
378 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
380         Don't refer to obsolete FEATURE-unload-hook
382         * doc/lispref/tips.texi (Coding Conventions): Refer to
383         FEATURE-unload-function rather than its obsolete variant
384         FEATURE-unload-hook.  (Bug#24890)
386 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
388         Improve documentation of dabbrevs
390         * lisp/dabbrev.el (dabbrev-expand): Doc fix.  (Bug#24890)
392         * doc/emacs/abbrevs.texi (Dynamic Abbrevs): Mention
393         'dabbrev-check-all-buffers', 'dabbrev-check-other-buffers', and
394         'dabbrev-ignored-buffer-names' and their purpose.  (Bug#24890)
396 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
398         * lisp/chistory.el (list-command-history): Doc fix.  (Bug#24890)
400         * lisp/simple.el (set-mark-command): Doc fix.  (Bug#24890)
402 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
404         Improve documentation of some Help commands
406         * doc/emacs/help.texi (Help Mode): Fix mistake in key sequences.
407         Mention the 'l' and 'r' keys.
408         (Misc Help): Mention that 'C-h m' describes key bindings.
409         (Bug#24890)
411 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
413         Fix documentation of yes-or-no prompts
415         * doc/emacs/mini.texi (Yes or No Prompts): Fix mistakes in key
416         sequences.  (Bug#24890)
418 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
420         Fix documentation of partial completion style
422         * doc/emacs/mini.texi (Completion Styles): Fix the description of
423         the wildcard '*'.  (Bug#24890)
425 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
427         Fix documentation of the mode line on emacsclient frames
429         * doc/emacs/screen.texi (Mode Line): Document the '@' indicator on
430         emacsclient frames.
432 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
434         Fix description of 'C-z' in User manual
436         * doc/emacs/entering.texi (Exiting): 'C-z' is bound to
437         'suspend-frame'.  (Bug#24890)
439 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
441         Improve and clarify documentation of Outline Mode
443         * doc/emacs/text.texi (Outline Visibility): Use the outline-*
444         names instead of the obsolete aliases.  (Bug#24890)
446         * lisp/outline.el (outline-hide-sublevels, outline-hide-other)
447         (outline-hide-body): Doc fixes.  (Bug#24890)
449 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
451         Add Emacs version number to nt/README.W32
453         * nt/README.W32: Include the version number of the latest Emacs
454         release.
456         * admin/admin.el (set-version): Update the version in nt/README.W32.
458 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
460         Fix python-mode hideshow regexp
462         2015-02-07 "Fix hideshow integration[...]" changed the regexp added to
463         `hs-special-modes-alist' so that it worked when not searching from the
464         beginning of the line.  However, this allows matching tokens ending in
465         "def" or "class", not just those keywords.  This results in an infinite
466         loop in hs-hide-all (Bug #24815).
468         * lisp/progmodes/python.el (python-mode): Add symbol boundaries around
469         the def|class matching part of the regexp added to
470         hs-special-modes-alist.
472 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
474         Modernize usage of 'macOS' in doc and comments
476         Apple changed the spelling of its operating system again, to "macOS",
477         effective with macOS 10.12 Sierra (2016-09-20).  Change Emacs
478         documentation and comments to match this.  Stick with older OS
479         spellings ("OS X", "Mac OS X") when talking about older releases where
480         the older names are more correct.
482 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
484         Prefer comments /* like this */ in C code
486         Emacs C code assumes C99 features, but has long used traditional
487         comments /* like this */ instead of C99-style comments // like this.
488         Stick with traditional comments for now, partly for style, partly as
489         it may be safer with compilers that are not fully in C99 mode.
491 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
493         * doc/lispref/loading.texi (Autoload): Better link (Bug#24845).
495 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
497         Clarify documentation of face attribute functions
499         * doc/lispref/display.texi (Attribute Functions): Make sure to
500         document that an omitted FRAME argument means the same as nil.
501         (Bug#24879)
503 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
505         Don't call debug on failed cl-assert
507         Doing this causes problems when running ert tests, for
508         instance (Bug#24778).  The call to `debug` when `debug-on-error' is
509         non-nil was introduced in 2015-02-14 "* lisp/emacs-lisp/cl*.el: Use
510         define-inline and move some code...".
512         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): Don't call
513         `debug' directly.
515 2016-12-07  Phillip Lord  <phillip.lord@russet.org.uk>
517         Update README for precompiled windows Emacs.
519          * nt/README.W32: Describe 64 and 32-bit downloads, optional
520            dependencies bundle. Remove old material on sourcing dependencies.
521            Remove references to Windows 95. Update GUI references to recent
522            Windows. Remove references to Usenet.
524 2016-12-07  Hong Xu  <hong@topbug.net>
526         Clarify documentation of 'vc-responsible-backend' wrt symlinks
528         * lisp/vc/vc.el (vc-responsible-backend): Clarify that symlinks
529         are not resolved when the VC backend is reported.
531         * doc/lispref/files.texi (Truenames): Document
532         'vc-responsible-backend'.  (Bug#23436)
533         * doc/emacs/maintaining.texi (Version Control Systems): Fix a
534         typo.
536 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
538         Clarify doc string of 'transpose-sexps'
540         * lisp/simple.el (transpose-sexps): Clarify the conditions for
541         transposing sexps that are lists or strings.  Mention the effect
542         of the prefix argument.  (Bug#24860)
544 2016-12-07  Tibor Csögör  <tibi@tiborius.net>  (tiny change)
546         Fix docstring of 'browse-url-firefox-new-window-is-tab'
548         * lisp/net/browse-url.el (browse-url-firefox-new-window-is-tab):
549         Remove obsolete note from docstring (obsoleted by previous commits).
550         (Bug#24843)
552 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
554         Improve documentation of 'font-lock-remove-keywords'
556         * doc/lispref/modes.texi (Customizing Keywords): Clarify the
557         'keywords' argument of 'font-lock-remove-keywords'.  Suggested by
558         Hong Xu <hong@topbug.net>.  (Bug#24830)
560 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
562         Fix documentation of the command summary key
564         * doc/misc/info.texi (Help-^L, Help-Xref, Top): Emacs Info uses
565         '?' for the summary of commands, whereas the stand-alone reader
566         uses 'H'.  (Bug#24825)
568 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
570         Mark relocation workarounds with REL_ALLOC
572         * src/search.c (boyer_moore): Mark workarounds for ralloc.c
573         relocation of buffer text with "#ifdef REL_ALLOC".
575 2016-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
577         Fix documentation for 'eudc-options-file'
579         * doc/misc/eudc.texi (The Server Hotlist): Update the default
580         value of 'eudc-options-file'.
582         Backport:
584         (cherry picked from commit 0575fd95d0b92a9a0ebff8df183a449190f74dbc)
586 2016-12-07  Tibor Csögör  <tibi@tiborius.net>
588         Fix documentation of 'eudc-inline-expansion-format'
590         * doc/misc/eudc.texi (Inline Query Expansion): Fix the default value of
591         'eudc-inline-expansion-format'. (Bug#24840)
593         Backport:
595         (cherry picked from commit 1fef1387c387d80f8ece326621539b89a6965702)
597 2016-12-07  Clément Pit--Claudel  <clement.pitclaudel@live.com>
599         python.el: Fix detection of native completion in Python 3 (bug #24401)
601         With Python 3.5, (python-shell-completion-native-get-completions ... "")
602         would return an empty list, causing python.el to think that native
603         completion was unavailable (the difference between Python 2 and Python 3
604         is due to https://bugs.python.org/issue25660).
606         * lisp/progmodes/python.el (python-shell-completion-native-try): Use "_"
607           to check whether native completion is available instead of "".
609 2016-12-07  Glenn Morris  <rgm@gnu.org>
611         * Makefile.in (install-arch-indep): Skip etc/refcards/emacsver.tex.in.
613 2016-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
615         * lisp/subr.el (set-transient-map): Exit for unbound events (bug#24755).
617 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
619         Update category-table for Chinese characters
621         * lisp/international/characters.el (standard-category-table):
622         Update the ranges of Han and Chinese characters.  (Bug#24798)
624 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
626         Inhibit buffer relocation during regex searches
628         * src/search.c (looking_at_1, fast_looking_at, search_buffer): Prevent
629         relocation of buffer contents during calls to re_search_2.  This ensures
630         the pointers into buffer text won't be invalidated by
631         r_alloc_sbrk (called from malloc with configurations where
632         REL_ALLOC=yes).
634 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
636         Revert fixes to allocation of regex matching
638         The fix was not complete, and completing it was proving too complicated.
640         - Revert "* src/regex.c (re_search_2): Make new code safe for
641                   -Wjump-misses-init."
642           This reverts commit c2a17924a57483d14692c8913edbe8ad24b5ffbb.
643         - Revert "Port to GCC 6.2.1 + --enable-gcc-warnings"
644           This reverts commit f6134bbda259c115c06d4a9a3ab5c39340a15949.
645         - Revert "Fix handling of allocation in regex matching"
646           This reverts commit ad66b3fadb7ae22a4cbb82bb1507c39ceadf3897.
647         - Revert "Fix handling of buffer relocation in regex.c functions"
648           This reverts commit ee04aedc723b035eedaf975422d4eb242894121b.
650 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
652         Comment for bug#24793
654         * lisp/info.el (Info-mode-font-lock-keywords): Add a comment
655         explaining why `..' quoting is not fontified using the
656         'Info-quoted' face.  (Bug#24793)
658 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
660         Default REL_ALLOC to 'no'
662         This should make ralloc-related bugs less likely on GNU/Linux
663         systems with bleeding-edge glibc.  See the email thread containing:
664         http://lists.gnu.org/archive/html/emacs-devel/2016-10/msg00801.html
665         Do not merge to master.
666         * configure.ac (REL_ALLOC): Default to 'no' on all platforms, not
667         merely on platforms with Doug Lea malloc.  Although bleeding-edge
668         glibc no longer exports __malloc_initialize_hook and so longer
669         passes the configure-time test for Doug Lea malloc, ralloc tickles
670         longstanding bugs like Bug#24358 and Bug#24764 and Emacs is likely
671         to be more reliable without it.  This patch is not needed on
672         master, which uses hybrid malloc in this situation.
674 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
676         Yet another fix for using pointers into buffer text
678         * src/search.c (boyer_moore): Update pointers to buffer text
679         after call to set_search_regs.  (Bug#24358)
681 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
683         Another fix for using pointer to buffer text
685         * src/search.c (Freplace_match): Move the call to BYTE_POS_ADDR
686         after the call to xpalloc, to avoid the danger of buffer text
687         relocation after its address was taken.  (Bug#24358)
689 2016-12-07  Michael Albinus  <michael.albinus@gmx.de>
691         Fix Bug#24478
693         * lisp/net/tramp-sh.el (tramp-histfile-override): Change default value
694         to "~/.tramp_history".
695         (tramp-open-shell): Check proper HISTFILE setting.
696         (tramp-maybe-open-connection): Cleanup also for errors.  (Bug#24478)
698 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
700         Port --enable-gcc-warnings to bleeding-edge glibc
702         Bleeding-edge glibc sets emacs_cv_var_doug_lea_malloc to 'no'.
703         Do not merge to master.
704         * configure.ac: Check for valloc decl when compiling gmalloc.c.
705         * src/gmalloc.c (emacs_abort) [emacs]: Adjust decl to match
706         what is in lisp.h.  Remove duplicate decl.
707         (aligned_alloc): #undef before defining.
708         (aligned_alloc, memalign) [!MSDOS]: Declare.
709         (valloc) [HAVE_DECL_VALLOC]: Remove duplicate decl.
711 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
713         Fix handling of buffer relocation in regex.c functions
715         * src/search.c (search_buffer): Updated the base pointer to buffer
716         text after the call to re_search_2.  (Bug#24358)
718 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
720         Avoid relocating buffers while libxml2 reads its text
722         * src/xml.c (parse_region) [REL_ALLOC]: Freeze the ralloc arena
723         while libxml2 reads the current buffer's text.  (Bug#24764)
725 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
727         Attempt to catch reads from a buffer that is relocated
729         * src/xml.c (parse_region): Add assertion to ensure buffer text is
730         not relocated while libxml2 is reading it.  (Bug#24764)
732 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
734         Revert "* lisp/simple.el (process-menu-mode, list-processes--refresh):"
736         This reverts commit a4285bcb1114e29200001f33af9b4802167d6140.
737         Do not merge to master!
739 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
741         Revert "* lisp/ibuf-ext.el (ibuffer-do-shell-command-file):"
743         This reverts commit b0c447e4668116cecfda91d0203cb7cac2486d92.
744         Do not merge to master!
746 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
748         Revert "* lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)"
750         This reverts commit cf3c19b0298236293d9c56d5ba425af4f42c1f8e.
751         Do not merge to master!
753 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
755         ;* src/w32heap.c: Fix typo and wording of the comments.
757 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
759         electric-quote mode no longer worries about coding
761         * doc/emacs/text.texi (Quotation Marks), etc/NEWS: Document this.
762         * lisp/electric.el (electric--insertable-p): Remove.
763         All uses removed (Bug#24759).
765 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
767         * src/regex.c (re_search_2): Make new code safe for -Wjump-misses-init.
769 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
771         Port to GCC 6.2.1 + --enable-gcc-warnings
773         * src/regex.c (ENSURE_FAIL_STACK, re_search_2):
774         Redo recent regex changes to avoid complaints from GCC 6.2.1 when
775         Emacs is configured with --enable-gcc-warnings.  Also, work around
776         GCC bug 78081, which was uncovered by this new code.
778 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
780         Explain how to debug emacsclient lisp errors
782         * doc/lispref/debugging.texi (Error Debugging): Mention that
783         debug-on-signal is useful for getting backtraces from
784         emacsclient (Bug#24616).
786 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
788         Let describe-function work for lambda again
790         Since commit "* lisp/help-fns.el (describe-function): More type
791         checking[...]", `describe-function' throws a user-error when given a
792         non-symbol.  This prevents the [back] button in a *Help* buffer from
793         working when the page it goes back to describes an anonymous
794         function (e.g., the result of `describe-key' on a key which is bound to
795         a lambda form).
797         * lisp/help-fns.el (describe-function): Move the checks on FUNCTION
798         being an fbound symbol into the `interactive' form.  This allows
799         non-interactive calls to pass an anonymous function (Bug #24221).  Note
800         that passing a non-bound symbol non-interactively will still trigger a
801         `void-function' error from `describe-function-1'.
803 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
805         Fix kill-line's docstring
807         * lisp/simple.el (kill-line): The effect of show-trailing-whitespace is
808         important lines with *no* nonblanks (Bug #16654).
810 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
812         Fix handling of allocation in regex matching
814         `re_match_2_internal' uses pointers to the lisp objects that it
815         searches.  Since it may call malloc when growing the "fail stack", these
816         pointers may be invalidated while searching, resulting in memory
817         curruption (Bug #24358).
819         To fix this, we check the pointer that the lisp object (as specified by
820         re_match_object) points to before and after growing the stack, and
821         update existing pointers accordingly.
823         * src/regex.c (STR_BASE_PTR): New macro.
824         (ENSURE_FAIL_STACK, re_search_2): Use it to convert pointers into
825         offsets before possible malloc call, and back into pointers again
826         afterwards.
827         (POS_AS_IN_BUFFER): Add explanatory comment about punning trick.
828         * src/search.c (search_buffer): Instead of storing search location as
829         pointers, store them as pointers and recompute the corresponding address
830         for each call to `re_search_2'.
831         (string_match_1, fast_string_match_internal, fast_looking_at):
832         * src/dired.c (directory_files_internal): Set `re_match_object' to Qnil
833         after calling `re_search' or `re_match_2'.
834         * src/regex.h (re_match_object): Mention new usage in commentary.
836 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
838         * lisp/electric.el (electric-quote-mode): Improve doc (Bug#24759).
840 2016-12-07  Tino Calancha  <tino.calancha@gmail.com>
842         vc-region-history: Search just on lines intersecting the region
844         * lisp/vc/vc.el (vc-region-history): If region ends in the beginning
845         of a line, then exclude that line from the search (Bug#24725).
847 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
849         Fix documentation of 'alist-get'
851         * doc/lispref/lists.texi (Association Lists): Fix the signature of
852         'alist-get'.  Fix the markup, the wording, and the punctuation in
853         the description. (Bug#24740)
855 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
857         * src/regex.h (re_match_object): Improve commentary.
859 2016-12-07  Alan Third  <alan@idiocy.org>
861         Fix cursor at bottom left of rectangle (bug#24364)
863         * lisp/rect.el (rectangle--col-pos): Don't assume point at EOL doesn't
864         require rectangle--point-crutches to be set.
866 2016-12-07  Michael Albinus  <michael.albinus@gmx.de>
868         Change Tramp version to "2.2.13.25.2"
870         * doc/misc/trampver.texi:
871         * lisp/net/trampver.el: Change version to "2.2.13.25.2".
873 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
875         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Fix last change.
877 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
879         Don't scan compiled module files for autoloads
881         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Ignore
882         compiled module files.  Make sure the extension really ends the
883         file name.
885 2016-12-07  Michael Albinus  <michael.albinus@gmx.de>
887         Fix Bug#24698
889         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
890         Don't send "stty tab0" to *BSD and Darwin machines.  (Bug#24698)
892 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
894         * lisp/subr.el (start-process): Doc fix.  (Bug#24693)
896 2016-12-07  Göktuğ Kayaalp  <self@gkayaalp.com>
898         Fix display of vc-dir CVS file statuses in subdirectories
900         * lisp/vc/vc-cvs.el (vc-cvs-dir-status-files): Use 'cvs update'
901         instead of 'cvs status'.  It's faster, easier to parse, and
902         relieves us of the need to use vc-expand-dirs.  (Bug#24082)
903         (vc-cvs-after-dir-status): Parse its output.
905 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
907         Update URL of MS-Windows optional DLLs
909         * nt/README.W32:
910         * nt/INSTALL: Update the URL of the MS-Windows binaries of the
911         optional libraries built with MSYS2/MinGW64 project tools.
913 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
915         Fix time-related data types in 2 editfns.c functions
917         * src/editfns.c (format_time_string, Fcurrent_time_zone): Pass a
918         pointer to time_t value to emacs_localtime_rz and gmtime_r,
919         instead of relying on struct timespec's tv_sec member to be of
920         compatible type.
922 2016-12-07  Tino Calancha  <f92capac@gmail.com>
924         * lisp/simple.el (process-menu-mode, list-processes--refresh):
925         Include PID.  (Bug#21725)
927         (cherry picked from commit b7adc2f23787eb72015cd705b873e229db6a5049)
929 2016-12-07  Tino Calancha  <f92capac@gmail.com>
931         * lisp/ibuf-ext.el (ibuffer-do-shell-command-file):
932         Fix non-file-visiting-buffer case.  (Bug#22678)
934         (cherry picked from commit 738738259ba77fe17e433c64e0758ea59ab5bc75)
936 2016-12-07  Tino Calancha  <f92capac@gmail.com>
938         * lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)
940         (cherry picked from commit f4ef1a1fea15aa58fbb5e7a59bff260720658e49)
942 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
944         Port to Ubuntu 16.10, which needs gcc -nopie
946         * configure.ac (emacs_cv_prog_cc_no_pie): Rename from
947         emacs_cv_prog_cc_nopie.  All usages changed.  Check for -no-pie in
948         preference to -nopie (Bug#24682).  Backport from master.
950 2016-12-07  Glenn Morris  <rgm@gnu.org>
952         * lisp/cus-start.el (exec-path): Handle nil elements.  (Bug#24471)
954 2016-12-07  Andreas Politz  <politza@hochschule-trier.de>
956         Catch the imenu-unavailable error in sh-mode completion table
958         * lisp/progmodes/sh-script.el (sh--cmd-completion-table):
959         Catch the imenu-unavailable error (bug#24238).
961 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
963         More char-width fixes
965         * lisp/international/characters.el (char-width-table): More fixes
966         according to the latest EastAsianWidth.txt.  (Bug#24705)
968 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
970         Fix char-width-table values for some Emoji
972         * lisp/international/characters.el (char-width-table): Add missing
973         range U+1F400..U+1F43E.  (Bug#24699)
975         * admin/notes/unicode: Mention the need to verify char-width-table
976         setting against data in EastAsianWidth.txt.
978 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
980         Keep point when switching from and to *terminal* buffer
982         * lisp/term.el (term-reset-size): Don't reset the size if it
983         didn't change.  If the size did change, restore point after
984         adjusting the size.  (Bug#24465)
986 2016-12-07  Michael Albinus  <michael.albinus@gmx.de>
988         * INSTALL: Use correct Emacs release number 25.
990 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
992         Avoid crashes due to objects read with the #n=object form
994         * src/lread.c (read1): Use Fcons for 'placeholder', not AUTO_CONS,
995         because elements of the list in 'read_objects' cannot be allocated
996         off the stack.  (Bug#24640)
998 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1000         Improve doc string of 'completion-at-point-functions'
1002         * lisp/minibuffer.el (completion-at-point-functions): Doc fix.
1003         (Bug#24663)
1005 2016-12-07  Philipp Stephani  <phst@google.com>
1007         Fix crash in evaluating functions
1009         See Bug#24673
1011         * src/eval.c (funcall_lambda): Fix crash for bogus functions such
1012         as (closure).
1014 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
1016         * src/filelock.c (current_lock_owner): Update comment.
1018 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
1020         Port --enable-gcc-warnings to GCC 6.2.1
1022         Backport from master.
1023         * src/conf_post.h (GNUC_PREREQ): New macro.
1024         * src/keyboard.c: Use it to work around GCC bug 54561.
1025         * src/process.c (would_block): New function.
1026         (server_accept_connection, wait_reading_process_output, send_process):
1027         Use it.
1029 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
1031         Work around Samba bug with ':' in symlink contents
1033         * src/filelock.c (current_lock_owner): When reading the contents
1034         of a lock, treat the UTF-8 for U+F022 as if it were ':' (Bug#24656).
1035         Backport from master.
1037 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
1039         Port last_marked change to full-program optimizers
1041         * src/alloc.c (last_marked): Now EXTERNALLY_VISIBLE.
1043 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1045         Adapt GDB scripts to '--enable-check-lisp-object-type' builds
1047         * etc/emacs-buffer.gdb <$qnil>: New variable.
1048         (ybuffer-list, yset-buffer): Use $qnil for comparing against
1049         'nil', as direct comparison with Qnil doesn't work in a build with
1050         '--enable-check-lisp-object-type'.
1052         * src/.gdbinit: Adapt commands of the temporary breakpoint in
1053         init_sys_modes to a build with '--enable-check-lisp-object-type'.
1055 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1057         Avoid optimizing out the last_marked[] array
1059         * src/alloc.c <last_marked>: No longer 'static', to avoid having
1060         it optimized out in optimized builds, which then makes debugging
1061         GC problems harder.
1063 2016-12-07  Alan Mackenzie  <acm@muc.de>
1065         CC Mode manual: remove reference to former Emacs variable last-command-char
1067         * doc/misc/cc-mode.texi (Hanging Semicolons and Commas): Replace reference to
1068         variable last-command-char by one to macro c-last-command-char.
1070 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1072         Allow to disable compaction of font caches
1074         * src/font.c (syms_of_font) <inhibit-compacting-font-caches>: New
1075         boolean variable.
1076         * src/alloc.c (compact_font_caches): Use it to bypass the call to
1077         compact_font_cache_entry.  (Bug#24634)  (Bug#24565)
1079         * etc/NEWS: Mention the new variable.
1081 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1083         Allow selection of font for symbols as in Emacs 24.x
1085         * src/fontset.c (syms_of_fontset) <use-default-font-for-symbols>:
1086         New boolean variable.
1087         (face_for_char): Use it to fall back to pre-Emacs 25.1 behavior
1088         when selecting fonts for displaying symbol and punctuation
1089         characters.  (Bug#24644)
1091         * etc/NEWS: Mention the new variable.
1093 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1095         Fix horizontal scrolling during Isearch
1097         * lisp/isearch.el (isearch-update): Compute the window's body
1098         width in a way that is correct when there are no fringes.
1099         (Bug#24584)
1101 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1103         Fix infloop in redisplay due to truncated lines and invisible text
1105         * src/xdisp.c (forward_to_next_line_start): Don't call
1106         'get_next_display_element' after finding the end of line.  This
1107         avoids setting the row's end position to the wrong value when the
1108         next screen line begins with invisible text; that wrong value
1109         caused set_cursor_from_row position the cursor in the wrong screen
1110         line, and eventually triggered bug#24109.
1112 2016-12-07  David Engster  <deng@randomsample.de>
1114         gitmerge: Add cherry pick to gitmerge-skip-regexp
1116         * admin/gitmerge.el (gitmerge-skip-regexp): Add "cherry picked
1117         from commit", which is the string appended by 'git cherry-pick
1118         -x'.
1120         (cherry picked from commit f648e4866981b142fca788372e1fd9013a0bb16a)
1122 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1124         Improve documentation of 'menu-bar-open'
1126         * lisp/term/w32-win.el (w32-menu-bar-open): Clarify that sometimes
1127         two ESC keypresses are needed to exit the menu.
1129         * doc/emacs/screen.texi (Menu Bar): Qualify the description of how
1130         to exit menus.  (Bug#24596)
1132 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1134         Fix compilation with MinGW runtime 3.22.2 and w32api 3.18.2
1136         * nt/inc/ms-w32.h (_WIN32_WINNT) [!MINGW_W64]: Undefine before
1137         defining to avoid redefinition warnings.
1139         * nt/inc/sys/stat.h (_SYS_STAT_H, _INC_STAT_H): Define, to avoid
1140         inclusion of sys/stat.h from the system headers, which could then
1141         lead to compilation errors due to redefinition of 'struct stat'
1142         etc.  This is needed because latest versions of MinGW runtime
1143         include sys/stat.h from wchar.h.
1145         * src/image.c (__MINGW_MAJOR_VERSION) [WINDOWSNT]: Temporarily
1146         redefine to 4 to avoid conflict between 2 definitions of
1147         MemoryBarrier.  (Bug#24613)
1149         Do not merge to master!
1151 2016-12-07  John Wiegley  <johnw@newartisans.com>
1153         Add documentation note from Alex
1155 2016-12-07  Aurelien Aptel  <aaptel@suse.com>
1157         * src/alloc.c: call only non-null finalizers
1159 2016-12-07  Karl Fogel  <kfogel@red-bean.com>
1161         Clarify that doc fixes are okay in feature freeze
1163         * CONTRIBUTE (branches): Explain that doc fixes are always safe, even
1164         on a release branch in feature freeze.  Tweak wording of paragraph
1165         after that to avoid a misleading contrast.
1167 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1169         Avoid crashes when setting the cursor
1171         * src/xdisp.c (display_and_set_cursor): Don't index glyphs of a
1172         glyph row if hpos is out of valid bounds.  This avoids crashes in
1173         some rare cases.  (Bug#24614)
1175 2016-12-07  Philippe Vaucher  <philippe.vaucher@gmail.com>
1177         Restore 'command-debug-status' functionality
1179         * src/callint.c (Fcall_interactively): Bind command-debug-status
1180         to nil.  This restores functionality inadvertently removed in
1181         Emacs 25.1.  (Bug#24555)
1183         * lisp/subr.el (command-debug-status): Declare obsolete.
1185         * doc/lispref/debugging.texi (Internals of Debugger): Document
1186         that 'command-debug-status' is obsolete.
1188 2016-12-07  Karl Fogel  <kfogel@red-bean.com>
1190         Document yank behavior in the right place
1192         * lisp/simple.el (yank): Document the handling of the
1193         `yank-handled-properties' and `yank-excluded-properties' variables,
1194         and the `yank-handler' text property.
1195         (yank-pop): Refer to `yank' now (bug#286)
1197         * lisp/subr.el (insert-for-yank): Refer to `yank' now.
1198         (insert-for-yank-1): Refer to `insert-for-yank' now.
1200         See this thread for discussion:
1202           https://lists.gnu.org/archive/html/emacs-devel/2016-09/threads.html#00329
1203           From: Karl Fogel
1204           To: Emacs Devel
1205           Subject: Question about intended behavior of 'insert-for-yank-1'.
1206           Date: Mon, 12 Sep 2016 00:17:14 -0500
1207           Message-ID: <874m5lr92d.fsf@red-bean.com>
1209 2016-12-07  Philipp Stephani  <phst@google.com>
1211         Document nil args of compare-buffer-substrings
1213         * src/editfns.c (Fcompare_buffer_substrings): Document behavior when
1214         the arguments are nil.
1216 2016-12-07  Katsumi Yamaoka  <yamaoka@jpl.org>
1218         * doc/misc/message.texi (Bcc Warning): Fix markup.
1220         * doc/misc/message.texi (Bcc Warning):
1221         Document mml-secure-safe-bcc-list.
1223 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
1225         Don't require isearch-update before isearch-done
1227         It is useful to be able to call `isearch-done' unconditionally to
1228         ensure a non-isearching state.
1230         * lisp/isearch.el (isearch-done): Check that `isearch--current-buffer'
1231         is a live buffer before using it (Bug #21091).
1232         * test/automated/isearch-tests.el (isearch--test-done): Test it.
1234         (cherry picked from commit 68f4b5292781bc331b040105c4079902b993835c)
1236 2016-12-07  Peder O. Klingenberg  <peder@klingenberg.no>
1238         Avoid error in icalendar--read-element
1240         * lisp/calendar/icalendar.el (icalendar--read-element): Avoid a regex
1241         stack overflow by not using regex to extract values from calendar
1242         events. (Bug#24315)
1244         (cherry picked from commit 55dde6c1a21a792d3d75c19e612c74dd054aaf1e)
1246 2016-12-07  Lars Ingebrigtsen  <larsi@gnus.org>
1248         Make a menu less ambiguous
1250         * doc/emacs/custom.texi (Key Bindings): The Modifier Keys node
1251         is about using modifier keys, not binding them (bug#10942).
1253         (cherry picked from commit 214f85a0a68b96a552ca605d601b33f6eef5c4ca)
1255 2016-12-07  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
1257         Doc fix for url-http
1259         * lisp/url/url-http.el (url-http): Document better return values
1260           (bug#13187) (tiny change)
1262         (cherry picked from commit 344303c8d9cb03d4778a73940e80e966280aa694)
1264 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1266         * lisp/frame.el (blink-cursor-delay): Doc fix.  (Bug#24372)
1268 2016-12-07  Katsumi Yamaoka  <yamaoka@jpl.org>
1270         * lisp/gnus/gnus-art.el (gnus-button-handle-library): Fix typo.
1272 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
1274         Regexp Functions doc minor fixes
1276         * doc/lispref/searching.texi (Regexp Functions):
1277         Fix misspelling of “matching”.  Use @table for table.
1278         Reformat code example to fit into info file width (Bug#17862).
1280 2016-12-07  Katsumi Yamaoka  <yamaoka@jpl.org>
1282         Backport mm-convert-shr-links fix from master (bug#23964)
1284         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
1285         Preserve key bindings that shr adds (bug#23964).
1287 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1289         Improve documentation of 'expand-abbrev' and wrapper hooks
1291         * lisp/simple.el (filter-buffer-substring-functions)
1292         (buffer-substring--filter): Add a link to 'with-wrapper-hook' as
1293         the place to look for documentation of wrapper hooks.
1294         * lisp/minibuffer.el (completion-in-region-functions)
1295         (completion--in-region): Add a link to 'with-wrapper-hook' as the
1296         place to look for documentation of wrapper hooks.
1297         * lisp/abbrev.el (expand-abbrev, abbrev--default-expand): Clarify
1298         the doc strings.  (Bug#24540)
1300         * doc/lispref/text.texi (Buffer Contents): Mention
1301         'with-wrapper-hook's doc string as the place to learn about that
1302         obsolete facility.
1304 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1306         Minor copyedits of MS-Windows installation instructions
1308         * nt/INSTALL:
1309         * nt/README.W32: Add URL of Emacs dependencies on alpha.gnu.org.
1311 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1313         Fix display of cursor when 'blink-cursor-delay' has small value
1315         * lisp/frame.el (blink-cursor-check, blink-cursor-mode):
1316         Protect ourselves against too small values of blink-cursor-delay.
1317         This avoids erratic display of the cursor, or even failure to
1318         display it, when user types text at high speed or leans on a key
1319         to invoke the keyboard auto-repeat feature.  (Bug#24372)
1321 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1323         Improve the doc string of 'format'
1325         * src/editfns.c (Fformat): Fix ambiguity in the doc string's usage
1326         of a literal period.  (Bug#24407)
1328         This was backported from master
1329         (cherry picked from commit 7123896626b06c26c4e37839ab41e41980c8f433)
1331 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1333         Improve doc strings in whitespace.el
1335         * lisp/whitespace.el (whitespace-mode, whitespace-newline-mode)
1336         (global-whitespace-mode, global-whitespace-newline-mode): Improve
1337         the doc strings.  (Bug#24413)
1339         This was backported from master
1340         (cherry picked from commit 3462fe73351f3da5bc3ebf8296ee44dd2e6b1dbc)
1342 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1344         Improve detectability of 'next-logical-line' and 'previous-logical-line'
1346         * lisp/simple.el (next-line, previous-line): Mention
1347         'next-logical-line' and 'previous-logical-line' in the doc
1348         strings.  (Bug#24443)
1350         This was backported from master
1351         (cherry picked from commit e95d0d15bb1534803b0adb3c3a927c8beb7d4e79)
1353 2016-12-07  Martin Rudalics  <rudalics@gmx.at>
1355         Fix (next-frame nil t) crash (Bug#24281)
1357         * src/frame.c (candidate_frame): Check minibuf argument before
1358         comparing it to zero (Bug#24281).
1360         This was backported from master
1361         (cherry picked from commit dc491c3df305a73908fe8de20b7c428a5b38c846)
1363 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
1365         Fix debugging of string-match-p errors
1367         * src/eval.c (call_debugger): Bind inhibit-changing-match-data to nil so
1368         that debugger code that needs to do regexp match won't break
1369         (Bug #23949, Bug #24166, Bug#16294).
1371         This was backported from master
1372         (cherry picked from commit 7fb75680b38fe0805c2ff7e9cca3bec8121ba984)
1374 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1376         Fix region display while dragging mouse
1378         * lisp/mouse.el (mouse-drag-track): Reset deactivate-mark in the
1379         buffer of the drag event, to allow mark to be set and the region
1380         be shown as we drag the mouse.  (Bug#24030)
1382         This was backported from master
1383         (cherry picked from commit 7d58b02f363ab02961faa950d1ba727df96f2f19)
1385 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1387         Fix 'vertical-motion' and 'posn-at-point' under 'visual-line-mode'
1389         * src/xdisp.c (move_it_in_display_line_to): Don't assume we can
1390         wrap on a whitespace character if it's followed by another
1391         whitespace character.  When returning under WORD_WRAP for a screen
1392         line that is continued, restore to wrap point when atpos/atx
1393         position would be displayed on the next screen line due to
1394         line-wrap.  (Bug#23570)
1396         This is backported from master
1397         (cherry picked from commit 99848b37d2c3e14c0af45fc6da437a806aa58a80)
1399 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
1401         Improve display of tex-verbatim and Info quoted
1403         Problem reported by Glenn Morris (Bug#19889).
1404         * doc/emacs/display.texi (Standard Faces):
1405         * doc/lispref/display.texi (Basic Faces):
1406         * etc/NEWS: Mention fixed-pitch-serif.
1407         * lisp/faces.el (face-font-family-alternatives):
1408         New family alias Monospace Serif.
1409         (fixed-pitch-serif): New face, which uses the new family.
1410         * lisp/info.el (Info-quoted):
1411         * lisp/textmodes/tex-mode.el (tex-verbatim): Use the new face.
1412         * test/automated/font-parse-tests.el (font-parse-tests--data):
1413         Add test case for Monospace Serif.
1415         This is backport from master
1416         (cherry picked from commit 36906806ccfc0e53f1d8c365ab0d7151288b7833)
1418 2016-12-07  Lars Ingebrigtsen  <larsi@gnus.org>
1420         Document how to check for ImageMagick support
1422         * doc/lispref/display.texi (ImageMagick Images): Say how to
1423         check for ImageMagick support, which isn't quite obvious
1424         (bug#20702).
1426         This is backport from master
1427         (cherry picked from commit faf07d646575c78d6d956ce91820ebbf38308553)
1429 2016-12-07  Tino Calancha  <f92capac@gmail.com>
1431         Run find-function-after-hook after finding a symbol
1433         * lisp/emacs-lisp/find-func.el (find-library):
1434         * lisp/help-mode.el (help-function-def, help-variable-def):
1435         Run `find-function-after-hook' inside the help-function of the
1436         buttons (bug#22583).
1437         * etc/NEWS: Mention the change.
1439         This is a backport from master.
1440         (cherry picked from commit f069d854508946bcc03e4c77ceb430748e3ab6d7)
1442 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1444         Document 'timerp'
1446         * doc/lispref/os.texi (Timers): Document 'timerp'.  (Bug#24511)
1447         Improve indexing.
1449 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1451         Improve documentation of overlay priorities
1453         * doc/lispref/display.texi (Overlay Properties): Minor copyedits.
1454         By popular demand, mention the '(PRIMNARY . SECONDARY)' form of
1455         overlay properties used for the region.  (Bug#20253)
1457 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1459         Fix 'dired-compress-files'
1461         * lisp/dired-aux.el (dired-do-compress-to): Make sure the archive
1462         file name is fully expanded by running it through
1463         'expand-file-name'.  Suggested by Drew Adams <drew.adams@oracle.com>.
1464         (Bug#24486)  Doc fix.
1465         * lisp/dired.el: Regenerated changes in autoloads.
1467 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1469         Update commentary of STRING_CHAR and FETCH_MULTIBYTE_CHAR
1471         * src/character.h (STRING_CHAR):
1472         * src/buffer.h (FETCH_MULTIBYTE_CHAR): Update commentary: these
1473         two macros no longer do any character unification, so the caveats
1474         in those comments are no longer pertinent.
1476 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1478         Increment Emacs version to 25.1.50
1480         * README:
1481         * configure.ac:
1482         * etc/NEWS:
1483         * msdos/sed2v2.inp: Bump the version to 25.1.50.
1485 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1487         Document the optional zlib library in MS-Windows builds
1489         * nt/README.W32:
1490         * nt/INSTALL.W64:
1491         * nt/INSTALL: Mention the optional text decompression support and
1492         the zlib library.
1494 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1496         Fix tagging of DEFUN by etags
1498         * lib-src/etags.c (C_entries): Tag DEFUN twice: once with its C
1499         name, and then again with its Lisp name.  This restores the
1500         ability to find Lisp primitives by their C name, which was lost
1501         when the etags back-end was switched to a more strict search
1502         criteria.
1504         * test/etags/ETAGS.good_1:
1505         * test/etags/ETAGS.good_2:
1506         * test/etags/ETAGS.good_3:
1507         * test/etags/ETAGS.good_4:
1508         * test/etags/ETAGS.good_5:
1509         * test/etags/ETAGS.good_6:
1510         * test/etags/CTAGS.good: Adapt to the changes in etags.c wrt
1511         tagging DEFUN.
1513 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1515         Avoid resetting track-mouse by mouse clicks
1517         * lisp/mouse.el (mouse-drag-line, mouse-drag-track): Don't assume
1518         the previous value of track-mouse is nil; instead, save and
1519         restore the previous value.  (Bug#24480)
1521 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1523         Improve nt/README.W32 instructions
1525         * nt/README.W32: Add instructions for installing 64-bit builds of
1526         optional libraries.  (Bug#24470)
1528 2016-12-07  Eli Zaretskii  <eliz@gnu.org>
1530         Document that desktop file overrides frame parameters
1532         * doc/emacs/misc.texi (Saving Emacs Sessions):
1533         * doc/emacs/frames.texi (Frame Parameters): Document that frame
1534         parameters restored by desktop.el take precedence over the
1535         customizations in the init file, and explain how to countermand
1536         that.  For the details of the issue, see
1537         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00318.html.
1539 2016-12-07  Nicolas Petton  <nicolas@petton.fr>
1541         * etc/AUTHORS: Regenerate the AUTHORS file
1543 2016-12-07  Nicolas Petton  <nicolas@petton.fr>
1544 2016-09-26  Nicolas Petton  <nicolas@petton.fr>
1546         * Version 25.1 released.
1548 2016-09-26  Nicolas Petton  <nicolas@petton.fr>
1550         * etc/AUTHORS: Regenerate the AUTHORS file
1552 2016-09-26  Eli Zaretskii  <eliz@gnu.org>
1554         Update admin/authors.el
1556         * admin/authors.el (authors-fixed-entries): Add an entry for Bob
1557         Weiner.
1559 2016-09-26  Eli Zaretskii  <eliz@gnu.org>
1561         Update Antinews in ELisp manual
1563         * doc/lispref/anti.texi (Antinews): Update for Emacs 25.1.
1564         * doc/lispref/elisp.texi (Top): Update the main menu entry for
1565         Antinews.
1567 2016-09-26  Noam Postavsky  <npostavs@gmail.com>
1569         Fix comments on window height macros
1571         * src/window.h (WINDOW_MODE_LINE_HEIGHT, WINDOW_HEADER_LINE_HEIGHT): Fix
1572         confusing claim that "height is in pixels and in lines"; in fact it's in
1573         pixels.
1575 2016-09-26  Toke Høiland-Jørgensen  <toke@toke.dk>  (tiny change)
1577         Fix 'url-http-create-request' when cookies are used
1579         * lisp/url/url-http.el (url-http-create-request): Make sure the
1580         cookie headers are a unibyte string.  For the details, see
1581         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00202.html.
1583 2016-09-26  Martin Rudalics  <rudalics@gmx.at>
1585         Fix cross reference in frames.texi
1587         * doc/lispref/frames.texi (Minibuffers and Frames): Fix cross
1588         reference.
1590 2016-09-26  immerrr  <immerrr@gmail.com>
1592         Fix regexp-opt documentation (bug #17862)
1594         * lisp/emacs-lisp/regexp-opt.el (regexp-opt):
1595         * doc/lispref/searching.texi (Regexp Functions): Update PAREN doc.
1597 2016-09-26  Nicolas Richard  <youngfrog@members.fsf.org>
1599         * lisp/emacs-lisp/gv.el (gv-ref): Fix example of PLACE in docstring.
1601 2016-09-26  Noam Postavsky  <npostavs@gmail.com>
1603         Fix tags-query-replace docstring
1605         * lisp/progmodes/etags.el (tags-query-replace): Remove incorrect info
1606         regarding non-existent parameters.
1608 2016-09-26  Eli Zaretskii  <eliz@gnu.org>
1610         Clarify documentation of precision in format specs
1612         * doc/lispref/strings.texi (Formatting Strings): Be less
1613         definitive wrt what precision means in format specs other than
1614         floating-point, %s and %S.  (Bug#24314)
1616 2016-09-26  Eli Zaretskii  <eliz@gnu.org>
1618         Improve and clarify documentation of subprocesses
1620         * doc/lispref/processes.texi (Subprocess Creation, Shell Arguments):
1621         Mention 'make-process' rather than 'start-process'.  Update wrt
1622         standard destinations of standard output/error streams and due to
1623         different formats of arguments accepted by 'make-process'.
1624         (Processes): Mention process objects that represent connections.
1625         (Synchronous Processes): Minor clarifications.
1626         (Asynchronous Processes): Describe 'make-process' and
1627         'make-pipe-process' before 'start-process'.  Update and expand the
1628         documentation.
1629         (Deleting Processes, Process Information, Input to Processes)
1630         (Signals to Processes, Query Before Exit, Network): Update and
1631         expand the documentation, especially wrt process objects that
1632         represent connections.
1633         (Output from Processes): Mention the possibility of separating
1634         stderr via 'make-process'.
1635         (Filter Functions): Mention that stderr by default arrives at the
1636         filter function together with stdout.  (Bug#24287)
1638         * src/process.c (Fprocess_id, Fprocess_command)
1639         (Fprocess_contact, Fprocess_type, Fstop_process): Doc fixes for
1640         process objects that represent connections.
1642 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
1644         * etc/PROBLEMS: Mention gnutls-cli 3.5.3 (Bug#24247).
1646 2016-09-26  Nicolas Petton  <nicolas@petton.fr>
1648         * etc/AUTHORS: Update the AUTHORS file
1650 2016-09-26  Philipp Stephani  <phst@google.com>
1651 2016-08-22  Philipp Stephani  <phst@google.com>
1653         Some assorted documentation clarifications
1655         * src/fileio.c (Fwrite_region): Clarify that END is ignored if
1656         START is nil.
1657         * src/editfns.c (Fbuffer_size): Add short discussion about
1658         narrowing.
1659         * src/callproc.c (Fcall_process_region): Discuss behavior when
1660         START and END are not buffer positions.
1662 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
1664         Improve commentary in src/character.h
1666         * src/character.h (BYTES_BY_CHAR_HEAD, MULTIBYTE_LENGTH)
1667         (MULTIBYTE_LENGTH_NO_CHECK, STRING_CHAR_AND_LENGTH): Remove stale
1668         info from commentary and improve it.
1670 2016-08-22  Dmitry Gutov  <dgutov@yandex.ru>
1672         * etc/NEWS: Mention the change in json-encode-string.
1674         The change was made to fix bug#20154, and came up again in bug#24239.
1676 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
1678         * src/doc.c (Fsubstitute_command_keys): Another fix for smart quotes.
1680         (Bug#24206)
1682 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
1684         Avoid segfaults due to quoting in 'substitute-command-keys'
1686         * src/doc.c (Fsubstitute_command_keys): Correct character counts
1687         when the input string is unibyte.  (Bug#24206)
1689 2016-08-22  Martin Rudalics  <rudalics@gmx.at>
1691         In NEWS describe new handling of window margins (Bug#24193)
1693         * etc/NEWS: Describe new handling of margins when splitting or
1694         resizing windows (Bug#24193).
1696 2016-08-22  Martin Rudalics  <rudalics@gmx.at>
1698         Facultatively ignore margins when splitting and resizing windows (Bug#24193)
1700         Provide a new window parameter 'min-margins' which allows to
1701         ignore the actual widths of a window's margins when splitting or
1702         resizing that window horizontally.  This should serve as a
1703         workaround for handling the problems raised by Bug#24193.
1705         * lisp/window.el (window--min-size-1): Handle new window
1706         parameter 'min-margins'.
1707         (split-window): Fix text of error messages.
1708         * doc/lispref/windows.texi (Window Parameters): Describe new
1709         parameter 'min-margins'.
1711 2016-08-22  Noam Postavsky  <npostavs@gmail.com>
1713         Document CATEGORY arg to modify-category-entry
1715         * src/category.c (Fmodify_category_entry): Document CATEGORY argument.
1717 2016-08-22  Noam Postavsky  <npostavs@gmail.com>
1719         Document char-script-table's effect on word motion
1721         * doc/lispref/positions.texi (Word Motion): Talk about
1722         char-script-table (Bug #10494).
1724 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
1726         Further fix for 'url-http-create-request' and multibyte strings
1728         * lisp/url/url-http.el (url-http-create-request): Run
1729         url-mime-charset-string through url-http--encode-string.
1730         (Bug#24117)
1732 2016-08-22  Noam Postavsky  <npostavs@gmail.com>
1734         Fix docstring of eval-expression
1736         * lisp/simple.el (eval-expression): Fix the docstring to reflect the
1737         fact that the prefix argument does not affect formatting for
1738         integers (Bug #20691).
1740 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
1742         Clarify when 'cursor' property is in effect
1744         * doc/lispref/text.texi (Special Properties): Minor copyedits.
1745         (Bug#24179)
1747 2016-08-22  Dmitry Gutov  <dgutov@yandex.ru>
1749         Convert the remaining strings to unibyte before concatenating
1751         * lisp/url/url-http.el (url-http--encode-string): New function.
1752         (url-http-create-request): Use it to convert ASCII to unibyte.
1753         (Bug#24117)
1755 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
1757         Fix bug with handling the bidi cache
1759         * src/xdisp.c (redisplay_window): Save and restore the state of
1760         the bidi cache before reusing the iterator after calls to
1761         try_window and try_window_reusing_current_matrix.
1763 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
1765         * doc/lispref/text.texi (Change Hooks): Minor copyedits.
1767 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
1769         Clarify documentation of before/after-change-functions
1771         * doc/lispref/text.texi (Change Hooks): Clarify that the hooks are
1772         not called in balanced pairs.
1774 2016-08-22  Noam Postavsky  <npostavs@gmail.com>
1776         Document use of vectors in keymaps
1778         * doc/lispref/keymaps.texi (Format of Keymaps): Mention vector
1779         format (Bug #14797).
1781 2016-08-22  Alan Third  <alan@idiocy.org>
1783         Post AppDefined events from the main thread ONLY (bug#23934)
1785         * src/nsterm.h: Make nextappdefined var not just GNUStep.
1786         * src/nsterm.m (ns_send_appdefined, sendFromMainThread): Remove GNUStep
1788 2016-08-22  John Wiegley  <johnw@newartisans.com>
1790         Update to the AUTHORS file for Bob Weiner
1792                 * etc/AUTHORS: Update the packages attributed to Bob Weiner
1794 2016-08-22  John Wiegley  <johnw@newartisans.com>
1796         Revert "Fix local printer set to left aligned string formatter."
1798         This reverts commit 8a38e948b039516e70176ebe20c5349e2ade6ac5.
1800 2016-08-22  John Wiegley  <johnw@newartisans.com>
1802         Revert "Fix ses-delete-blanks to delete only blanks + documentation."
1804         This reverts commit 3c97b0f7589e06aeb1ab0147f0ee32974c32926d.
1806 2016-08-22  John Wiegley  <johnw@newartisans.com>
1808         Revert "Fix English."
1810         This reverts commit b275cc76f0c5ab49e81445fcc3420c8772aefd42.
1812 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
1814         Improve doc strings of 'gud-gdb' and 'gdb'
1816         * lisp/progmodes/gdb-mi.el (gdb):
1817         * lisp/progmodes/gud.el (gud-gdb): Doc fix.  (Bug#24125)
1819 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
1821         Fix doc string of 'minibuffer-message-timeout'
1823         * src/keyboard.c (syms_of_keyboard) <minibuffer-message-timeout>:
1824         Doc fix.  (Bug#24123)
1826 2016-08-22  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1828         Fix English.
1830         * doc/misc/ses.texi (Nonrelocatable references): Fix grammatically
1831           incorrect English.
1833 2016-08-22  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1835         Fix ses-delete-blanks to delete only blanks + documentation.
1837         * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
1838         'ses-range' modifier as an alternative to 'ses+'.
1839         (Advanced Features): Add a refernce to node 'Nonrelocatable
1840         references' concerning function 'ses-rename-cell'.
1841         (Standard formula functions): Mention the '!' 'ses-range'
1842         modifier as an alternative to 'ses-delete-blanks'.
1843         (More on cell printing): Fix fallback printer
1844         definition.  Minor editorial formatting changes.
1845         (Nonrelocatable references): Document the use of
1846         'ses-rename-cell' as a better way to make cell reference
1847         non-relocatable.
1848         (The data area): Document the presence of local printer
1849         definitions in the data area.
1851         * lisp/ses.el (ses-delete-blanks): Do not remove
1852         *error*.  Any error in an argument should propagate into the
1853         using formula rather than being silently hidden !
1855 2016-08-22  Noam Postavsky  <npostavs@gmail.com>
1857         profiler: document prefix arg for tree expansion
1859         * doc/lispref/debugging.texi (Profiling):
1860         * lisp/profiler.el (profiler-report-toggle-entry): Document use of
1861         prefix argument to expand whole call trees.
1863 2016-08-22  Noam Postavsky  <npostavs@gmail.com>
1865         Clarify usage of eshell-visual-options
1867         * lisp/eshell/em-term.el (eshell-visual-options): Add second option to
1868         example usage (Bug #19627).
1870 2016-08-22  Noam Postavsky  <npostavs@gmail.com>
1872         Fix comment in files-in-below-directory
1874         * doc/lispintro/emacs-lisp-intro.texi (Files List): Comment should not
1875         say append, since the code is adding to front of list (Bug #21589).
1877 2016-08-22  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1879         Fix local printer set to left aligned string formatter.
1881         * lisp/ses.el (ses-local-printer-compile): Add missing case
1882         for left-aligned string formatter.
1884 2016-08-22  Nicolas Petton  <nicolas@petton.fr>
1886         Bump Emacs version to 25.1 for the first RC
1888         * README:
1889         * configure.ac:
1890         * lisp/ldefs-boot.el:
1891         * msdos/sed2v2.inp: Bump Emacs version to 25.1.
1893 2016-08-22  Nicolas Petton  <nicolas@petton.fr>
1895         * etc/AUTHORS: Update the AUTHORS file
1897         ;; * ChangeLog.2: ChangeLog update.
1899 2016-08-22  Nicolas Petton  <nicolas@petton.fr>
1900 2016-08-05  Nicolas Petton  <nicolas@petton.fr>
1902         * admin/authors.el (authors-valid-file-names): Addition.
1904 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
1906         Warn about Cairo-related problems
1908         * etc/NEWS: Warn about known problems in the Cairo build.
1909         (Bug#23925)
1911 2016-08-05  Paul Pogonyshev  <pogonyshev@gmail.com>
1913         Don't let completion break `declare' handling
1915         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Fix to not alter
1916         `defun-declarations-alist' by side effect (Bug #23648).
1918 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
1920         Adjust match data before calling after-change-funs
1922         It's important to adjust the match data in between calling
1923         before-change-functions and after-change-functions, so that buffer
1924         change hooks will always see match-data consistent with buffer content.
1925         (Bug #23917)
1927         * src/insdel.c (replace_range): Add new parameter ADJUST_MATCH_DATA, if
1928         true call update_search_regs.  Update all callers (except
1929         Freplace_match) to pass 0 for the new parameter.
1930         * src/search.c (update_search_regs): New function, extracted from
1931         Freplace_match.
1932         (Freplace_match): Remove match data adjustment code, pass 1 for
1933         ADJUST_MATCH_DATA to replace_range instead.
1935 2016-08-05  Mark Oteiza  <mvoteiza@udel.edu>
1937         Do not show string-rectangle preview if minibuffer is empty
1939         * lisp/rect.el (rectangle--string-preview): Remove condition that sets
1940         preview string to the default replacement string.
1942 2016-08-05  Achim Gratz  <Stromeko@nexgo.de>
1944         * etc/PROBLEMS: Add entry about selection problems under Plasma 5.
1946         Bug#24013
1948 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
1950         Port to glibc 2.24 (pre-release) + ppc64
1952         Backport from master (Bug#24033).
1953         Inspired by a suggestion by Florian Weimer in:
1954         https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
1955         * src/emacs.c (main) [__PPC64__]:
1956         Special case for __PPC64__, which needs ASLR disabled in
1957         dumped Emacs too.
1959 2016-08-05  Katsumi Yamaoka  <yamaoka@jpl.org>
1961         * lisp/net/shr.el (shr-fill-line): Withdraw the last commit (4157159).
1963         * lisp/net/shr.el (shr-fill-line):
1964         Preserve text properties in folded lines (bug#24034).
1966 2016-08-05  Robert Cochran  <robert-git@cochranmail.com>  (tiny change)
1968         Expand FIXME near definition of fboundp
1970         This expansion of the FIXME is so that future developers are aware of
1971         the potential problems of aliasing fboundp to symbol-function without
1972         taking backwards compatibility into account.
1974         * src/data.c (fboundp): Note potential backwards compatibility issues in
1975         FIXME.
1977 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
1979         kill-rectangle should mention killed-rectangle
1981         * lisp/rect.el (kill-rectangle): Mention `killed-rectangle' in docstring
1982         and warning message, rather than kill ring (Bug#19773).
1984 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
1986         Avoid assertion violations in nhexl-mode
1988         * src/bidi.c (bidi_resolve_neutral): Convert an assertion to real
1989         code executed in all builds.  (Bug#24001)
1991 2016-08-05  Fredrik Bergroth  <fbergroth@gmail.com>  (tiny change)
1993         Use memmove instead of memcpy on overlapping regions
1995         * src/editfns.c (Ftranspose_regions): Regions may overlap, so
1996         use memmove instead of memcpy (bug#19213).
1999         This is a backport from trunk.
2000         (cherry picked from commit 354f9f0fc6cc05ed98883447f9b2f37943d79160)
2002 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
2004         Document buffer-swap-text+save-excursion interaction
2006         * doc/lispref/buffers.texi (Swapping Text):
2007         * src/buffer.c (Fbuffer_swap_text): Add warning about interaction of
2008         `buffer-swap-text' and `save-excursion' (Bug #4655).
2010 2016-08-05  Stefan Monnier  <monnier@iro.umontreal.ca>
2012         Fix eieio vs cl-generic incompatibilities found in Rudel (bug#23947)
2014         * lisp/emacs-lisp/cl-generic.el (cl-generic-apply): New function.
2015         * lisp/emacs-lisp/eieio-compat.el (eieio--defmethod): Fix incorrect
2016         mapping between cl-no-applicable-method and EIEIO's no-applicable-method.
2017         * lisp/emacs-lisp/eieio-core.el (eieio--class-precedence-c3):
2018         `class' is not a symbol but a class object.
2020 2016-08-05  Stefan Monnier  <monnier@iro.umontreal.ca>
2022         Include cl-generic in package--builtin-versions (bug#22817)
2024         * lisp/emacs-lisp/cl-generic.el (package--builtin-versions):
2025         Add ourselves manually.  Don't merge since there's a better fix on master.
2027 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
2029         Improve timing in `tramp-test29-environment-variables'
2031         * test/automated/tramp-tests.el
2032         (tramp-test--shell-command-to-string-asynchronously):
2033         Add additional `accept-process-output' call.
2034         (tramp-test29-environment-variables): Remove additional sleep calls.
2036 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
2038         Add test for handling environment variables in Tramp
2040         * test/automated/tramp-tests.el
2041         (tramp-test--shell-command-to-string-asynchronously): New defun.
2042         (tramp-test29-environment-variables): New test.
2043         (tramp-test30-vc-registered)
2044         (tramp-test31-make-auto-save-file-name)
2045         (tramp-test32-special-characters)
2046         (tramp-test32-special-characters-with-stat)
2047         (tramp-test32-special-characters-with-perl)
2048         (tramp-test32-special-characters-with-ls, tramp-test33-utf8)
2049         (tramp-test33-utf8-with-stat, tramp-test33-utf8-with-perl)
2050         (tramp-test33-utf8-with-ls)
2051         (tramp-test34-asynchronous-requests)
2052         (tramp-test35-recursive-load, tramp-test36-unload): Rename.
2054 2016-08-05  Glenn Morris  <rgm@gnu.org>
2056         * lisp/emacs-lisp/package.el (describe-package-1)
2057         (package-status-external): Fix face references.  (Bug#23927)
2059 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
2061         Improve documentation of search functions
2063         Make the documentation of the search functions more accurate,
2064         complete, and uniform; in particular, extend the description of
2065         the effect when the 'count' parameter is a negative number to all
2066         of these functions.
2068         * src/search.c (Fsearch_backward, Fsearch_forward)
2069         (Fre_search_backward, Fre_search_forward)
2070         (Fposix_search_backward, Fposix_search_forward):
2071         * lisp/isearch.el (word-search-backward, word-search-forward)
2072         (word-search-backward-lax, word-search-forward-lax): Improve doc
2073         strings as described above.
2075         * doc/lispref/searching.texi (String Search, Regexp Search)
2076         (POSIX Regexps): Use 'count' instead of 'repeat' as the name of
2077         the fourth parameter of the *-search-{forward,backward} functions
2078         and improve documentation as described above.
2080 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
2082         Delete environment variables in Tramp when needed
2084         * lisp/net/tramp-sh.el (tramp-get-env-with-u-option): New defun.
2085         (tramp-sh-handle-start-file-process)
2086         (tramp-sh-handle-process-file, ): Use it.  (Bug#23952)
2088 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2090         Add "New in Emacs 25" section to the FAQ
2092         * doc/misc/efaq.texi (Latest version of Emacs): Update for later
2093         versions.
2094         (New in Emacs 25): New node.
2095         (Status of Emacs): Add it to the menu.
2097 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2099         Fix 'vertical-motion' in non-interactive sessions
2101         * src/indent.c (Fvertical_motion): Don't return uninitialized
2102         value in non-interactive session.  This fixes random errors in
2103         batch mode, see
2104         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00609.html
2105         and
2106         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00500.html
2107         for the details.
2109 2016-08-05  Andreas Schwab  <schwab@linux-m68k.org>
2111         Fix memory leak in imagemagick-types
2113         * src/image.c (Fimagemagick_types): Use AcquireExceptionInfo to
2114         avoid memory leak.
2116 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2118         Update ELisp manual to match 'string-collate-equalp' doc string
2120         * doc/lispref/strings.texi (Text Comparison): Remove reference to
2121         sorting from the description of 'string-collate-equalp'.  (Bug#23902)
2123 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
2125         Clarify docstring of find-feature-regexp
2127         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Explain that `%s'
2128         is optional (Bug #23520).
2130 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
2132         Add details to cl-lib defining macros' docstrings
2134         * lisp/emacs-lisp/cl-macs.el (cl-defun, cl-defmacro): Add terse summary
2135         of supported arglist forms (Bug #22462).
2137 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2139         Clarify doc string of 'save-buffer'
2141         * lisp/files.el (save-buffer): Clarify that backups might not be
2142         made even if this command is invoked with 2 or 3 "C-u"s.
2143         (Bug#3702)
2145 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2147         Un-confuse doc string of 'string-collate-equalp'
2149         * src/fns.c (Fstring_collate_equalp): Remove confusing text from
2150         doc string.  (Bug#23902)
2152 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2154         Clarify documentation of 'mouse-on-link-p'
2156         * lisp/mouse.el (mouse-on-link-p): Clarify the form of the POS
2157         argument.  (Bug#23899)
2159 2016-08-05  Phillip Lord  <phillip.lord@russet.org.uk>
2161         Fix missing undo-boundary on revert-buffer.
2163         * lisp/simple.el (undo-auto--undoable-change-no-timer): New function.
2164         * src/fileio.c (insert-buffer-contents): Call
2165           undo-auto--undoably-changed-buffers before changes.
2167         Addresses Bug#23785.
2169         Do not merge to master as c98bc98 also addresses the same bug.
2171 2016-08-05  Martin Rudalics  <rudalics@gmx.at>
2173         Amend last addition to etc/PROBLEMS
2175         * etc/PROBLEMS: Mention GTK+ problem with unexpected frame widenings
2177 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
2179         Fix open-network-stream responsiveness
2181         Problem reported by Christer Ekholm (Bug#23864).
2182         Backport from master.
2183         * src/process.c (wait_reading_process_output):
2184         Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
2185         when wait == INFINITY and got_output_end_time is invalid.
2186         In this case the code should break, not continue.
2188 2016-08-05  Phillip Lord  <phillip.lord@russet.org.uk>
2190         Fix missing point information in undo
2192         * src/undo.c (record_insert): Use record_point instead of
2193           prepare_record, and do so unconditionally.
2194           (prepare_record): Do not record first change.
2195           (record_point): Now conditional on state before the last command.
2196           (record_delete): Call record_point unconditionally.
2197           (record_property_change): Use prepare_record.
2198           (record_marker_adjustments): Use prepare_record.
2200         Addresses Bug# 21722
2202 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2204         Avoid crashes when buffer modification hooks clobber match data
2206         * src/search.c (Freplace_match): Error out if buffer modification
2207         hooks triggered by buffer changes in replace_range, upcase-region,
2208         and upcase-initials-region clobber the match data needed to be
2209         adjusted for the replacement.  (Bug#23869)
2211 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
2213         Note combine-and-quote-strings doesn't shell quote
2215         * doc/lispref/processes.texi (Shell Arguments):
2216         * lisp/subr.el (combine-and-quote-strings): Add a note that
2217         combine-and-quote-strings doesn't protect arguments against shell
2218         evaluation (Bug #20333).
2220 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
2222         Explain when package-initialize isn't called
2224         * doc/lispref/os.texi (Startup Summary): Explain that package-initialize
2225         is not called when options -q, -Q, or --batch were passed (Bug #19151).
2227 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
2229         Fix escaping in sh-indent-after-continuation docstr
2231         * lisp/progmodes/sh-script.el (sh-indent-after-continuation): Properly
2232         escape backslashes in docstring (Bug#23046).
2234 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2236         Clarify the documentation of back-references in replacements
2238         * doc/emacs/search.texi (Regexp Replace): Clarify that \D starts
2239         with \1, not \0.
2241         * lisp/replace.el (query-replace-regexp)
2242         (query-replace-regexp-eval, replace-regexp): Doc fix (Bug#23884)
2244 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
2246         Clarify lexical binding with symbol args behavior
2248         * doc/lispref/variables.texi (Lexical Binding): Clarify that symbol
2249         arguments always refer to dynamic values (Bug #23781).  Remove mention
2250         of obsolete restriction regarding lexical binding for defun and
2251         defmacro, this no longer applies since 61b108cc 2012-05-29 "*
2252         lisp/emacs-lisp/byte-run.el (defmacro, defun): Move from C...".
2254 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
2256         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
2258 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2260         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23865)
2262 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2264         Avoid assertion violations when rendering some fonts
2266         * src/dispextern.h (FONT_TOO_HIGH): Don't consider a font "too
2267         high" if its pixel_size value is zero.  This avoids assertion
2268         violations at the end of x_produce_glyphs.
2270 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
2272         Document more details of package activation
2274         * doc/emacs/package.texi (Package Installation): Explain that package
2275         activation adds to load-path (Bug #21704).
2277 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
2279         Fixup warning message regarding HOME a bit more
2281         * src/w32.c (init_environment): The manual section title is "Windows
2282         HOME" (Bug #11612).  Move newline so warning fits in 80 character lines.
2284 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2286         * lisp/leim/quail/indian.el ("bengali-probhat"): Change indicator to BngPB.
2288 2016-08-05  Michael Albinus  <michael.albinus@gmx.de>
2290         Fix input method "probhat" for Bengali
2292         Author: উৎসব রায় <uroybd@gmail.com>
2294         * lisp/leim/quail/indian.el ("bengali-probhat"): Fix entry.
2296 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
2298         Add to elisp-completion-at-point's docstring
2300         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Document
2301         position dependent behavior (Bug #19854).
2303 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
2304             Eli Zaretskii  <eliz@gnu.org>
2306         Give more helpful warning about setting HOME
2308         * src/w32.c (init_environment): Improve warning message that pops when
2309         Emacs sets HOME according to existence of C:\.emacs (Bug #11612).
2311 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2313         Fix slow redisplay in term-mode
2315         * lisp/term.el (term-mode): Move the setting of
2316         bidi-paragraph-direction from 'ansi-term' to here, since term-mode
2317         is also affected.  Do not merge to master, since there the problem
2318         is solved in bidi.c by changing the regexps that delimit a
2319         paragraph.  (Bug#23801)
2321 2016-08-05  উৎসব রায়  <uroybd@gmail.com>
2323         New input method "probhat" for Bengali
2325         * lisp/leim/quail/indian.el ("probhat"): New input method.
2326         (Bug#23822)
2328         * etc/NEWS: Mention the new input method.
2330 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
2331             Drew Adams  <drew.adams@oracle.com>
2333         Update docs for `customize-mode'
2335         * lisp/cus-edit.el (customize-mode): This function works with both major
2336         and minor modes, make docstring and prompt reflect that (Bug #23649).
2338         * doc/lispref/modes.texi (Derived Modes): Remove note about
2339         customize-mode being experimental; it has been around since Emacs
2340         22 (Bug #11299).
2342 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2344         Fix documentation of 'assoc-string' and 'compare-strings'
2346         * src/minibuf.c (Fassoc_string): Clarify how CASE-FOLD affects the
2347         string comparison.  (Bug#23833)
2348         * src/fns.c (Fcompare_strings): Fix the description of how
2349         IGNORE-CASE affects the comparison.
2351         * doc/lispref/strings.texi (Text Comparison): Clarify how
2352         CASE-FOLD affects the string comparison in 'assoc-string'.  Fix
2353         the description of how IGNORE-CASE affects the comparison in
2354         'compare-strings'.
2356 2016-08-05  Dmitry Gutov  <dgutov@yandex.ru>
2358         Error on multibyte characters in HTTP request
2360         * lisp/url/url-http.el (url-http-create-request): Check the
2361         constructed request in the end to verify that it does not contain
2362         multibyte characters (bug#23750).
2364 2016-08-05  Katsumi Yamaoka  <yamaoka@jpl.org>
2366         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
2367         Mask keys that launch `widget-button-click' (bug#22157).
2369 2016-08-05  Dmitry Gutov  <dgutov@yandex.ru>
2371         Unset GIT_DIR when calling Git commands
2373         * lisp/vc/vc-git.el (vc-git--call, vc-git-command):
2374         Unset GIT_DIR (bug#23769).
2376 2016-08-05  Phillip Lord  <phillip.lord@russet.org.uk>
2378         Ensure undo-boundary after insert-file-contents.
2380         * src/fileio.c: Record undoable change during insert-file-contents.
2382         Addresses Bug #23785.
2384 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2386         Clarify documentation of 'line-spacing' and 'line-height'
2388         * doc/lispref/display.texi (Line Height): Clarify how the line
2389         height is determined via variables and text properties.  (Bug#23806)
2391 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2393         Fix removal of variables from process-environment
2395         * src/callproc.c (add_env): Fix comparison of a variable with a
2396         value against the same variable without a value.  (Bug#23779)
2398 2016-08-05  Glenn Morris  <rgm@gnu.org>
2400         * admin/authors.el (authors-ignored-files, authors-valid-file-names)
2401         (authors-renamed-files-alist): Additions.
2403         * admin/authors.el (authors-aliases, authors-fixed-case): Additions.
2405 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
2407         Fix documentation of completion functions
2409         So that the described behavior matches the code (and docstrings).
2411         * doc/lispref/minibuf.texi (Basic Completion): Symbol keys of hash table
2412         collections are used like string keys, not ignored (Bug #10416).
2414 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2416         Clarify documentation of 'font-lock-maximum-decoration'
2418         * doc/emacs/display.texi (Font Lock): Explain how to make the
2419         customization of 'font-lock-maximum-decoration' effective for an
2420         existing buffer.  (Bug#23783)
2422 2016-08-05  Glenn Morris  <rgm@gnu.org>
2424         * doc/misc/cl.texi (Usage): Add some more details.
2426 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
2428         Fbackward_prefix_chars: stay within buffer bounds
2430         The commit 1fd3172d "(Fbackward_prefix_chars): Set point properly while
2431         scanning" (1998-03-18), moved the check against of the position against the
2432         buffer beginning out the loop condition so that we might end up checking
2433         the syntax of characters before the beginning of the buffer.  This can
2434         cause segfaults or trigger a "Point before start of properties" error in
2435         `update_interval' (called indirectly from `char_quoted').
2437         * src/syntax.c (Fbackward_prefix_chars): Stop the loop when beginning of
2438         buffer is reached (Bug #3552, Bug #17132, Bug #19379).
2440 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
2442         Fix ifdef-vs-if typo with RANDR13_LIBRARY
2444         * src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
2445         This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
2446         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00198.html
2448         (cherry picked from commit dce99f222f1ca33265cd56ddb157817be1dc078e)
2450 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
2452         Fix last todo-mode change
2454         * lisp/calendar/todo-mode.el (todo-read-category): Return the
2455         keymap in order to use its defined key bindings.
2457 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
2459         Improve last todo-mode fix
2461         * lisp/calendar/todo-mode.el (todo-read-category): Use
2462         set-keymap-parent instead of copy-keymap, and default (as
2463         previously) to the global binding (for rationale, see
2464         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00217.html).
2466 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
2468         Fix todo-mode use of minibuffer completion keymap (bug#23695).
2470         * lisp/calendar/todo-mode.el (todo-read-category): Don't
2471         override minibuffer-local-completion-map globally (bug#23695).
2472         Bind <SPC> key to self-insert-command.
2474 2016-08-05  Glenn Morris  <rgm@gnu.org>
2476         * src/alloc.c (ALIGN): Avoid error on DragonFly BSD.  (Bug#23764)
2478         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
2479         Avoid mangling autoloads with unspecified arguments.  (Bug#21299)
2481 2016-08-05  Glenn Morris  <rgm@gnu.org>
2483         * lisp/help-fns.el (describe-function-1): Avoid reporting advised
2484         autoloads as aliases.  (Bug#21299)
2486 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
2488         Minor grammar fix (bug#23746)
2490         * doc/lispref/processes.texi (Synchronous Processes):
2491         Another minor grammar fix (bug#23746).
2493 2016-08-05  Stephen Berman  <stephen.berman@gmx.net>
2495         Doc fixes for grammar and typos (bug#23746)
2497         * doc/emacs/files.texi (Customize Save):
2498         * doc/emacs/frames.texi (Window Dividers):
2499         * doc/emacs/misc.texi (Printing):
2500         * doc/lispref/compile.texi (Compiler Errors):
2501         * doc/lispref/keymaps.texi (Changing Key Bindings):
2502         * doc/lispref/loading.texi (Named Features):
2503         * doc/lispref/markers.texi (Marker Insertion Types):
2504         * doc/lispref/modes.texi (Mode Hooks):
2505         * doc/lispref/text.texi (Undo):
2506         * src/floatfns.c (Fldexp):
2507         * src/xfaces.c (syms_of_xfaces):
2508         Minor doc fixes for grammar and typos (bug#23746).
2510 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2512         * doc/lispref/processes.texi (Process Buffers): Minor rewording.  (Bug#23446)
2514 2016-08-05  Eli Zaretskii  <eliz@gnu.org>
2516         Add cross-reference to ELisp manual
2518         * doc/lispref/commands.texi (Classifying Events): Add
2519         cross-reference to "Motion Events".  (Bug#23756)
2521 2016-08-05  Stefan Monnier  <monnier@iro.umontreal.ca>
2522 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
2524         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704)
2526         Don't rewrite (funcall 'f ...) to (f ...).
2528 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
2530         Restore initial undo boundary with viper
2532         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Add back last undo
2533           boundary if it has been removed.
2535         Addresses Bug#22295.
2537 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
2539         Revert "Fix viper undo breakage from undo-boundary changes"
2541         This reverts commit c0139e32f1f3bb287b04e02a69a7848d6a040003.
2543 2016-06-19  Ken Brown  <kbrown@cornell.edu>
2545         Fix dbus crash on 32-bit Cygwin
2547         * src/dbusbind.c (Fdbus__init_bus): Use make_save_pointer to store
2548         connection address.  (Bug#23741)
2549         (xd_lisp_dbus_to_dbus): Use XSAVE_POINTER to retrieve connection
2550         address.
2552 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
2554         Bump version to 25.0.95
2556         * README:
2557         * configure.ac:
2558         * lisp/ldefs-boot.el:
2559         * msdos/sed2v2.inp: Bump Emacs version to 25.0.95.
2561 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
2563         * etc/AUTHORS: Update the AUTHORS file
2565 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
2567         add entries to authors.el
2569         * admin/authors.el (authors-renamed-files-alist): Add char-fold files.
2571 2016-06-19  Jules Tamagnan  <jtamagnan@gmail.com>
2573         Fix eldoc-related freezes in python mode
2575         * lisp/progmodes/python.el (python-eldoc-get-doc): New defvar.
2576         (python-eldoc-function-timeout)
2577         (python-eldoc-function-timeout-permanent): New defcustoms.
2578         (python-eldoc-function): If python-eldoc--get-doc-at-point times
2579         out, effectively turn off ElDoc in current buffer.  (Bug#23609)
2581 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
2583         Handle mouse leaving initial window in `mouse-set-region' (Bug#23707)
2585         * lisp/mouse.el (mouse-set-region): If the mouse ends up in
2586         another window or on the menu bar, use `window-point' of
2587         selected window instead of `posn-point' of the event end
2588         (Bug#23707).
2590 2016-06-19  Marco Wahl  <marcowahlsoft@gmail.com>
2592         org.el: Fix bindings of < and > for calendar scrolling
2594         [This patch taken from upstream Org repo with 8b63dc9 dated
2595         2014-10-20 (Bug#23725).]
2596         * lisp/org/org.el (org-read-date-minibuffer-local-map):
2597         Switch to the current calendar API for scrolling the calendar.
2599 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
2601         Fix undo boundary in recursive edit (Bug#23632)
2603          * src/keyboard.c (recursive_edit_1): specbind
2604            undo-auto--undoably-changed-buffers.
2605          * lisp/simple.el (undo-auto--undoably-changed-buffers):
2606            fix docstring.
2608 2016-06-19  Glenn Morris  <rgm@gnu.org>
2610         Doc fixes re alist-get.  (Bug#23548)
2612         * lisp/subr.el (alist-get): Doc fix.
2613         * doc/lispref/lists.texi (Association Lists): Improve alist-get.
2615 2016-06-19  Glenn Morris  <rgm@gnu.org>
2617         * lisp/progmodes/python.el (inferior-python-mode):
2618         Avoid tabs.  (Bug#23616)
2620         * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>: Doc fix.
2622 2016-06-19  Tino Calancha  <f92capac@gmail.com>
2624         * lisp/help-fns.el (describe-function-1):
2625         Fix handling of file name for aliases.  (Bug#21950)
2627         * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
2629         * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
2631 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2633         Fix crash in syntax.c after GC
2635         Problem reported by Vincent Belaïche (Bug#23704).
2636         * src/syntax.c (skip_chars): Recompute pointers into the
2637         buffer after every call to update_syntax_table_forward,
2638         as it can GC.
2640 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
2642         Improve squiggly heredoc support in non-SMIE Ruby mode
2644         * lisp/progmodes/ruby-mode.el (ruby-parse-partial): Support
2645         squiggly heredocs here, too (port from upstream).
2647 2016-06-19  Stephen Berman  <stephen.berman@gmx.net>
2649         Fix doc string quoting
2651         * lisp/files.el (shell-quote-wildcard-pattern):
2652         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
2653         * lisp/subr.el (replace-regexp-in-string):
2654         * lisp/view.el (view-mode):
2655         * src/nsfns.m (syms_of_nsfns):
2656         * src/syntax.c (Fbackward_prefix_chars):
2657         Fix quoting problems in doc strings (Bug#23696).
2659 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
2661         Fix mouse dragging of vertical dividers with scroll bars on left (Bug#23690)
2663         * lisp/mouse.el (mouse-drag-line): With scroll bars on the left
2664         adjust trailing edge of window on the left when dragging the
2665         vertical divider of the mode line.  (Bug#23690)
2667 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2669         * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
2671         (Bug#23641)
2673 2016-06-19  Glenn Morris  <rgm@gnu.org>
2675         * test/automated/viper-tests.el (viper-test-undo-kmacro):
2676         Delete temp-file at end.
2678         * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
2680         * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
2682         * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table):
2683         Fix typo.  (Bug#23654)
2685 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
2687         * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-link (bug#22434)
2689 2016-06-19  Bill Wohler  <wohler@newt.com>
2691         Correct cl-flet usage (Bug#22317)
2693         * lisp/mh-e/mh-compat.el: Rename mh-cl-flet to mh-flet and convert alias to
2694         macro using patch from Katsumi Yamaoka <yamaoka@jpl.org>.
2695         * lisp/mh-e/mh-thread.el (mh-thread-set-tables):
2696         * lisp/mh-e/mh-show.el (mh-gnus-article-highlight-citation):
2697         * lisp/mh-e/mh-mime.el (mh-display-with-external-viewer):
2698         (mh-mime-display, mh-press-button, mh-push-button):
2699         (mh-display-emphasis): Call mh-flet instead of mh-cl-flet.
2701 2016-06-19  Bill Wohler  <wohler@newt.com>
2703         Release MH-E manual version 8.6
2705         * doc/misc/mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH):
2706         Update for release 8.6.
2708 2016-06-19  Mike Kupfer  <m.kupfer@acm.org>
2710         Update MH-E's documentation about HTML renderers
2712         * doc/misc/mh-e.texi (HTML): Remove the footnote with the minimum Gnus
2713         version (we are no longer trying to support multiple Emacs
2714         releases). Sort the table of HTML renderers by name (the previous
2715         ordering was based on a 10-year-old survey). Add shr and gnus-w3m to
2716         the table. Remove the entry for w3 (no longer available).  Update
2717         existing entries so that they are more consistent about what features
2718         are discussed, and to reflect recent testing (Debian 8). Small tweaks
2719         to existing text.
2721 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
2723         Fx the we->the typo
2725         * doc/emacs/trouble.texi (Sending Patches):
2726         Fix the typo (bug#23657).
2728 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2730         Restore frames into the current display by default
2732         * lisp/desktop.el (desktop-restore-in-current-display):
2733         Default to t, not nil (Bug#23604).
2734         * etc/NEWS: Mention the change.
2736 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
2738         * lisp/recentf.el (recentf-open-files-item): Quick fix for (bug#22434).
2740         etc/TODO: Remove out-of-place issue
2742 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2744         Clarify doc string of 'file-name-sans-extension'
2746         * lisp/files.el (file-name-sans-extension, file-name-extension):
2747         Clarify in the doc strings what is the extension, and which
2748         leading period doesn't count.  (Bug#23643)
2750 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2752         Fix the MSDOS build
2754         * msdos/sed1v2.inp (PAXCTL_dumped, PAXCTL_notdumped): Define to
2755         empty, and remove the lines which use them in recipes, as that
2756         causes weird error message from Make and breaks the MSDOS build.
2758 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
2760         * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Call
2761         substitute-command-keys to undo help--docstring-quote. (Bug#23634)
2763 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2765         * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23631)
2767 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2769         Fix infloop in 'number-sequence'
2771         * lisp/subr.el (number-sequence): Avoid overflow leading to an
2772         infloop.  (Bug#23627)
2774         * test/automated/subr-tests.el (number-sequence-test): New test.
2776 2016-06-19  Glenn Morris  <rgm@gnu.org>
2778         * lisp/emacs-lisp/find-func.el (find-function-library):
2780         Update for symbol-function no longer erroring.  (Bug#23626)
2782 2016-06-19  Glenn Morris  <rgm@gnu.org>
2784         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
2785         (w32-get-valid-locale-ids): Improve declarations.
2787 2016-06-19  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2789         Correct old cell name unbinding when renaming cell.
2791         Bug is to unbind old cell names when renaming a cell with
2792         'makunbound'. when the old cell name is of A1 type, then
2793         'kill-local-variable' must be used instead, so that only the current
2794         spreadsheet is affected. When the old cell name is a renamed cell,
2795         then 'ses--unbind-cell-name' must be used in order to remove the old
2796         name from the name hashmap.
2798         * lisp/ses.el (ses-rename-cell): check consistency of cell symbol from
2799         text-property and from array object. Instead of 'makunbound', use
2800         either 'ses--unbind-cell-name' or 'kill-local-variable' depending on
2801         whether the cell old name is a named cell or an A1 type cell
2803 2016-06-19  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2805         Document problem: slow screen refresh on missing font.
2807         See discussion of bug#22519 for more on this.
2809 2016-06-19  Glenn Morris  <rgm@gnu.org>
2811         * admin/admin.el (add-release-logs): Basic check of existing ChangeLog.
2813 2016-06-19  Glenn Morris  <rgm@gnu.org>
2815         * build-aux/gitlog-to-emacslog: Handle empty generated ChangeLog.
2817         This is relevant for M-x add-release-logs right after M-x authors.
2819 2016-06-19  Glenn Morris  <rgm@gnu.org>
2821         * admin/admin.el (add-release-logs): Generate ChangeLog if needed.
2823 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2825         * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
2827 2016-06-19  Glenn Morris  <rgm@gnu.org>
2829         * admin/authors.el (authors): First update the ChangeLog.
2831         * admin/make-tarball.txt: Related updates.
2833 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
2835         Rename vc-stay-local back to vc-cvs-stay-local
2837         * lisp/vc/vc-cvs.el (vc-cvs-stay-local): Rename back from
2838         vc-stay-local (bug#19548).  Improve the docstring.
2839         (vc-cvs-stay-local-p): Update accordingly.
2841 2016-06-19  Glenn Morris  <rgm@gnu.org>
2843         * doc/emacs/files.texi (Comparing Files):
2844         * doc/emacs/trouble.texi (Sending Patches): Fix external xrefs.
2846         * doc/misc/eww.texi (Advanced): Fix xref.
2848 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2850         Fix cross-references between manuals
2852         * doc/misc/viper.texi (Viper Specials):
2853         * doc/misc/url.texi (Tramp):
2854         * doc/misc/sem-user.texi (Smart Jump):
2855         * doc/lispintro/emacs-lisp-intro.texi (Finding More):
2856         * doc/misc/efaq.texi (Replacing text across multiple files): Fix
2857         cross-references between manuals.  (Bug#23612)
2858         * doc/lispintro/emacs-lisp-intro.texi (etags): Node deleted: no
2859         longer relevant to Emacs Lisp programming.
2861 2016-06-19  Glenn Morris  <rgm@gnu.org>
2863         * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to avoid ".".
2865         * admin/admin.el (add-release-logs): Also update etc/HISTORY.
2867 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2869         Avoid aborting due to errors in arguments of 'set-face-attribute'
2871         * src/xfaces.c (Finternal_set_lisp_face_attribute): Check the
2872         FRAME argument before using it.  This avoids gratuitous aborts in
2873         Emacs built with --enable-checking when the luser was unlucky
2874         enough to get the argument list in wrong order.
2876 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
2878         Add automated test for viper-tests.el
2880 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
2882         Fix viper undo breakage from undo-boundary changes
2884         * lisp/simple.el (undo-auto-disable-boundaries): New variable
2885         * lisp/emulation/viper-init.el (viper-undo-in-complex-command,
2886           viper-undo-needs-adjustment): Rename
2887           variable to reflect new purpose,
2888           (viper-buffer-undo-list-mark): Remove
2889         * lisp/emulation/viper-cmd.el (viper-set-complex-command-for-undo):
2890           Add undo using `undo-boundary', disable default undo-boundary
2891           addition.
2892         * lisp/emulation/viper-cmd.el
2893           (viper-complete-complex-command-for-undo,viper-adjust-undo):
2894           Change function name, remove old undo list manipulation.
2895         * lisp/emulation/viper-cmd.el (viper-undo,viper-repeat,
2896           viper-change-state-to-vi,viper-change-state):
2897           Update for function name change.
2899         Addresses Bug #22295
2901 2016-06-19  Kaushal Modi  <kaushal.modi@gmail.com>
2903         Fix reference to obsolete fn ps-eval-switch
2905         lpr-eval-switch is functionally the same as ps-eval-switch,
2906         which was obsoleted in 2cdeb903c57126d3ad5f0cbd72e182584b76ee29.
2907         So use that instead (Bug#19717).
2908         * lisp/printing.el (pr-switches): Use lpr-eval-switch instead of
2909         ps-eval-switch.
2911 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2913         Do not trash symlinks to init file
2915         If the user’s init file is a symbolic link, do not break the link
2916         when initializing the package system.  Problem reported by Jackson
2917         Hamilton (Bug#23050).
2918         * lisp/emacs-lisp/package.el (package--ensure-init-file):
2919         Bind find-file-visit-truename when visiting the init file, and
2920         save and restore the buffer name the way cus-edit does in a
2921         similar situation (Bug#454).
2923 2016-06-19  Alan Mackenzie  <acm@muc.de>
2925         Don't print the "decomposition" line for control chars in what-cursor-position
2927         This is a temporary workaround for bug #23594, where the decomposition line
2928         for linefeed corrupted the display on a Linux virtual terminal.
2930         * lisp/descr-text.el (describe-char): Remove `decomposition' from the list of
2931         character code properties printed for control characters.
2933 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2935         Bring back xterm pasting with middle mouse
2937         Problem reported by Jan Synáček.
2938         Solution suggested by Stefan Monnier (Bug#23519).
2939         * lisp/isearch.el (isearch-mode-map): Add a binding for xterm-paste.
2940         (xterm--pasted-text): New decl.
2941         (isearch-xterm-paste): New function.
2942         * lisp/term/xterm.el (xterm--pasted-text): New function,
2943         taken from xterm-paste internals.
2944         (xterm-paste): Use it.
2946 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2948         Provide workaround for xftfont rendering problem
2950         * src/xftfont.c (syms_of_xftfont) <xft-font-ascent-descent-override>:
2951         New variable.
2952         (xftfont_open): Use it to work around problems with rendering some
2953         fonts.  (Bug#23360)
2955 2016-06-19  Jun Hao  <jun_hao@aol.com>
2957         * lisp/desktop.el: Disable restore frameset if in non-graphic display.
2959         (Bug#17693)
2961 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2963         Mention GTK+ problems in etc/PROBLEMS
2965         * etc/PROBLEMS (GDK_SCALE, GDK_DPI_SCALE): Mention the possible
2966         problems this could create and the workaround.  (Bug#23587)
2968 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
2970         * lisp/emacs-lisp/package.el (package-refresh-contents):
2972         Don't change the value of `package-check-signature'.
2973         (package-check-signature): Use `epg-find-configuration'
2974         instead of `executable-find'.
2976 2016-06-19  Daiki Ueno  <ueno@gnu.org>
2978         Revert "epg: Add a way to detect gpg1 executable for tests"
2980         This reverts commit d4ae6d7033b34e8b75c59aaf1584131e439ef2d5.
2982 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
2984         Avoid errors with Czech and Slovak input methods
2986         * lisp/leim/quail/slovak.el (slovak, slovak-prog-1, slovak-prog-2)
2987         (slovak-prog-3): Remove the kp-* key bindings, they are not needed
2988         and cause errors in "C-u C-x =".
2989         * lisp/leim/quail/czech.el (czech, czech-qwerty, czech-prog-1)
2990         (czech-prog-2, czech-prog-3): Remove the kp-* key bindings.
2991         (Bug#23559)
2993 2016-06-19  Daiki Ueno  <ueno@gnu.org>
2995         epg: Add a way to detect gpg1 executable for tests
2997         Fixes bug#23561.
2999         * test/automated/epg-tests.el
3000         (epg-tests-program-alist-for-passphrase-callback): New
3001         constant.
3002         (epg-tests-find-usable-gpg-configuration): New function,
3003         renamed from `epg-tests-gpg-usable'.  All callers changed.
3004         (epg-tests-gpg-usable): Remove.
3006         * lisp/epg-config.el (epg-config--program-alist): Factor out
3007         constructor element to...
3008         (epg-config--configuration-constructor-alist): ...here.
3009         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
3010         and add PROGRAM-ALIST argument.
3012 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
3014         * lisp/emacs-lisp/package.el: Fix free variable warnings.
3016         (package--with-response-buffer): Replace two usages of
3017         `macroexp-let2*' with `let'.
3019 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
3021         * lisp/emacs-lisp/package.el (package--with-response-buffer):
3023         Fix some macro locals leaking into body.  (Bug#22440)
3025         * test/automated/package-test.el (package-test-signed):
3026         Manually check all possible values of `package-check-signature'.
3028 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3030         Improve documentation of 'server-name'
3032         * doc/emacs/misc.texi (Emacs Server): Fix example of setting
3033         'server-name'.  Mention how to do that with daemon sessions.
3034         (Bug#23576)
3036 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3038         Modernize ASLR advice in etc/PROBLEMS
3040         * etc/PROBLEMS (Segfault during 'make'): Modernize advice for
3041         seccomp, Docker, and NetBSD (Bug#23529).
3043 2016-06-19  Juri Linkov  <juri@linkov.net>
3045         * lisp/char-fold.el: Rename from character-fold.el.
3047         * lisp/replace.el (replace-char-fold): Rename from replace-character-fold.
3048         * test/automated/char-fold-tests.el: Rename from character-fold-tests.el.
3049         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00529.html
3051 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
3053         Bump version to 25.0.94
3055         * README:
3056         * configure.ac:
3057         * msdos/sed2v2.inp: Bump Emacs version to 25.0.94.
3059 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
3061         etc/AUTHORS: Update the AUTHORS file
3063 2016-06-19  Alan Third  <alan@idiocy.org>
3065         Fix bug#23462: Crash when iconifying frame on OS X.
3067         * src/nsterm.m (x_iconify_frame): Block input while miniaturize is
3068         running.
3070 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3072         Avoid shrinking windows with Gtk+ 3.20.3
3074         Problem reported by Matthias Clasen (Bug#23144).
3075         This was fixed in a different way in master.
3076         Do not merge to master.
3077         * src/xterm.c (handle_one_xevent) [GTK_CHECK_VERSION (3, 20, 3)]:
3078         Do not call xg_frame_resized in the MapNotify case.
3080 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3082         Fix bug in default setting of 'ps-paper-type'
3084         * lisp/international/mule-cmds.el (set-locale-environment): Don't
3085         inherit the value of locale from previous examination of different
3086         environment variables, which didn't look at LC_PAPER, and so using
3087         that value would effectively ignore the setting of LC_PAPER.
3088         (Bug#23544)
3090 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
3092         Properly reject malformed or empty package sigs
3094         Problem report and fix by Lizzie Dixon (Bug#23513).
3095         * lisp/emacs-lisp/package.el (package--check-signature-content):
3096         Report an error if no good signatures OR if a fatal error.  Not AND.
3098 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3100         Remove buggy non-native image scrolling
3102         This never worked, and could cause infinite recursion.
3103         Problem reported by Glenn Morris (Bug#22465).
3104         * lisp/xwidget.el (xwidget-webkit-scroll-behavior): Remove.
3105         All uses removed.
3107 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3109         * doc/misc/texinfo.tex: Sync from gnulib.
3111 2016-06-19  Glenn Morris  <rgm@gnu.org>
3113         * lisp/emacs-lisp/find-func.el (find-feature-regexp)
3114         (find-alias-regexp): Fix :version.
3116 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3118         Do not mistake colon at the end of regexp for slash symbol
3120         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
3121         Check the parse state in the "Symbols with special characters"
3122         rule (bug#23515).
3124 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3126         Make package-install-from-buffer not move point
3128         * lisp/emacs-lisp/package.el (package-install-from-buffer):
3129         Use save-excursion here (bug#22616).
3131 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3133         Redo the fix for bug#21839
3135         * lisp/help.el (help-add-fundoc-usage): Undo the previous change.
3136         (help--make-usage-docstring): Escape newlines when printing.
3138         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
3139         Ditto (bug#21839).
3141 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3143         Don't treat JS spread as contination method call
3145         * lisp/progmodes/js.el (js--indent-operator-re):
3146         Allow only one dot (bug#23492).
3148         * test/indent/js.js (default): Add a corresponding example.
3150 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3152         Allow newlines inside cl function arglists
3154         * lisp/help.el (help-add-fundoc-usage): Allow newlines inside
3155         ARGLIST (bug#21839).
3157 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3159         Publicize cl--generic-all-functions
3161         * lisp/emacs-lisp/cl-generic.el (cl-generic-all-functions):
3162         Rename from cl--generic-all-functions.  Update both callers.
3164         * lisp/cedet/semantic/db-el.el
3165         (semanticdb-find-tags-external-children-of-type-method):
3166         And use it here (bug#23042).
3168 2016-06-19  Alan Mackenzie  <acm@muc.de>
3170         Add some "safe-local-variable" declarations for compatibility with master.
3172         These enable C files from the master repository to be visited in Emacs 25
3173         without generating irritating questions about configuration variable safety.
3175         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
3176         functions.
3177         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
3178         safe-local-variable property c-string-list-p.
3179         (c-macro-names-with-semicolon): give the safe-local-variable property
3180         c-string-or-string-list-p.
3182 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3184         Fix doc string in `insert'
3186         * src/editfns.c (Finsert_and_inherit): The before-insertion
3187         markers do not move.
3188         (Finsert): Ditto.
3190 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3192         * doc/misc/emacs-mime.texi (time-date): Document now-builtins better.
3194 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3196         Say 'All results processed' at the end
3198         * lisp/progmodes/xref.el (xref--query-replace-1):
3199         Say 'All results processed' at the end if the user hadn't
3200         cancelled the process (bug#23284).
3202 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3204         Document automatic adjustment of process' logical window dimensions
3206         * doc/lispref/processes.texi (Process Buffers): Document
3207         'set-process-window-size' and
3208         'window-adjust-process-window-size-function'.
3210         * etc/NEWS: Mention the new functionality and variable.
3212         * src/process.c (Fset_process_window_size): Improve the doc string.
3214 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
3216         tramp-sh.el: Work around a stat bug (backport from master)
3218         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
3219         stat versions which produce shell quoted output.  See also
3220         coreutils Bug#23422.
3222         (cherry picked from commit 6aad36ace9953b9672b13be68416d205532d5e59)
3224 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3226         Doc fixes for fclist and grep
3228         A newline is needed between two fc-list calls.
3229         egrep and fgrep have been withdrawn from POSIX,
3230         so document grep -E and grep -F instead.
3232 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3234         Minor doc fixes for quoting
3236         * doc/lispref/control.texi (Signaling Errors):
3237         * doc/lispref/display.texi (Displaying Messages):
3238         Don’t say that formats “generate”.  Try to word more clearly.
3239         * etc/NEWS: Coalesce near-duplicate entries.
3241 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3243         `nreverse' the marker pairs list
3245         * lisp/progmodes/xref.el (xref--buf-pairs-iterator): `nreverse'
3246         the marker pairs list for each buffer before returning.
3248 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3250         Use save-excursion in xref-location-marker more
3252         * lisp/progmodes/elisp-mode.el (xref-location-marker): Use
3253         save-excursion, in order not to alter the value of point if the
3254         buffer is currently open in the background (problem reported by
3255         Robert Weiner).
3257         * lisp/progmodes/etags.el (xref-location-marker): Same.
3259 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3261         shell-quote-argument DIR when appropriate
3263         * lisp/progmodes/project.el (project-file-completion-table):
3264         `shell-quote-argument' DIR as well.
3266         * lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
3267         `shell-quote-argument' (bug#23453).  Thanks for Kaushal Modi for
3268         pointing out the problem.  Assert that DIR doesn't start with `~'.
3270 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3272         Rework xref-query-replace-in-results
3274         * lisp/progmodes/xref.el (xref-query-replace-in-results): Collect
3275         all xrefs from the buffer first, then delegate most of the
3276         processing to the value returned by xref--buf-pairs-iterator.
3277         (xref--buf-pairs-iterator): New function.  Return an "iterator"
3278         which partitions returned markers into buffers, and only processes
3279         markers from one buffer at a time.  When an xref is out of date,
3280         skip it with a message instead of signaling error (bug#23284).
3281         (xref--outdated-p): Extract from xref--buf-pairs-iterator.  Trim
3282         CR from both strings before comparing.
3283         (xref--query-replace-1): Remove the variable current-buf, no need
3284         to track it anymore.  Simplify the filter-predicate and search
3285         functions accordingly.  Iterate over buffer-markers pairs returned
3286         by the iterator, and call `perform-replace' for each of them.  Use
3287         multi-query-replace-map (bug#23284).  Use `switch-to-buffer' every
3288         time after the first, in order not to jump between windows.
3290         * test/automated/xref-tests.el
3291         (xref--buf-pairs-iterator-groups-markers-by-buffers-1)
3292         (xref--buf-pairs-iterator-groups-markers-by-buffers-2)
3293         (xref--buf-pairs-iterator-cleans-up-markers): New tests.
3295 2016-06-19  Juri Linkov  <juri@linkov.net>
3297         * lisp/replace.el (query-replace-read-from): Use minibuffer-with-setup-hook
3299         to set minibuffer-local value of text-property-default-nonsticky.
3300         (Bug#23418, bug#23127)
3302 2016-06-19  Stephen Berman  <stephen.berman@gmx.net>
3304         Fix todo-mode bug involving archived items (bug#23447)
3306         * lisp/calendar/todo-mode.el (todo-jump-to-category): When jumping
3307         from Todo Categories mode to a category with only archived items
3308         and todo-skip-archived-categories is non-nil, make sure the
3309         archive file buffer is in Todo Archive mode to prevent
3310         todo-category-select from raising an error, and don't set
3311         todo-current-todo-file, since that makes todo-show display the
3312         archived category.  Remove a no-op call to kill-buffer, which is
3313         already called in todo-insert-category-line.
3315 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3317         Handle "empty line" regexp in xref searches
3319         * lisp/progmodes/xref.el (xref--collect-matches-1): Stop after one
3320         match if re-search-forward doesn't move point (bug#23426).
3322         * test/automated/xref-tests.el
3323         (xref-collect-matches-finds-an-empty-line-regexp-match):
3324         Uncomment test.
3326 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3328         Add tests for xref-collect-matches
3330         * test/automated/xref-tests.el: New file.  Add tests for
3331         xref-collect-matches.
3333 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3335         Use grep-find-ignored-directories instead of vc-directory-exclusion-list
3337         * lisp/dired-aux.el (dired-do-find-regexp):
3338         Use grep-find-ignored-directories instead of
3339         vc-directory-exclusion-list.  The result should be functionally
3340         similar (the former uses the latter as the default value), but it
3341         should be more consistent and appropriate WRT user
3342         customizations.
3343         (dired-do-find-regexp-and-replace): Update the docstring.
3345         * lisp/dired.el: Update the corresponding autoloads.
3347         * doc/emacs/dired.texi (Operating on Files): Update the
3348         documentation accordingly.
3350 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3352         Clear buffer-undo-list when showing xrefs
3354         * lisp/progmodes/xref.el (xref--show-xref-buffer): Clear
3355         buffer-undo-list and temporarily bind it to t while rendering the
3356         buffer contents.
3358 2016-06-19  Alan Mackenzie  <acm@muc.de>
3360         Note the quote translation in `message' in section "incompatible changes".
3362         * etc/NEWS: Note that `message' translates quotes, that the translation
3363         cannot be disabled, and that `format' can be used to get the old
3364         behavior back.
3366 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3368         * etc/NEWS: Mention (message "%s" (format ...)).
3370 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3372         (Common Keywords): Correct what missing :group means
3374         * doc/lispref/customize.texi (Common Keywords): Correct what
3375         missing :group means.
3377 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3379         Improve documentation of Dired's 'A' and 'Q' commands
3381         * lisp/dired-aux.el (dired-do-find-regexp)
3382         (dired-do-find-regexp-and-replace): Mention
3383         'grep-find-ignored-files' and 'vc-directory-exclusion-list', and
3384         also the fact that REGEXP should be palatable by Grep.  (Bug#23426)
3385         * lisp/dired.el: Update the corresponding autoload forms.
3387         * doc/emacs/dired.texi (Operating on Files): Mention
3388         'grep-find-ignored-files' and 'vc-directory-exclusion-list'.
3389         (Bug#23429)
3391 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3393         Doc fixes for quoting
3395         * doc/emacs/text.texi, doc/lispintro/emacs-lisp-intro.texi:
3396         * doc/lispref/control.texi, doc/lispref/display.texi:
3397         * doc/lispref/help.texi, doc/lispref/strings.texi, lisp/subr.el:
3398         * src/callint.c, src/doprnt.c, src/editfns.c:
3399         Document quoting a bit more systematically.
3400         Problem reported by Alan Mackenzie (Bug#23425).
3402 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3404         posnp doc clarification
3406         * lisp/subr.el (posnp): Mention that a posn object is returned
3407         from `event-start' (bug#18211).
3409 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3411         Mention what a missing :group does
3413         * doc/lispref/customize.texi (Common Keywords): Document that
3414         a missing :group reuses the group from the preceding item (bug#21601).
3416 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
3418         Fix documentation of dired-aux search/replace commands
3420         * lisp/dired-aux.el (dired-do-find-regexp)
3421         (dired-do-find-regexp-and-replace): Doc fixes.  (Bug#23429)
3422         * lisp/dired.el: Update the corresponding autoload forms.
3424 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3426         Fix quoting problem in cc-engine debug message
3428         * lisp/progmodes/cc-engine.el (c-replay-parse-state-state):
3429         Use "%s" format to pass through ‘'’ unscathed (Bug#23425), and
3430         likewise for ‘`’, and ‘%’.
3432 2016-06-19  Philipp Stephani  <phst@google.com>
3434         Add electric-quote-string unit test
3436         * test/automated/electric-tests.el (electric-quote-string): New test.
3438 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3440         Don’t electrically quote ‘'’ in Python
3442         Problem reported by Philipp Stephani (Bug#23387).
3443         * lisp/electric.el (electric-quote-post-self-insert-function):
3444         Do not requote a string starter or ender.
3446 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
3448         `nreverse' Grep hits before passing them to xref--convert-hits
3450         * lisp/progmodes/xref.el (xref-collect-matches): `nreverse' hits
3451         before passing them to xref--convert-hits.  Fixes a regression
3452         from cc0b7132.
3454 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3456         * doc/misc/texinfo.tex: Sync from gnulib.
3458 2016-06-19  Juri Linkov  <juri@linkov.net>
3460         * lisp/isearch.el (isearch-forward-symbol-at-point): Add isearch-push-state.
3462         (Bug#23410)
3464 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
3466         tramp.texi: Revert last change due to backward compatibility
3468         (cherry picked from commit 910f9a0a936aacbffe9b9b790d7f698dfd287aac)
3470 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3472         cua-prefix-override-inhibit-delay doc fix
3474         * lisp/emulation/cua-base.el
3475         (cua-prefix-override-inhibit-delay): Typo fix in doc string
3476         (bug#23401).
3478         (cherry picked from commit 2b4c099822811ede787fc6e575bfbb17b3cc0681)
3480 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3482         global-eldoc-mode doc fix
3484         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
3485         specific about what "applicable" means (bug#23071).
3487         (cherry picked from commit 25e95b5dd8cd92e03788e589bf99a4b399f03114)
3489 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3491         normal-top-level-add-subdirs-to-load-path doc fix
3493         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
3494         Doc fix (bug#21962).
3496         (cherry picked from commit 28aaa6d20586e3330a23b017a65e56dd6461c003)
3498 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3500         isearch-search-fun-function doc tweak
3502         * lisp/isearch.el (isearch-search-fun-function): Mention what
3503         the STRING parameter is (bug#21552).
3505         (cherry picked from commit cafc2a5940cdc523cfea6dcf1cf540f48367c62a)
3507 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3509         Fill some imenu--index-alist doc lines
3511         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
3513         (cherry picked from commit 4b7bb8f596550628eaa83b82c0f7eabe59a84964)
3515 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3517         Fmarker_position doc string clarification
3519         * src/marker.c (Fmarker_position): Clarify the doc string
3520         (bug#21231).
3522         (cherry picked from commit eeac7c57273cec3f9408b18392dd2bafe3be4450)
3524 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3526         Further define-obsolete-* doc fixups
3528         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
3529         Fix up last change.
3530         (define-obsolete-variable-alias): Ditto.
3532         (cherry picked from commit 28e9f4390d8391c2c36be4ef515cf3a2c679a5a5)
3534 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3536         Describe WHEN in all the define-obsolete- macros
3538         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
3539         Say more verbosely what WHEN is (bug#21225).
3540         (define-obsolete-function-alias): Describe the WHEN parameter.
3541         (define-obsolete-variable-alias): Ditto.
3543         (cherry picked from commit 247c388f160581d207e41ca5926990bbf69d4a0f)
3545 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3547         Mention with-silent-modifications in the lispref manual
3549         * doc/lispref/text.texi (Changing Properties): Document
3550         with-silent-modifications (bug#21171).
3552         (cherry picked from commit fcd0d854eef6e439d51e8f07cf734d5e34e502b3)
3554 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3556         with-silent-modifications doc clarification
3558         * lisp/subr.el (with-silent-modifications): Rearrange the doc
3559         string a bit so that the most pertinent information is at the
3560         top (bug#21171).
3562         (cherry picked from commit e0e70f030e69d9696a963a86f5f7caaff4df06eb)
3564 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3566         clear-visited-file-modtime doc string fix
3568         * lisp/files.el (clear-visited-file-modtime): Fix possibly
3569         confusing doc string wording (bug#21169).
3571         (cherry picked from commit 1aaeaf1450756a71c9254a2a5b174c72084ca67a)
3573 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3575         Document mode mode line variables
3577         * doc/lispref/modes.texi (Mode Line Variables): Document
3578         `mode-line-front-space, `mode-line-misc-info',
3579         `mode-line-end-spaces' (bug#21014).
3581         (cherry picked from commit bf7a630b0a5d3900f2afb0e7a881ce62e2b9f935)
3583 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3585         Add a cross ref to Optional Mode Line
3587         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
3588         reference to the Emacs mode line node that explains things
3589         like `display-time-string' (bug#21002).
3591         (cherry picked from commit a3151a28789f413af73b14fbba557b2a587fca53)
3593 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3595         Add a doc string to display-time-string
3597         * lisp/time.el: Add a doc string to `display-time-string',
3598         because it's referred to in the manual, and is too mysterious
3599         otherwise (bug#21002).
3601         (cherry picked from commit 45559c584e5a4ddeed1539b028b50b95baa372f8)
3603 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3605         custom-buffer-style doc fix
3607         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
3608         value (bug#20724).
3610         (cherry picked from commit bcf0291d0cd02095b0809b1eb91f1e5c5c2ac5e3)
3612 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3614         Rearrange the doc of query-replace slightly
3616         * lisp/replace.el (query-replace): Move the mention of the
3617         interactive prefix arg earlier so that users can find it
3618         (bug#20654).
3620         (cherry picked from commit bcc10761c3b968fa4534718116a0a601ed7da389)
3622 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3624         apropos-print doc fix
3626         * lisp/apropos.el (apropos-print): Document the undocumented
3627         parameters (bug#20520).
3629         (cherry picked from commit 0714d7387812a151f59993ac77c7321724ef79b1)
3631 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3633         completion-table-with-predicate doc string fix
3635         * lisp/minibuffer.el (completion-table-with-predicate): t ->
3636         non-nil in the doc string (bug#20460).
3638         (cherry picked from commit b6a4d162208f239bc7804696d611ae52c686f138)
3640 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3642         Fill the completion-table-with-predicate doc string
3644         * lisp/minibuffer.el (completion-table-with-predicate): Fill
3645         the doc string (bug#20460).
3647         (cherry picked from commit 207a31432c1ed8b548003a3e4af32c49aa3441e9)
3649 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3651         replace-match-maybe-edit doc clarification
3653         * lisp/replace.el (replace-match-maybe-edit): Say what
3654         MATCH-DATA is (bug#20304).
3656         (cherry picked from commit 139874ba53c2e2de9868f8e5234d6ea2bcb97af8)
3658 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3660         add-timeout doc fix
3662         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
3663         value (bug#20181).
3665         (cherry picked from commit 921b40476f597c84d7c34aa289cd43caeb389c4a)
3667 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3669         Extremely minor doc fix in Choosing Window
3671         * doc/lispref/windows.texi (Choosing Window): There's only one
3672         action alist, I think (bug#20158).
3674         (cherry picked from commit 6c7e7f421d02d9290d6d1d85320737371160aef7)
3676 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3678         Transform mentions of `eval-after-load' to `with-eval-after-load'
3680         * doc/lispref/loading.texi (Hooks for Loading): Update text to
3681         not mention `eval-after-load' (bug#20038).
3683         (cherry picked from commit 9392193be56eebdfac702a0bbb5e954088371c7a)
3685 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3687         cursor-type doc fix
3689         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
3690         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
3692         (cherry picked from commit 77c5f4554ebb3b7c7d49bc881e45a550f6c93987)
3694 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3696         Add a link from Tool Bar to Images
3698         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
3699         Images node (bug#19722).
3701         (cherry picked from commit da5d0786163a91400eced4fddba4a92b652458d1)
3703 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3705         (default-mode-line-format): More explicit obsolete info
3707         * lisp/subr.el (default-mode-line-format): Be more explicit in
3708         how default values are now handled (bug#19424).
3710         (cherry picked from commit 9dc5f6d830e72420dc4d41c8f6ca1ca6b28609c0)
3712 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3714         Fcompare_buffer_substrings doc string clarification
3716         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
3717         doc string clarification (bug#19255).
3719         (cherry picked from commit aa692acbb598a1cc8219ed7a87dde25fd7626ba5)
3721 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3723         insert-file-contents-literally doc fix
3725         * lisp/files.el (insert-file-contents-literally): Say that the
3726         parameters are explained in the other function (bug#18317).
3728         (cherry picked from commit b6481b19bc9592492b1f70dfecb4de6256f537fe)
3730 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3732         Fix custom types for cursor-in-non-selected-windows
3734         * lisp/cus-start.el (standard): Use the same custom types for
3735         cursor-in-non-selected-windows as for cursor-type (bug#19214).
3737         (cherry picked from commit b66bc0cced786e0320e1c3b0758bd3c434d4e8b5)
3739 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3741         Doc clarification to mwheel-scroll
3743         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
3744         does not apply to Windows (bug#19209).
3746         (cherry picked from commit 696052b5fdfbc5c25dff3c6b081aebe70f6d06c7)
3748 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3750         Clarify the doc of eval-expression-print-format
3752         * lisp/simple.el (eval-expression-print-format): Doc
3753         clarification (bug#19114).
3755         (cherry picked from commit cd193a871f5a8e1c81ba86fc398ac382fa814383)
3757 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3759         Explictly explain that package-initialize loads the packages
3761         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
3762         in saying that `package-initialize' obviates adjusting the
3763         path or requiring the packages, as this is a question that
3764         apparently comes up now and then (bug#18829).
3766         (cherry picked from commit 619e0aedb2f3dbfe6821ac34e2d25b4e5c181117)
3768 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3770         Have the doc strings of `load-path' and `require' mention each other
3772         * src/fns.c (Frequire): Mention `load-path' and fill the doc
3773         string (bug#18829).
3775         * src/lread.c (syms_of_lread): Mention that `require' uses
3776         `load-path'.
3778         (cherry picked from commit 3eca9a03816f95da0030665223c0b5262f223ba7)
3780 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3782         Doc fix for insert-pair-alist
3784         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
3785         COMMAND-CHAR is (bug#18809).
3787         (cherry picked from commit 2824c587e9749a8f350f1d3dddd65176b4561dcb)
3789 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3791         Move doc of backup-directory-alist to the Backup node
3793         * doc/emacs/files.texi (Backup): Move the documentation of
3794         `backup-directory-alist' here from the "Single or Numbered
3795         Backups" node, because it doesn't seem to have much to do with
3796         numbering (bug#18692).
3798         (cherry picked from commit e77b8d84b4161f2cf8720dec2bf44a3e50134398)
3800 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3802         Tiny doc clarification for create-fontset-from-fontset-spec
3804         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
3805         Clarify what the optional part is (bug#18686).
3807         (cherry picked from commit c05d186455ce9907eeb6b21ea4227e453996c681)
3809 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3811         Fill the doc string of font-lock-keywords
3813         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
3814         reorganise some explanations (bug#21427).
3816         (cherry picked from commit c05716d3a26ea7518b89eacfccaf70c9d0731df7)
3818 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3820         Doc fix for font-lock-remove-keywords
3822         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
3823         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
3825         (cherry picked from commit bc00dcf12983cd399127d0eea39647f29778eb02)
3827 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3829         Clarify whitespace-style doc string
3831         * lisp/whitespace.el (whitespace-style): Doc clarification
3832         (bug#18296).
3834         (cherry picked from commit d96c720d0cca7c9ffbb4c712ad315bb707d6625c)
3836 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3838         Doc fixed for next-error-buffer-p
3840         * lisp/simple.el (next-error-buffer-p): Clarify doc string
3841         (bug#18202).
3843         (cherry picked from commit a10eb168cc96db9f0dab2d75550cbd8f08be2363)
3845 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3847         Tiny doc fix
3849         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
3850         (and fill) (bug#18201).
3852         (cherry picked from commit 2ef0040e2363a669d9b93df935d31c98fa130132)
3854 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3856         Doc fix
3858         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
3859         slightly (bug#18092).
3861         (cherry picked from commit 6b769c81d024f7eeb90b167e7df6f87d859614d4)
3863 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3865         delsel doc touch ups
3867         * lisp/delsel.el (delete-selection-helper): Use non-nil
3868         instead of t and clarify function return values (bug#18089).
3870         (cherry picked from commit d7a5b5be9a5869bcd233434ec3103dd1976d7df7)
3872 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3874         Doc fixes for menu-bar.el
3876         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
3877         REGION parameter (bug#18028).
3878         (clipboard-kill-region): Ditto.
3880         (cherry picked from commit 33d2c67bff0992ecbc0fe38556683242b9d1a4ae)
3882 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3884         Doc fix
3886         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
3888         (cherry picked from commit 6baca4911ec901579749dbf7596011d90fea3781)
3890 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3892         Minor doc clarification
3894         * lisp/subr.el (y-or-n-p): Document the return value from "n"
3895         (bug#18024).
3897         (cherry picked from commit 5d1f3192d484edee92caa46cd7d699da3e920259)
3899 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3901         Fill font-lock-mode doc string
3903         * lisp/font-core.el (font-lock-mode): Fill the text to make it
3904         narrower (bug#18008).
3906         (cherry picked from commit 27abf372836532c57be2e9e3ed23413729cc07fc)
3908 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3910         Wrap the auto-generated doc string
3912         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
3913         string to make it less likely that we get overlong lines
3914         (bug#17999).
3916         (cherry picked from commit 323b69664914d687fd4b48593479cea223dfbcb4)
3918 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3920         Clarify hi-lock-find-patterns
3922         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
3923         (bug#17989).
3925         (cherry picked from commit 552e90ce7dff3a7107243fdf71c4de3af443e13a)
3927 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3929         Add a doc string to `winner-mode'
3931         * lisp/winner.el (winner-mode): Add a doc string based on the
3932         comments in the file (bug#17716).
3934         (cherry picked from commit 2c3ab9b6e39a3d600e7d82deacc24effaec051bb)
3936 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3938         Doc fix for align-newline-and-indent
3940         * lisp/align.el (align-newline-and-indent): Mention that
3941         alignment is done by `align' (bug#17707).
3943         (cherry picked from commit 340a224ec3e01706112a07164da9a9f3f369a5aa)
3945 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3947         Doc fix for `kbd'
3949         * lisp/subr.el (kbd): Describe more fully the format of the
3950         parameter (bug#17039).
3952         (cherry picked from commit 3a33afe25d8518f194fa4706eaccdb2a786a0348)
3954 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3956         Doc tweak
3958         * lisp/simple.el (use-empty-active-region): Doc tweak.
3959         There's only one region (bug#16513).
3961         (cherry picked from commit 35fb7897f161d5e5a87e039dc1e427094640b0c8)
3963 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3965         Link from (emacs)Exiting to (lisp)Killing Emacs
3967         * doc/emacs/entering.texi (Exiting): Link to the lispref
3968         manual for further customizations (bug#15445).
3970         (cherry picked from commit bc5f27aa099cdde02ca66e71501b89300685ab28)
3972 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3974         find-lisp doc touchups
3976         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
3977         string (bug#15047).
3978         (find-lisp-find-files): Clarify doc.
3980         (cherry picked from commit e4c7657b0d1a31d64ca24bc64b5480cd7687e332)
3982 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3984         Don't have the manual claim that it lists all CL incompatibilities
3986         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
3987         incompatibilities isn't exhaustive, so don't say that it is
3988         (bug#15171).
3990         (cherry picked from commit fb685bc91a72508c97ce7e30f970d4157677f371)
3992 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
3994         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
3996         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
3997         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
3998         (bug#14554).
4000         (cherry picked from commit e4c26271f2c2fe08f8490e25c63a436ab2a804ca)
4002 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
4004         Doc string change to enable-recursive-minibuffers
4006         * src/minibuf.c (syms_of_minibuf): Mention
4007         minibuffer-depth-indicator-mode in the doc string to
4008         enable-recursive-minibuffers (bug#14147).
4010         (cherry picked from commit 23ba488a5e8290c4de91e0ff4161641efa364c0d)
4012 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
4014         Clarify the `interactive' doc string slightly
4016         * src/callint.c (Finteractive): Clarify the doc string slightly
4017           (bug#14577).
4019         (cherry picked from commit cd993be60da2d12db0d390001373d486c1091c47)
4021 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
4023         Clarify some doc strings
4025         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
4026         Clarify doc string (bug#8693).
4027         (syntax-propertize): Clarify doc string.
4029         (cherry picked from commit ad3ef417f3c40f086de9c547d6272e5685595e42)
4031 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
4033         Add some concept index entries for custom types
4035         * doc/lispref/customize.texi (Composite Types): Add concept
4036         index entries for restricted-sexp, radio and choice (bug#7385).
4038         (cherry picked from commit 388bb723fa078158d3148de05e942f9c01e95dd8)
4040 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
4042         Mention `lisp-indent-function' in the lispref manual
4044         * doc/lispref/macros.texi (Indenting Macros): Mention
4045         `lisp-indent-function' (bug#3393).
4047         (cherry picked from commit a1627691a896b2afaa264f93534178bc763564c9)
4049 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
4051         Clarify doc string of internal compilation function
4053         * lisp/progmodes/compile.el (compilation-get-file-structure):
4054         Clarify doc string (bug#3137).
4056         (cherry picked from commit 123191decb7428db3b32a6c01631fa755088393a)
4058 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4060         Use ‘T *restrict’ proto, not ‘T[restrict]’
4062         * src/fns.c (sort_vector_copy): Use a different way to attempt to
4063         work around GCC 3.0-and-earlier incompatibility with C99, one that
4064         does not have problems with modern non-GCC compilers.
4066 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4068         Fix documentation of 'url-retrieve-synchronously'
4070         * doc/misc/url.texi (Retrieving URLs): Update argument list of
4071         'url-retrieve-synchronously'.  (Bug#23411)
4073 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4075         * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bug#23411)
4077 2016-06-19  Leo Liu  <sdl.web@gmail.com>
4079         Fix last change to isearch-update (bug#23406)
4081         * lisp/isearch.el (isearch-update): Remove (setq cursor-sensor-inhibit
4082           nil) ie remove the original (unless (boundp 'cursor-sensor-inhibit)
4083           ...) form.
4085 2016-06-19  Leo Liu  <sdl.web@gmail.com>
4087         Autoload cursor-sensor-inhibit (bug#23406)
4089         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-inhibit): Autoload.
4090         * lisp/isearch.el (isearch-update): Remove boundp check.
4092 2016-06-19  Phillip Lord  <phillip.lord@newcastle.ac.uk>
4094         org-map-entries: Fix org-agenda-prepare-buffers call
4096         * lisp/org/org.el (org-map-entries): Check that buffer-file-name is non-nil
4097           before passing to org-agenda-prepare-buffers.
4099         This is a backport of commit 44c8cd7136e3fcd1e6bfa08895cac437b7a691fa
4100         from upstream org-mode. Addresses bug #23365.
4102 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4104         Followup for last commit in the user manual
4106         * doc/emacs/basic.texi (Moving Point): Clarify that
4107         set-goal-column has buffer-local effect.  (Bug#23405)
4109 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4111         Improve doc string of 'set-goal-column'
4113         * lisp/simple.el (set-goal-column): Doc fix.  (Bug#23405)
4115 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4117         Fix the MSDOS build
4119         * config.bat:
4120         * msdos/sedlisp.inp:
4121         * msdos/sedlibmk.inp:
4122         * msdos/sedleim.inp:
4123         * msdos/sedadmin.inp:
4124         * msdos/sed6.inp:
4125         * msdos/sed3v2.inp:
4126         * msdos/sed2v2.inp:
4127         * msdos/sed1v2.inp: Adapt to Emacs 25.
4129         * src/process.c (remove_slash_colon): Move out of "#ifdef
4130         subprocesses" block, as it its called unconditionally.  Move
4131         ADD_SUBFEATURE calls into "#ifdef subprocesses" block, as they
4132         reference variables only defined in that block.
4133         * src/msdos.h: Provide prototypes for IT_set_frame_parameters,
4134         faccessat, msdos_fatal_signal, syms_of_msdos, pthread_sigmask,
4135         dos_keysns, dos_keyread, run_msdos_command, and
4136         syms_of_win16select, to avoid compiler warnings.
4137         * src/msdos.c (SYS_ENVIRON): Define to either '_environ' or
4138         'environ', depending on the DJGPP version.
4139         Remove declarations of externally-visible Lisp objects, like
4140         Qbackground_color and Qreverse.
4141         (run_msdos_command): First argument is not signed, not unsigned.
4142         Use SYS_ENVIRON.
4143         (sys_select): Use 'timespec_cmp' instead of 'timespec_sign', as
4144         the latter doesn't work when 'time_t' is an unsigned data type.
4145         This caused idle timers to behave incorrectly: they only fired
4146         after a keyboard input event.
4147         * src/frame.c (adjust_frame_size) [MSDOS]: Account for
4148         FRAME_TOP_MARGIN that isn't counted in the frame's number of
4149         lines, but dos_set_window_size needs it to be added.
4150         * src/lread.c (INFINITY, NAN) [DJGPP < 2.05]: Provide definitions.
4151         * src/fns.c (sort_vector_copy) [__GNUC__ < 4]: Provide a prototype
4152         that works around compilation errors with older GCC versions.
4153         * src/w16select.c: Don't declare QCLIPBOARD and QPRIMARY as Lisp
4154         Objects.
4155         * src/filelock.c [MSDOS]: Ifdef away most of the code.  Provide
4156         no-op implementations for 'lock_file' and 'unlock_file'.
4157         (Ffile_locked_p) [MSDOS]: Always return nil.  This avoids multiple
4158         ifdefs in all users of filelock.c functionality.
4159         * src/conf_post.h (EOVERFLOW, SIZE_MAX) [DJGPP < 2.04]: Define.
4160         * src/emacs.c [MSDOS]: Include dosfns.h, to avoid compiler
4161         warnings.
4162         * src/dosfns.h: Provide prototypes for dos_cleanup,
4163         syms_of_dosfns, and init_dosfns.
4164         * src/deps.mk (atimer.o): Depend on msdos.h.
4165         (emacs.o): Depend on dosfns.h.
4166         * src/atimer.c [MSDOS]: Include msdos.h, to avoid compiler
4167         warnings.
4169         * lisp/window.el (window--adjust-process-windows): Skip the body
4170         if 'process-list' is not available.  This avoids failure to start
4171         up on MS-DOS.
4172         * lisp/vc/diff.el (diff-no-select): Test 'make-process', not
4173         'start-process', as the latter is now available on all platforms.
4174         * lisp/textmodes/ispell.el (ispell-async-processp): Replace
4175         'start-process' with 'make-process' in a comment.
4176         * lisp/term/internal.el (IT-unicode-translations): Modify and add
4177         a few translations to display Info files with Unicode markup.  Fix
4178         an ancient off-by-one mismatch error with Unicode codepoints.
4179         * lisp/progmodes/compile.el (compilation-start): Test
4180         'make-process', not 'start-process', as the latter is now
4181         available on all platforms.
4182         * lisp/man.el (Man-build-man-command, Man-getpage-in-background):
4183         Test 'make-process', not 'start-process', as the latter is now
4184         available on all platforms.
4185         * lisp/international/mule-cmds.el (set-coding-system-map): Test
4186         'make-process', not 'start-process', as the latter is now
4187         available on all platforms.
4188         * lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Doc
4189         fix.
4190         (eshell-execute-pipeline): Test 'make-process', not
4191         'start-process', as the latter is now available on all platforms.
4193 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
4195         Remove \= from format string (bug#18190)
4197         * lisp/emacs-lisp/eieio.el (defclass): Remove \= from format
4198         string.
4200 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4202         Fix variable-pitch font on MS-Windows
4204         * lisp/faces.el (variable-pitch) [w32]: Name a variable-pitch font
4205         explicitly, to avoid Emacs picking up a bold-italic variant on
4206         some MS-Windows systems.  See this thread for details:
4207         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00746.html.
4209 2016-06-19  Alan Mackenzie  <acm@muc.de>
4211         Restore follow-scroll-up/down to scrolling by the combined size of all windows
4213         Also rename the current follow-scroll-up/down functions to
4214         follow-scroll-up-window and follow-scroll-down-window.  These scroll by the
4215         height of the current window.
4217         This fixes bug #23347.
4219         * lisp/follow.el (follow-mode): Tweak the doc string.
4220         (follow-scroll-up-arg, follow-scroll-down-arg): new functions, extracted from
4221         follow-scroll-up/down.
4222         (follow-scroll-up-window, follow-scroll-down-window): Functions renamed from
4223         follow-scroll-up/down.
4224         (follow-scroll-up, follow-scroll-down): Restore the historic functionality.
4226 2016-06-19  Alan Mackenzie  <acm@muc.de>
4228         Revert unneeded change which harms syntactic parsing.  This fixes bug #23308.
4230         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache): User
4231         c-state-old-cpp-end as an argument to c-with-all-but-one-cpps-commented-out
4232         regardless of the value of `here'.
4234 2016-06-19  Alan Mackenzie  <acm@muc.de>
4236         Correct indentation of ids in a C++ enum after a protection keyword.
4238         Also correct the misfontification of the last enum identifier.
4240         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): setq
4241         c-last-identifier-range to nil to ensure that only types recognized by this
4242         macro are set for fontification as types.
4243         (c-backward-typed-enum-colon): Function renamed from
4244         c-backward-colon-prefixed-type.  On finding a colon in the backward search,
4245         check it is preceded by an identifier rather than a keyword.
4247 2016-06-19  Glenn Morris  <rgm@gnu.org>
4249         * lisp/window.el (window--process-window-list): No-op if no processes.
4251         This avoids an issue with save-selected-window (from walk-windows)
4252         failing if frame.el is not loaded, eg if the terminal is resized
4253         during startup of a -nw CANNOT_DUMP build.  (Bug#23369).
4255 2016-06-19  Paul Eggert  <eggert@penguin.cs.ucla.edu>
4257         Port dumping to NetBSD with PaX
4259         Problem reported by Thomas Klausner (Bug#23371).
4260         * configure.ac (PAXCTL_dumped, PAXCTL_notdumped): New vars.
4261         Set them to setfattr and/or paxctl commands appropriate for
4262         GNU/Linux and/or NetBSD; the latter prefers paxctl +a.  Search
4263         for paxctl only if setfattr is not found.
4264         * src/Makefile.in (PAXCTL_dumped, PAXCTL_notdumped):
4265         New vars, replacing PAXCTL_if_present and SETFATTR_if_present.
4266         All uses changed.
4268 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4270         Don't mistake `for' inside a function for a part of array comprehension
4272         * lisp/progmodes/js.el (js--indent-in-array-comp): Also check the
4273         depth in parens between the bracket and `for' (bug#23391).
4275         * test/indent/js.js: Add a corresponding example.
4277 2016-06-19  Anders Lindgren  <andlind@gmail.com>
4279         Fix bug#22891: wrong terminal width when a fringe width is zero.
4281         When either fringe width is zero, Emacs reserved one column for a
4282         continuation glyph. Terminal windows does not take this into
4283         account when the frame is resized.
4285         * lisp/window.el (window-adjust-process-window-size): Use
4286         `window-max-chars-per-line' instead of `window-body-width'.
4287         * lisp/term.el (term-window-width): Remove function. (It does the
4288         same as `window-max-chars-per-line' but without recent bug fixes.)
4289         (term-mode): Use `window-max-chars-per-line' instead of
4290         `term-window-width'.
4292         Backport
4294         (cherry picked from commit 5b5403289888efe8783ae6a405845b925f544ec1)
4296 2016-06-19  Leo Liu  <sdl.web@gmail.com>
4298         Improve last change to vc-git-mode-line-string
4300         * lisp/vc/vc-git.el (vc-git-mode-line-string): Better fix that caches
4301           the result.
4303 2016-06-19  Stephen Berman  <stephen.berman@gmx.net>
4305         Todo mode doc bug fix
4307         * lisp/calendar/todo-mode.el (todo-show): Correct obsolete and no
4308         longer correct information in doc string.
4310 2016-06-19  Leo Liu  <sdl.web@gmail.com>
4312         Fix revision calculation in vc-git-mode-line-string
4314         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use
4315           vc-git-working-revision because vc-working-revision needs to decide
4316           the backend and may return nil.
4318 2016-06-19  Jorgen Schaefer  <contact@jorgenschaefer.de>
4320         Add Python 3.5 keyword "await"
4322         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
4323         keyword.
4325 2016-06-19  Lele Gaifax  <lele@metapensiero.it>
4327         Add new keywords of Python 3.5
4329         Python 3.5, released in mid September 2015, introduced a few new
4330         keywords to better support asynchronous code, "async" and "await"
4331         in particular. See https://www.python.org/dev/peps/pep-0492/ for
4332         details. (Bug#21783)
4333         * lisp/progmodes/python.el (python-rx-constituents): Add async
4334         def/for/with as block-start and async def as defun.
4335         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
4336         def/for/with as keyword.
4337         * test/automated/python-tests.el (python-indent-after-async-block-1,
4338         python-indent-after-async-block-2, python-indent-after-async-block-3,
4339         python-nav-beginning-of-defun-3): New tests to test indentation and
4340         navigation for the async keyword.
4342 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
4344         Partially revert previous change.
4346         This commit partially reverts 0f332848cdb2ed6d46771914a911cbca194cd51a.
4347         * lisp/rect.el (rectangle--highlight-for-redisplay): Use region face.
4348         This function is for rectangle-mark-mode, not string-rectangle.
4350 2016-06-19  Paul Eggert  <eggert@penguin.cs.ucla.edu>
4352         Say why text-quoting-style is not a user option
4354         * doc/lispref/help.texi (Keys in Documentation):
4355         * etc/NEWS: Document why text-quoting-style is not a
4356         customizable variable (Bug#23372).
4358 2016-06-19  Glenn Morris  <rgm@gnu.org>
4360         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
4361         Future-proof against non-time-values.
4363 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4365         Don't mention ~/.emacs.bmk literally in doc strings
4367         * lisp/bookmark.el (bookmark-save-flag, bookmark-load): Don't
4368         mention "~/.emacs.bmk" explicitly as the default bookmark file in
4369         the doc strings.  (Bug#23350)
4371 2016-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4373         * etc/NEWS: Explain why multicolor font display is disabled on OS X Cocoa.
4375 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4377         Port to Ubuntu 16.04 --enable-gcc-warnings
4379         * src/image.c (gif_load) [HAVE_GIF]: Fix pointer signedness problem.
4381 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4383         * etc/NEWS: Improve wording of vc-git-log-output-coding-system etc.
4385 2016-06-19  Tino Calancha  <f92capac@gmail.com>
4387         Don't kill ~/ if it's the top level directory
4389         * lisp/dired-aux.el (dired-kill-subdir): Don't kill ~/ if it's
4390         the top level directory (bug#23017).
4392 2016-06-19  Tino Calancha  <f92capac@gmail.com>  (tiny change)
4394         describe-char: fix insert char documentation
4396         * lisp/descr-text.el (describe-char):
4397         Only 'ucs-names' entries can be inserted by unicode name (Bug#23325).
4399 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4401         (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
4403         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use `substring'
4404         instead of `replace-regexp-in-string', because REV can be nil
4405         (e.g. when FILE is a directory, bug#23344), and we actually know
4406         we only need the first 4 characters.
4408 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
4410         Bump version to 25.0.93
4412         * README:
4413         * configure.ac:
4414         * msdos/sed2v2.inp: Bump Emacs version to 25.0.93.
4416 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
4418         * etc/AUTHORS: Update the AUTHORS file
4420         * admin/update_autogen: Use #!/usr/bin/env bash
4422         * admin/authors.el (authors-ignored-files): Additions.
4424 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
4426         In x_set_window_size restore do_pending_window_change calls
4428         * src/xterm.c (x_set_window_size):
4429         * src/w32term.c (x_set_window_size): Restore
4430         do_pending_window_change calls after their stupid removal on
4431         2015-08-31.
4433 2016-06-19  Ilya Zakharevich  <ilya@math.berkeley.edu>
4435         Fix Alt-modified keys on some European MS-Windows keyboards
4437         * src/w32fns.c (deliver_wm_chars): If the reported character is
4438         ASCII, AND Meta modifier is a candidate, behave as if Meta is
4439         present, i.e. fall back to the legacy code.  (Bug#23251)
4441 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4443         Document 'help-go-forward'
4445         * doc/emacs/help.texi (Help Mode): Document and index
4446         'help-go-forward'.  (Bug#23323)
4448 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4450         Revert "Allow to customize names of executables used by grep.el"
4452         This reverts commit c93ae7a1e5a94541189a8f36984014344d561ffc.
4454 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4456         Revert "Don't use 'find-program'"
4458         This reverts commit 10597c977d55cbf9304b51c3b364ce58199384a0.
4460 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4462         Revert "Use 'grep-find-program' in check-declare.el"
4464         This reverts commit 33bef6e90bfd20609d044b8a076c1570c627684a.
4466 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4468         Clarify documentation of 'dired-mark-files-containing-regexp'
4470         * doc/emacs/dired.texi (Marks vs Flags): Clarify that for files
4471         visited in buffers, 'dired-mark-files-containing-regexp' searches
4472         the buffer rather than the file on disk.  (Bug#22694)
4474         * lisp/dired.el (dired-mark-files-containing-regexp): Clarify that
4475         for files visited in buffers, 'dired-mark-files-containing-regexp'
4476         searches the buffer rather than the file on disk.  (Bug#22694)
4478 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4480         Make tmm-menubar work in correct order again
4482         * lisp/tmm.el (tmm-prompt): Don't reverse 'tmm-km-list' right at the
4483         beginning; instead, pass a reversed copy to 'tmm--completion-table'.
4484         (Bug#23309)
4485         (tmm-menubar): Fix an off-by-one error in determining the menu
4486         item when the function is called with a non-nil 'x-position'
4487         argument.
4489 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4491         Remove the Meta-CVS VC backend
4493         * lisp/obsolete/vc-mcvs.el: Remove the file (bug#20475).
4495         * lisp/vc/log-view.el (log-view-extract-comment): Remove the MCVS
4496         reference.
4498         * doc/misc/efaq-w32.texi (Version control): Same.
4500 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
4502         Fix Bug#23276
4504         * lisp/autorevert.el (auto-revert-handler): Ignore errors
4505         coming from `revert-buffer'.  (Bug#23276)
4507 2016-06-19  Reto Zimmermann  <reto@gnu.org>
4509         Sync with upstream vhdl mode v3.38.1.
4511         * lisp/progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
4512         (vhdl-mode): No longer set comment-padding.
4513         (vhdl-begin-p): Handle missing space between keyword and parenthesis.
4514         (vhdl-beginning-of-statement-1): Fix indentation for "else generate".
4515         (vhdl-template-else, vhdl-template-elsif): Support generate statement.
4516         (vhdl-re-search-forward, vhdl-re-search-backward): Save match data.
4518 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4520         Tweak configure.ac syntax in recent module patch
4522         * configure.ac: Use proper Autoconf parenthesization in
4523         recent HAVE_MODULES patch.  Although this doesn’t fix any bugs,
4524         the previous syntax was confusing.
4526 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4528         Port to GCC 5.3.1 20160406 (Red Hat 5.3.1-6)
4530         * src/indent.c (Fvertical_motion): Pacify --enable-gcc-warnings
4531         when using the April 6 Fedora patch to GCC.
4533 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
4535         Make sh-electric-here-document-mode accessible in sh-mode-hook. (Bug#3226)
4537         * lisp/progmodes/sh-script.el (sh-mode-hook): Add
4538         sh-electric-here-document-mode as an option and the default value.
4539         (sh-mode): Mention sh-mode-hook in docstring.
4540         (sh-mode): Remove sh-electric-here-document-mode invocation.
4542 2016-06-19  Glenn Morris  <rgm@gnu.org>
4544         * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from previous.
4546 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
4548         Make use of rectangle-preview custom variable.
4550         lisp/rect.el (rectangle--string-preview): Only create a preview if
4551         rectangle-preview is non-nil (Bug#23248).
4553 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
4555         Make use of rectangle-preview face.
4557         * lisp/rect.el (rectangle--string-preview):
4558         (rectangle--highlight-for-redisplay): Replace 'region with
4559         'rectangle-preview (Bug#23248).
4561 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4563         Use 'grep-find-program' in check-declare.el
4565         * lisp/emacs-lisp/check-declare.el (check-declare-directory): Use
4566         'grep-find-program', not 'find-program'.
4568 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4570         Improve "C-h S" for cl-lib symbols
4572         * lisp/info-look.el: Add cl.info lookup to emacs-lisp-mode related
4573         manuals.  (Bug#23289)
4575 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4577         Fix minor issues with removing left or right fringes
4579         * lisp/window.el (window-max-chars-per-line): Account for
4580         'left-fringe-width' and 'right-fringe-width' variables.
4582         * doc/lispref/windows.texi (Window Sizes): Document the effect on
4583         window text width when setting the width of one or both fringes to
4584         zero.
4585         * doc/emacs/display.texi (Fringes): Document the effect on window
4586         text width when setting the width of one or both fringes to zero.
4587         (Bug#22891)
4589 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4591         Speed up redisplay in ansi-term mode
4593         * lisp/term.el (ansi-term): Force L2R 'bidi-paragraph-direction'.
4594         (Bug#20611)
4596 2016-06-19  Philipp Stephani  <phst@google.com>
4598         Simplify 8-bit character handling by terminal for 'raw-text'
4600         * lisp/international/mule.el (set-keyboard-coding-system): Treat
4601         'raw-text' as another coding type that requires 8-bit characters.
4602         * lisp/xt-mouse.el (xterm-mouse--read-coordinate): Use 'no-conversion'
4603         instead of 'latin-1'.
4605 2016-06-19  Glenn Morris  <rgm@gnu.org>
4607         * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bug#22722)
4609 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4611         Fix w32 memory-management problem when extending buffer text
4613         * src/w32heap.c (mmap_realloc): Only attempt extending a region if
4614         the following region has the same allocation base.  Also, use the
4615         original allocation base and enlarged size to commit reserved
4616         memory, to ensure that the allocation base stays at its original
4617         value.  This fixes several hard-to-debug problems whereby part of
4618         buffer text was overwritten with binary nulls, because
4619         mmap_realloc copied only part of buffer text when extending it.
4620         See
4621         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00325.html
4622         and http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#55 for two
4623         examples of the related problems.
4625 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
4627         Fix Bug#20637.  Do not merge to master
4629         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
4630         Use `vc-backend' instead of `vc-responsible-backend'.  (Bug#20637)
4632         * test/automated/vc-tests.el (vc-test--state)
4633         (vc-test--working-revision): Deactivate now failing checks.
4635 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4637         substitute-command-keys keeps quotes’ text props
4639         Problem reported by Clément Pit--Claudel (Bug#23254).
4640         * src/doc.c: Include intervals.h.
4641         (Fsubstitute_command_keys): If the only substitutions are for
4642         quotes, copy the source string’s text properties too, since no
4643         substring lengths have changed.
4645 2016-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4647         * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping fixes.
4649 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4651         Add semantic-symref-filepattern-alist entry for lisp-interaction-mode
4653         * lisp/cedet/semantic/symref/grep.el
4654         (semantic-symref-filepattern-alist):
4655         Add entry for lisp-interaction-mode
4656         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#47)
4658 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4660         Perform xref searches without visiting unopened files
4662         * lisp/progmodes/xref.el (xref-collect-references): Instead of
4663         calling `semantic-symref-find-references-by-name', use
4664         `semantic-symref-instantiate' and `semantic-symref-perform-search'
4665         directly.  Ask for `line-and-text' results (bug#23223).
4666         (xref-collect-matches): Include the line text in the "hit"
4667         structure.
4668         (xref--convert-hits): New function, split off from
4669         `xref-collect-references' and `xref-collect-matches', to convert
4670         "hits" to xref instance list.  Create a temporary buffer here, to
4671         use it for post-processing all hit lines.
4672         (xref--collect-matches): Use a different approach for non-visited
4673         files.  Insert the line text into the temp buffer, apply the
4674         file's major mode the best we can without reading its whole
4675         contents, syntax-propertize, and search in the result.
4676         (xref--collect-matches-1): Extract, to handle the common logic
4677         between two cases.
4678         (xref--find-buffer-visiting): New function, a wrapper around
4679         `find-buffer-visiting' to amortize its cost.
4681         * lisp/cedet/semantic/symref/idutils.el
4682         (semantic-symref-idutils--line-re): New constant.
4683         (semantic-symref-parse-tool-output-one-line): Support result type
4684         `line-and-text'.
4686         * lisp/cedet/semantic/symref/grep.el
4687         (semantic-symref-grep--line-re)
4688         (semantic-symref-parse-tool-output-one-line): Same.
4690         * lisp/cedet/semantic/symref/cscope.el
4691         (semantic-symref-cscope--line-re)
4692         (semantic-symref-parse-tool-output-one-line): Same.
4694         * lisp/cedet/semantic/symref/global.el
4695         (semantic-symref-global--line-re)
4696         (semantic-symref-parse-tool-output-one-line): Same.
4698 2016-06-19  Phillip Lord  <phillip.lord@newcastle.ac.uk>
4700         Revert "Prevent bootstrap autoload backup files"
4702         This reverts commit c23c965bb9d0a4bcc1b6158833ff99aa20fd53e9.
4704 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4706         Improve time zone documentation
4708         * doc/lispref/os.texi (Time Zone Rules):
4709         New section, mostly with material moved here from other sections.
4710         * doc/emacs/cmdargs.texi (General Variables):
4711         * doc/lispref/os.texi (Time Conversion, Time Parsing):
4712         Xref new section.
4713         * etc/NEWS, etc/PROBLEMS:
4714         * lisp/org/org.el (org-timestamp-format):
4715         * src/editfns.c (Fformat_time_string, Fdecode_time)
4716         (Fencode_time, Fcurrent_time_string, Fcurrent_time_zone)
4717         (Fset_time_zone_rule):
4718         When documenting time zone rule strings, mention the TZ
4719         environment variable in preference to mentioning the
4720         sort-of-internal function set-time-zone-rule.
4722 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
4724         Prevent bootstrap autoload backup files
4726          * lisp/emacs-lisp/autoload.el (autoload-find-generated-file): Suppress
4727            backups in newly created file.
4729           (autoload-ensure-default-file): Function split into two.
4730           (autoload-ensure-file-writeable): New function from split.
4732           (Bug#23203)
4734 2016-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4736         Disable multicolor fonts on OS X since they are not supported on free systems
4738         * src/macfont.m (macfont_list): Don't use color bitmap fonts.
4740 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4742         Capitalize “Universal Time” in documentation
4744         It’s a proper noun.
4745         * lisp/vc/add-log.el (add-log-time-zone-rule): Also, fix typo by
4746         mentioning ‘format-time-string’ instead of ‘set-time-zone-rule’.
4748 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4750         Don't use 'find-program'
4752         * lisp/progmodes/project.el (project-file-completion-table): Use
4753         'grep-find-program', rather than the obsolete 'find-program'.
4755 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4757         Sync with gnulib
4759         This is for picky compilers whose stdint.h fails our C11 tests.
4760         Problem reported for clang by Philipp Stephani (Bug#23261).
4761         This incorporates:
4762         2016-04-11 stdint: port to strict C11 left shift
4763         * doc/misc/texinfo.tex, lib/stdint.in.h: Copy from gnulib.
4765 2016-06-19  Leo Liu  <sdl.web@gmail.com>
4767         Fix last change on 2016-01-02
4769         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Move
4770           `cl-errs-re' before `lisp--el-match-keyword'; don't use `prepend'
4771           which highlights `cl-errs-re' even in comments or strings.
4773 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4775         Port run-prolog EMACS to SWI-Prolog 7.2.3
4777         * lisp/progmodes/prolog.el (prolog-ensure-process):
4778         Work around incompatibility of SWI-Prolog 7.2.3 and earlier
4779         with the new way of dealing with the EMACS and INSIDE_EMACS
4780         environment variables.
4782 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4784         Avoid crashes due to unreasonably large or small text scaling
4786         * lisp/face-remap.el (text-scale-min-amount)
4787         (text-scale-max-amount): New functions.
4788         (text-scale-set, text-scale-increase): Use them to limit the text
4789         scaling to a reasonable range of values.  (Bug#23259)
4791 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4793         Improve documentation of 'with-eval-after-load'
4795         * lisp/subr.el (with-eval-after-load): Doc fix.  (Bug#23258)
4797 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4799         Improve handling of non-ASCII characters in Git log messages
4801         * lisp/vc/vc-git.el (vc-git-commits-coding-system): Now a defcustom.
4802         (vc-git-log-output-coding-system): New defcustom.
4803         (vc-git-print-log, vc-git-command, vc-git--call): Use
4804         'vc-git-log-output-coding-system' for reading stuff from Git.
4805         Don't override values of 'coding-system-for-read/write' if they
4806         are bound by caller -- this allows the user to force an encoding
4807         via "C-x RET c".
4808         (vc-git-checkin): On MS-Windows, pass the log message via a
4809         temporary file, to work around the limitations on passing
4810         non-ASCII characters via command-line arguments.  Force using the
4811         'locale-coding-system' for Git command-line arguments.  This fixes
4812         problems with non-ASCII commit log messages on MS-Windows.
4813         (Bug#23076)
4815         * etc/NEWS: Mention the new vc-git related defcustoms.
4817 2016-06-19  Philipp Stephani  <phst@google.com>
4819         Remove undefined behavior in OS X dumper.
4821         Found by Address Sanitizer.
4823         * src/unexmacosx.c (unexec_write): Use Mach virtual memory API to
4824         avoid undefined behavior when reading arbitrary memory.
4826 2016-06-19  Joakim Verona  <joakim@verona.se>
4828         Fix clipping of xwidgets
4830         * src/xwidget.c (x_draw_xwidget_glyph_string): Use window_box
4831         instead of calculating the clipping borders manually.  Suggested
4832         by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
4834 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4836         Improve Lisp-level documentation of tooltips
4838         * doc/lispref/display.texi (Tooltips): New section.  (Bug#23246)
4839         (Display): Update the chapter menu.
4840         * doc/lispref/text.texi (Special Properties): Make the "tooltip"
4841         index entry more concrete.  Change the cross-reference to point to
4842         "Tooltips" in the ELisp manual.
4843         * doc/lispref/elisp.texi (Top): Update the master menu.
4844         * doc/emacs/frames.texi (Tooltips): Include more customization
4845         variables.  Add a cross-reference to the ELisp manual.
4847 2016-06-19  Glenn Morris  <rgm@gnu.org>
4849         Faces names should not end in "-face".
4851         * lisp/rect.el (rectangle-preview): Rename from rectangle-preview-face.
4852         * lisp/vc/vc-hooks.el (vc-state-base): Rename from vc-state-base-face.
4854 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4856         * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
4858 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4860         Comint and compile no longer set EMACS
4862         This mostly restores the change that I reverted on March 23,
4863         fixing most of Bug#20202.  The only part of the change that is
4864         still reverted is the change to M-x term, where compatibility with
4865         current Bash constrains us from moving too quickly (Bug#20484).
4866         Problem reported by Phillip Lord in: http://bugs.gnu.org/20484#108
4867         * etc/NEWS: Document this.
4868         * lisp/comint.el (comint-exec-1):
4869         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
4870         * lisp/progmodes/compile.el (compilation-start):
4871         Don’t set EMACS=t in the subsidiary process.
4873 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
4875         * lisp/subr.el (read-key): Don't let the prompt linger (bug#22714)
4877 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4879         Allow to customize names of executables used by grep.el
4881         * lisp/progmodes/grep.el (grep-find-program): Renamed from
4882         'find-program', which was a variable.  All uses changed.
4883         (grep-xargs-program): Renamed from 'xargs-program', which was a
4884         variable.  All uses changed.
4885         (grep-program): Now a defcustom rather than a simple variable.
4886         (Bug#23219)
4888 2016-06-19  Alan Third  <alan@idiocy.org>
4890         Set locale encoding to UTF-8 when run from OS X GUI.
4892         * src/nsterm.m (ns_init_locale): Append .UTF-8 when setting LANG.
4894 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
4896         Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
4898         * lisp/ffap.el (ffap-guess-file-name-at-point): Ignore errors
4899         while 'ffap-guesser' runs.  (Bug#23218)
4901 2016-06-19  Marcin Borkowski  <mbork@mbork.pl>
4903         Avoid infinite loop in 'studlify-word'
4905         * lisp/play/studly.el (studlify-region): Call
4906         'forward-word-strictly' and 'backward-word-strictly' instead of
4907         'forward-word' and 'backward-word'.  (Bug#19940)
4909 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4911         Don’t recommend obsolete EMACS env var
4913         * doc/misc/efaq.texi (Escape sequences in shell output):
4914         Remove long-obsolete (and now-confusing) notes about
4915         the EMACS environment variable in Emacs 21.1 and earlier.
4916         * doc/misc/efaq.texi (^M in the shell buffer):
4917         * etc/PROBLEMS:
4918         Remove obsolescent recommendation to consult the EMACS environment
4919         variable.
4921 2016-06-19  Glenn Morris  <rgm@gnu.org>
4923         * lisp/emacs-lisp/package.el: Change from a few days ago needs seq.
4925         * lisp/emacs-lisp/seq.el: Load cl-lib, not cl-extra.
4927 2016-06-19  Leo Liu  <sdl.web@gmail.com>
4929         Fix "Beginning of buffer" error in forward-page
4931         * lisp/textmodes/page.el (forward-page): Check before move to prevent
4932           "Beginning of buffer" error.
4934 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
4936         Add a `transient' project type
4938         * lisp/progmodes/project.el (project-roots): Implement for the
4939         `transient' project type (bug#23224).
4940         (project-current): Instead of signaling an error, return a
4941         transient project instance rooted in the chosen directory.
4943 2016-06-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
4945         Revert "Backport HTTPS proxy fix"
4947         This reverts commit 2d1a6054b161bd1055d4feb11c8c5ac95543f5db.
4949         It's too late in the Emacs 25 release cycle to add things like this to
4950         Emacs 25.1.  It's border line new feature.
4952 2016-06-19  Tao Fang  <fangtao0901@gmail.com>
4954         Backport HTTPS proxy fix
4956         Cherry-picked from 3c623c26ae7d695746e05d8a2e16a67a6256b024
4958         Backport:
4960 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4962         Fix stability confusion in sort-tests
4964         Problem reported by Philipp Stephani (Bug#23205).
4965         * test/automated/sort-tests.el:
4966         (sort-tests--insert-words-sort-and-compare):
4967         Don’t assume that reversing a sorted list is the same
4968         as sorting with the reverse predicate.  This is not true
4969         for stable sorts when items compare equal.
4971 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4973         Avoid describe-key error with lambdas
4975         Problem reported by Sho Takemori (Bug#22716).
4976         * lisp/cedet/mode-local.el (describe-mode-local-overload)
4977         (xref-mode-local-overload): Use function-overload-p instead
4978         of assuming the argument is a symbol.
4980 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
4982         * lisp/emacs-lisp/package.el (package-install-selected-packages):
4984         Skip unavailable packages.
4986 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4988         Sync with gnulib
4990         This incorporates:
4991         2016-04-03 stdint: detect good enough pre-C++11 stdint.h in C++ mode
4992         2016-04-01 stddef: support configuring with g++
4993         * doc/misc/texinfo.tex, lib/stddef.in.h, m4/stdint.m4:
4994         Copy from gnulib.
4996 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4998         Fix doc for Universal Time
5000         * doc/lispref/os.texi (Time of Day, Time Conversion):
5001         Be more careful about distinguishing UTC (which is not valid for
5002         pre-1961 time stamps) and UT (which is).
5003         (Time Parsing): Remove stray obsolete paragraph about a
5004         UNIVERSAL argument for ‘format-time-string’.
5006 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
5008         Handle Bug#23186
5010         * lisp/net/tramp.el (tramp-encoding-command-switch)
5011         (tramp-encoding-command-interactive):
5012         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
5013         `tramp-encoding-shell' could be nil.  (Bug#23186)
5015 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5017         More format-time-string change fixups
5019         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-times):
5020         * lisp/org/org.el (org-timestamp-format):
5021         Fix doc to match new format-time-string behavior.
5022         * lisp/org/ox-icalendar.el (org-icalendar-convert-timestamp):
5023         Use (not (not X)) to treat non-nil values of utc arg as UTC.
5025 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5027         make-xwidget unused arg cleanup
5029         * doc/lispref/display.texi (Xwidgets): Remove stray refs.
5030         * src/xwidget.c (syms_of_xwidget): Qwebkit, not Qwebkit_osr.
5032 2016-06-19  Joakim Verona  <joakim@verona.se>
5034         Remove unused arguments from make-xwidget
5036         The arguments BEG and END were unused, and are now removed.
5038         * doc/emacs/display.texi (Xwidgets): Document the change
5039         * lisp/xwidget.el (make-xwidget, xwidget-insert)
5040         (xwidget-webkit-new-session): Reflect changed arguments
5041         * src/xwidget.c (Fmake_xwidget, syms_of_xwidget): Reflect changed arguments
5043 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5045         Document incompatible changes in 'format-time-string'
5047         * etc/NEWS: Mention the incompatible change in the interpretation
5048         of the 3rd argument to 'format-time-string'.  (Bug#21943)
5050 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5052         Improve documentation of byte-code objects
5054         * doc/lispref/compile.texi (Byte-Code Objects): Document the
5055         integer format of the argument descriptor.  (Bug#23061)
5057 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5059         Adapt calls to 'format-time-string' to changes in Emacs 25
5061         * lisp/vc/pcvs-info.el (cvs-fileinfo-from-entries): Use t as the
5062         last argument to format-time-string.  (Bug#23128)
5063         * lisp/gnus/gmm-utils.el (gmm-format-time-string): Use t as the
5064         last argument to format-time-string, when the TZ argument is not a
5065         number, per the doc string.
5067 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5069         Improve vc-diff with Git backend
5071         * lisp/vc/vc-git.el (vc-git-command): Don't override
5072         coding-system-for-read/write if they are already bound.
5073         Suggested by joaotavora@gmail.com (João Távora).  (Bug#20892)
5074         (vc-git-print-log): Don't override coding-system-for-read if it's
5075         already bound.
5077 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
5079         (js--continued-expression-p): Special-case unary plus and minus
5081         * lisp/progmodes/js.el (js--continued-expression-p): Make an
5082         effort to recognize unary plus and minus, in the contexts where
5083         they make sense (https://github.com/mooz/js2-mode/issues/322).
5085 2016-06-19  Alan Mackenzie  <acm@muc.de>
5087         Prevent C++ Mode wrongly fontifying some identifiers near templates as types
5089         This fixes debbugs #7917.
5091         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): Accept 'maybe
5092         (from c-forward-type) as sufficient to record an id.  Record type id as well
5093         as ref ids.
5094         (c-forward-name): Bind c-last-identifier-range around the call to
5095         c-forward-<>-arglist to prevent it getting corrupted.  Don't automatically
5096         assume an identifier is a type when a template ">" is followed by a "(".
5097         (c-forward-type): Don't automatically assume an identifier is a type when a
5098         template ">" is followed by a "(".
5100         * lisp/progmodes/cc-fonts.el (c-font-lock-<>-arglists): Don't fontify an
5101         identifier as a type when its associated ">" is followed by a "(".
5103 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5105         Avoid crashes due to insanely large columns in tabulated-list-format
5107         * src/xdisp.c (append_stretch_glyph, produce_xwidget_glyph)
5108         (produce_image_glyph): Limit the pixel width of the produced glyph
5109         to SHRT_MAX.  (Bug#23178)
5110         (append_composite_glyph, append_glyph, append_glyphless_glyph):
5111         Add assertions to verify that the pixel width of the glyph will
5112         never overflow a 'short'.
5113         * src/term.c (append_composite_glyph): Add assertion to verify
5114         that the pixel width of the glyph will never overflow a 'short'.
5116 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
5118         Teach M-x disassemble a default argument.
5120         Adopts default argument in the same way as `describe-function'.
5121         * lisp/emacs-lisp/disass.el (disassemble): Default to function at point,
5122         if any.
5124 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5126         Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
5128         * lisp/vc/vc-annotate.el (vc-annotate): Force DOS EOL decoding on
5129         MS-Windows and MS-DOS, when processing the output of "svn annotate".
5131 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
5133         Fix OS X specific settings in tramp-tests
5135         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
5137         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
5139         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
5140         (tramp--test-utf8): Improve settings of coding systems.
5141         Do not use `tramp--test-darwin-p' anymore.  (Bug#22145)
5143 2016-06-19  Alan Mackenzie  <acm@muc.de>
5145         Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
5147         * lisp/progmodes/cc-cmds.el: (c-beginning-of-defun, c-end-of-defun): Remove
5148         superfluous invocations of c-self-bind-state-cache.
5150         * lisp/progmodes/cc-defs.el: (c-self-bind-state-cache): Copy and terminate
5151         markers correctly.
5153         * lisp/progmodes/cc-engine.el (c-record-parse-state-state): Terminate stale
5154         markers.
5156 2016-06-19  Alan Mackenzie  <acm@muc.de>
5158         Merge branch 'emacs-25' of /home/acm/emacs/emacs.git/emacs-25 into emacs-25
5160 2016-06-19  Xue Fuqiao  <xfq.free@gmail.com>
5162         * doc/lispref/text.texi (Columns): Remove a nonexistent reference.
5164         The example was removed by Chong Yidong on Mar 5, 2012.
5166 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5168         * doc/man/emacsclient.1: Document +line:column option.
5170 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5172         Fix rare problems with echo-area display and multiple frames
5174         * src/xdisp.c (redisplay_window): Bind inhibit-redisplay non-nil
5175         around the call to x_consider_frame_title, to prevent
5176         resize_mini_window from undoing echo-area display.  (Bug#23124)
5178 2016-06-19  Alan Mackenzie  <acm@muc.de>
5180         In M-%, avoid making buffer-local binding of text-property-default-nonsticky
5182         This would happen when that variable already has a buffer local binding.  Such
5183         a binding would not be seen by read-from-minibuffer.  This fixes bug #23127.
5185         * lisp/replace.el (query-replace-read-from): Move the binding of
5186         text-property-default-nonsticky to inside of a new with-current-buffer buffer
5187         form with the minibuffer as argument.
5189 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
5191         Remove prog-indentation-context
5193         * lisp/progmodes/prog-mode.el: (prog-indentation-context)
5194         (prog-first-column, prog-widen): Remove, as discussed in
5195         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
5197         * doc/lispref/text.texi (Mode-Specific Indent): Remove references
5198         to them.
5200         * etc/NEWS: Ditto.
5202         * lisp/progmodes/python.el: (prog-widen, prog-first-column):
5203         Remove the compatibility aliases and all uses.
5205         Do not merge to master.
5207 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5209         * src/font.c (QCuser_spec): Add missing colon to :user-spec.
5211 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5213         Don't start the 'midnight' timer twice
5215         * lisp/midnight.el (midnight-mode): Avoid starting the midnight
5216         timer twice when activating the mode the first time.  (Bug#23123)
5218 2016-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5220         * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of XFASTINT.
5222 2016-06-19  Stephen Berman  <stephen.berman@gmx.net>
5224         Fix todo-mode category movement
5226         * lisp/calendar/todo-mode.el (todo-move-category): Use moved
5227         category's existing categories sexp instead of invoking
5228         todo-update-categories-sexp in file moved to, in order to take
5229         archived items into account.  If the moved category has archived
5230         items, handle the source archive buffer properly.  Remove
5231         superfluous code.
5233 2016-06-19  Glenn Morris  <rgm@gnu.org>
5235         * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
5237 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5239         Ignore non-nil. non-cons values of unread-command-events
5241         * src/keyboard.c (requeued_events_pending_p, read_char)
5242         (Finput_pending_p): Use CONSP instead of !NILP to see if there are
5243         unread command events to be processed.  (Bug#22976)
5245 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5247         Improve documentatuon of 'truncate-partial-width-windows'
5249         * src/xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>:
5250         Clarify in the doc string how the width of partial-width windows
5251         is computed for the purposes of truncation decision.  (Bug#4338)
5253         * doc/emacs/windows.texi (Split Window): Clarify how the width of
5254         windows is calculated for the purposes of truncation decision.
5255         * doc/emacs/display.texi (Line Truncation): Remove a redundant
5256         index entry.
5258 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5260         * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU style.
5262 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5264         Fix 'dired-goto-file' in Dired buffers produced by find-dired
5266         * lisp/dired.el (dired-goto-file): Try looking for the file as a
5267         relative name with leading sub-directories, before looking for the
5268         basename alone.  (Bug#23089)
5270 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
5272         Fix map-put and map-delete for alists (Bug#23105)
5274         * lisp/emacs-lisp/map.el (map-put): Do not bind the evaluated place
5275         expression to a new symbol.
5276         * test/automated/map-tests.el: Add a regression test.
5278 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5280         Minor copyedits of documentation for temporary displays
5282         * doc/emacs/windows.texi (Temporary Displays): Improve indexing.
5283         Minor changes in wording.
5284         (Window Choice, Displaying Buffers, Pop Up Window): Disambiguate
5285         index entries for 'display-buffer'.
5287         * etc/NEWS: Minor rewording of the entry about temporary displays.
5289 2016-06-19  Philipp Stephani  <phst@google.com>
5291         Add customization option for using UTF-8 coordinates in xt-mouse
5293         * lisp/xt-mouse.el (xterm-mouse-utf-8): New customization option.
5294         (xterm-mouse--read-coordinate): New function to replace
5295         `xterm-mouse--read-utf8-char'; uses UTF-8 only if enabled.
5296         (xterm-mouse--read-number-from-terminal): Adapt to new name.
5297         (xterm-mouse-tracking-enable-sequence)
5298         (xterm-mouse-tracking-disable-sequence): Replace constants with
5299         functions, mark constants as obsolete.
5300         (xterm-mouse--tracking-sequence): New helper function.
5301         (turn-on-xterm-mouse-tracking-on-terminal): Use new functions;
5302         enable UTF-8 only if customization option says so; store UTF-8
5303         flag in terminal parameter.  (Bug#23009)
5305         * test/automated/xt-mouse-tests.el: Add tests for xt-mouse.el.
5307 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5309         Minor doc string fixes in replace.el
5311         * lisp/replace.el (query-replace, query-replace-regexp)
5312         (query-replace-regexp-eval, map-query-replace-regexp)
5313         (replace-string, replace-regexp): Clarify in doc strings that
5314         these commands operate from point to the end of the buffer's
5315         accessible portion.  (Bug#23067)
5317 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5319         Fix scrolling upwards with 'xwidget-webkit-browse-url'
5321         * src/xwidget.c (Fxwidget_set_adjustment): Use CHECK_NUMBER instead
5322         of CHECK_NATNUM.  Suggested by Shayan Pirani <shayanpirani@gmail.com>.
5323         (Bug#22918)
5325 2016-06-19  K. Handa  <handa@gnu.org>
5327         Fix display of Indic scripts
5329         * src/ftfont.c (ftfont_shape_by_flt): For combining characters out
5330         of the range U+300...U+36F, use the "combining" FLT only with
5331         non-OTF fonts.
5333 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5335         Fix splash screen display at startup
5337         * src/frame.c (DEFAULT_ROWS): Enlarge to 36, so that the initial
5338         window displayed by "emacs -q" has enough space to show the whole
5339         text even if it includes 2 lines talking about recovering crashes
5340         sessions.  (Bug#23074)
5342         * lisp/startup.el (use-fancy-splash-screens-p): Fix off-by-one
5343         error when computing the window-height from frame-height.
5345         * etc/NEWS: Mention the change.
5347 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
5349         Describe temporary displays in Emacs manual
5351         * doc/emacs/emacs.texi (Temporary Displays): New subsubsection.
5352         * doc/emacs/windows.texi (Window Choice): Minor fixes.
5353         (Temporary Displays): New subsubsection describing display of
5354         temporary buffers and `temp-buffer-resize-mode'.
5356 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5358         Avoid stray As next to IDLW icons
5360         * lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere):
5361         Use "" for empty labels, not "a", as the latter now displays stray
5362         "A"s (Bug#18997).
5364 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5366         Avoid GTK 3 crash with icons and masks
5368         Problem reported by Mosè Giordano (Bug#18997).
5369         * src/gtkutil.c (xg_get_pixbuf_from_pixmap): Remove.
5370         (xg_get_pixbuf_from_pix_and_mask): Do not use
5371         xg_get_pixbuf_from_pixmap, as it is poorly documented.  Instead,
5372         invoke XGetPixel directly.  This is slow but speed is not
5373         important here.  Also, fail for unusual situations (not TrueColor,
5374         or images that are not 8 bits per sample) instead of displaying
5375         junk or crashing.
5377 2016-06-19  Juri Linkov  <juri@linkov.net>
5379         * lisp/minibuffer.el (minibuffer-completion-help): Use fit-window-to-buffer
5381         instead of shrink-window-if-larger-than-buffer.  (Bug#23092)
5383 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5385         Define make_save_ptr_ptr unconditionally
5387         * src/alloc.c (make_save_ptr_ptr): Remove the !(defined
5388         USE_X_TOOLKIT || defined USE_GTK) conditional.  Reported by
5389         Philipp Stephani <phst@google.com>.  (Bug#23101)
5391 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5393         Preserve current buffer when popping up TTY menus
5395         * src/term.c (tty_menu_show): Be sure to save and restore the
5396         current buffer around TTY menu pop-ups.  (Bug#23101)
5398 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5400         Improve font selection by family on MS-Windows
5402         * src/w32font.c (w32font_list_internal): Allow 'ascii-0' charset,
5403         in addition to 'iso10646-1', 'unicode-bmp', and 'unicode-sip'.
5404         This avoids rejecting many font families whose members are shown
5405         by 'font-family-list', in particular 'courier' requested by
5406         info.el.  Without this change, many values of ':family' attribute
5407         of a face have no effect on MS-Windows, because they are rejected
5408         due to bogus mismatch of the charset.
5410 2016-06-19  Paul Eggert  <eggert@penguin.cs.ucla.edu>
5412         Comint, term, and compile now set EMACS
5414         This fixes directory tracking in ansi-term, at the expense of
5415         breaking some usages of 'configure'.  Setting EMACS is meant to be
5416         a somewhat temporary measure, until Bash 4.4 comes out and is
5417         common.  (Bug#20484).
5418         * etc/NEWS: Document this.
5419         * lisp/comint.el (comint-exec-1):
5420         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
5421         * lisp/progmodes/compile.el (compilation-start):
5422         * lisp/term.el (term-exec-1):
5423         Go back to setting the EMACS environment variable, for backward
5424         compatibility to Bash 4.3 and earlier.
5426 2016-06-19  Paul Eggert  <eggert@penguin.cs.ucla.edu>
5428         Ignore more merges when generating ChangeLog
5430         * build-aux/gitlog-to-emacslog: Ignore all merges from gnu.org,
5431         not merely those from master and emacs-NN.  The ChangeLog entries
5432         they generate are not that useful.
5434 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5436         Sync with gnulib
5438         This incorporates:
5439         2016-03-22 gitlog-to-changelog: suppress ignored chatter
5440         2016-03-21 sys_select: port to new Cygwin
5441         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
5442         * lib/sys_select.in.h: Copy from gnulib.
5444 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5446         Resurrect GNUS-NEWS autogeneration
5448         * doc/misc/gnus-coding.texi (Gnus Maintenance Guide): Update
5449         GNUS-NEWS section to match current file locations and procedure.
5450         * etc/GNUS-NEWS: Regenerate by using new procedure.
5451         * lisp/Makefile.in (update-gnus-news): New rule, containing a
5452         procedure for building GNUS-NEWS.  The old procedure got lost
5453         somehow when Gnus was merged into Emacs.
5455 2016-06-19  Anders Lindgren  <andlind@gmail.com>
5457         Make `toggle-frame-maximized' respect the dock on OS X (bug#22988).
5459         * src/nsterm.m (ns_screen_margins): New function.
5460         (ns_screen_margins_ignoring_hidden_dock): New function.
5461         (ns_menu_bar_height): Reimplement in terms of `ns_screen_margins'.
5462         ([EmacsWindow zoom:]): Take all screen margins (except those
5463         originating from a hidden dock) into account.
5465 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5467         Fix bug in displaying header line with a box face
5469         * src/xdisp.c (get_next_display_element): Handle the case when a
5470         display string acquires the box face from an underlying string,
5471         not from the buffer.  (Bug#23091)
5473 2016-06-19  Kaushal Modi  <kaushal.modi@gmail.com>
5475         Fix an Isearch var to be a string (Bug#23038)
5477         * lisp/isearch.el (isearch--describe-regexp-mode): The `description' var
5478           needs to always be a string.  Add the missing default case for the
5479           cond form that ensures that.
5481         Before this bug fix, for the events when `regexp-function' and
5482         `search-default-mode' both were nil, `description' also stayed nil.  So
5483         when `space-before' was non-nil, the "non-string" `description'
5484         (with a value of nil) got passed as an argument to
5485         `replace-regexp-in-string' (where a string was expected).  That caused
5486         the error described in Bug#23038.
5488 2016-06-19  Leo Liu  <sdl.web@gmail.com>
5490         Fix (args-out-of-range 1) error in cursor-sensor--detect
5492         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
5493           hard-code (point-min) as 1 which fails in narrowed buffers.
5495 2016-06-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5497         Render empty <ul><li><ul> correctly
5499         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
5500         correctly (bug#22964).
5501         (cherry picked from commit 4f6ea3988b66cf132c67fd0cc26d12eb9a300ba1)
5503         Backport:
5505 2016-06-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5507         Ignore invalid base64 encoded embedded images
5509         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
5510         encoded embedded images (bug#22928).
5511         (cherry picked from commit f2da80d0e1ccd121c4891e869a45aeb9c6b1795d)
5513         Backport:
5515 2016-06-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5517         Fix <p> and <div> newlines with or without <li> in shr
5519         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
5520         a <li>, if we are, and don't insert newlines there.
5521         (shr-ensure-paragraph): When mixing newlines and paragraph
5522         ensurements, don't insert too many blank lines.
5523         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
5524         new line.
5525         (cherry picked from commit 292921facaff2f02ac4e8602c1f7ecbdcfe7ef45)
5527         Backport:
5529 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5531         Avoid errors in 'newline'
5533         * lisp/simple.el (newline): Don't barf if invoked with
5534         non-positive argument in the middle of a line.  (Bug#22490)
5536 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
5538         Fix Bug#23032
5540         * doc/misc/eshell.texi (Arguments): Mention the pipe symbol in
5541         remote file names.  (Bug#23032)
5543 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5545         Adjudicate review comments in abbrevs.texi
5547         * doc/lispref/abbrevs.texi (Abbrev Files, Abbrev Expansion):
5548         * doc/emacs/abbrevs.texi (Dabbrev Customization): State the
5549         default values of variables.  Suggested by Steve Byrne
5550         <sbb@penguinis.org>.  (Bug#23016)
5552         * admin/release-process (Check manuals): Mark files reviewed by
5553         Steve Byrne.
5555 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
5557         Fixup the "normal" matcher; highlight global var symbols, too
5559         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight
5560         operator name symbols with the "normal" matcher (it actually
5561         needed updating).  Highlight global variable symbols, too.
5563 2016-06-19  Marcin Borkowski  <mbork@mbork.pl>
5565         Honor prefix arg in doc-view-next-line-or-next-page
5567         * lisp/doc-view.el (doc-view-next-line-or-next-page): Take the
5568         prefix argument into consideration when continuous scrolling is
5569         not in effect (i.e., by default) (bug#19559).
5571 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5573         Port to strict C99 offsetof
5575         * src/bidi.c (bidi_copy_it):
5576         * src/lisp.h (CHAR_TABLE_EXTRA_SLOTS):
5577         Use only a single identifier as the second argument of offsetof.
5578         Found by using clang -pedantic.
5580 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5582         Port to GTK with strict C11 compiler
5584         * src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
5585         Cast from function type to void * where the C standard requires this.
5586         This works around a problem in the prototypes for
5587         g_signal_handler_find and g_signal_handlers_block_by_func, which
5588         use gpointer instead of GCallback.  Found by using gcc -pedantic.
5590 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5592         Port to GTK with strict C99 compiler
5594         * src/emacsgtkfixed.c: Use workaround for GNOME bug 683906 only
5595         in glib 2.35.6 and earlier, since the bug is fixed in 2.35.7.
5596         * src/emacsgtkfixed.c (EmacsFixedPrivate):
5597         * src/emacsgtkfixed.h (EmacsFixedClass):
5598         Remove duplicate typedef, which strict C99 does not allow (Bug#23003).
5600 2016-06-19  Anders Lindgren  <andlind@gmail.com>
5602         Avoid screen artifacts with new OS X visible bell after scrolling
5604         * src/nsterm.m (EmacsBell): Save NSView when displaying the
5605         visible bell and set `needsDisplay' when removed.
5606         (hide_bell): Trace.
5607         (ns_copy_bits): Trace.
5609 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
5611         Suppress some Tramp tests for OSX, do not merge with master
5613         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
5614         (tramp--test-utf8): Use it.  (Bug#22145)
5616 2016-06-19  Glenn Morris  <rgm@gnu.org>
5618         * lisp/progmodes/xref.el (xref-buffer-name, xref--window):
5619         Move definitions before use.
5621         * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
5623         * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
5625 2016-06-19  Glenn Morris  <rgm@gnu.org>
5627         Address compilation warnings due to 2016-01-03 mml refactoring.
5629         * lisp/gnus/mml-sec.el (password-cache, mm-encode): Require.
5630         (message-options-get): Autoload.
5631         (message-options-set): Declare.
5632         (mml-secure-cache-passphrase, mml-secure-passphrase-cache-expiry):
5633         Simplify default value.
5634         * lisp/gnus/mml-smime.el (message-options-set): Remove declaration.
5635         * lisp/gnus/mml1991.el, lisp/gnus/mml2015.el:
5636         No longer a need for password-cache.
5638 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
5640         * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp in strings
5642         (bug#22960).
5644 2016-06-19  Glenn Morris  <rgm@gnu.org>
5646         * lisp/dired-x.el (dired-omit-here-always): Correct error message
5647         for 2016-01-25 change.
5649         * lisp/dired-x.el (dired-omit-here-always): Replace undefined function
5650         removed 2016-01-30.
5652         * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
5654 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5656         Avoid segfaults due to frame image cache being absent
5658         * src/image.c (cache_image): If the frame doesn't have an image
5659         cache, create it.  (Bug#23028)
5661 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5663         Improve documentation of glyphless-character display
5665         * doc/emacs/display.texi (Text Display): Document and index the
5666         'glyphless-char' face.
5668 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
5670         Support safe navigation operator in non-SMIE indentation code
5672         * lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
5673         Support safe navigation operator in non-SMIE indentation code.
5674         Cherry-picked from
5675         https://github.com/ruby/ruby/commit/68e16ddd7961b86e5013e62ae2954e88638de058.
5677 2016-06-19  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5679         Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
5681         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
5682         assume xsd:base64Binary values are UTF-8 strings.
5683         (soap-decode-xs-basic-type): Likewise.
5684         (soap-invoke): Document xsd:base64Binary handling.
5686 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
5688         Fix Ruby's operator precedence
5690         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
5691         Rearrange the smie-precs->prec2 form.
5693 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
5695         (ruby-interpolation-inside-another-interpolation): New failing test
5697         * test/automated/ruby-mode-tests.el
5698         (ruby-interpolation-inside-another-interpolation):
5699         New failing test.
5701 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5703         Port to clang 3.7.0 on x86-64
5705         * configure.ac: Use AS_IF so that gl_WARN_ADD’s prerequisites are
5706         not done conditionally.  This helps clang, which needs
5707         -Wunknown-warning-option later when configured with warnings.
5708         * src/editfns.c (invalid_time): Now _Noreturn, since clang isn’t
5709         smart enough to figure this out on its own if warnings are enabled.
5710         (lisp_time_struct): Redo for clarity, and to pacify clang.
5711         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Don’t use
5712         uninitialized locals.  This avoids undefined behavior and pacifies
5713         clang.
5715 2016-06-19  Glenn Morris  <rgm@gnu.org>
5717         * test/automated/package-test.el (package-test-signed): Tweak skip
5718         condition, for hydra.
5720 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5722         Sync with gnulib
5724         This incorporates:
5725         2016-03-15 time_rz: port to clang -Wunused-const-variable
5726         2016-03-15 select: port more to Intel 2016.1.150 compiler
5727         * lib/sys_select.in.h, lib/time_rz.c: Copy from gnulib.
5729 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5731         Fix startup of "emacs -nw" on systems that CANNOT_DUMP
5733         * src/xdisp.c (syms_of_xdisp) <resize-mini-windows>: Initialize to
5734         nil.
5736         * lisp/loadup.el <resize-mini-windows>: Set to 'grow-only' after
5737         loading window.el.  (Bug#22975)
5739 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
5741         Do not tokenize a comment before continuation as ';'
5743         * lisp/progmodes/ruby-mode.el (ruby-smie--implicit-semi-p):
5744         Account for a comment right after point.
5746 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
5748         Don't misindent arguments of a method call inside continuation
5750         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
5751         Use smie-indent-virtual instead of smie-rule-parent (bug#23015).
5752         Simplify the traversal loop.
5754 2016-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
5756         * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_echo_area
5758         (read_key_sequence): Test it here, as before.
5759         (bug#22825).
5761 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5763         ASCII-only etc/NEWS etc.
5765         * etc/NEWS, nextstep/README: Revert the recently-added curved
5766         quotes, and stick to ASCII.  This typically involves replacing
5767         curved with straight quotes.  Since etc/NEWS is viewed so often by
5768         UTF-8-ignorant tools, rewrite its non-ASCII text to spell out
5769         Unicode, e.g., replace ‘‒’ with ‘U+2012 (FIGURE DASH)’.
5771 2016-06-19  Alan Mackenzie  <acm@muc.de>
5773         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
5775         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
5777         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
5778         rather than just using the cache variable c-state-cache.
5779         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
5780         to c-parse-state from other uses of the parse state cache.
5782         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
5783         c-self-bind-state-cache around the processing, replacing flawed bindings of
5784         c-state-cache.
5786 2016-06-19  Alan Mackenzie  <acm@muc.de>
5788         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
5790         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
5792         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
5793         rather than just using the cache variable c-state-cache.
5794         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
5795         to c-parse-state from other uses of the parse state cache.
5797         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
5798         c-self-bind-state-cache around the processing, replacing flawed bindings of
5799         c-state-cache.
5801 2016-06-19  Kaushal Modi  <kaushal.modi@gmail.com>
5803         Fix Isearch prompt when invoked with an argument
5805         * lisp/isearch.el (isearch--describe-regexp-mode): With
5806         `search-default-mode' set to nil, if user does C-u C-s, the minibuffer
5807         now displays "Regexp I-search: " again.  But if the user has set
5808         `search-default-mode' to t, and then does C-s, the minibuffer now
5809         displays "I-search: " because the default search mode is now regexp
5810         mode.  Comments have been added to explain the priority of conditions
5811         in the `cond' form.  (Bug#22991)
5813 2016-06-19  Cesar Quiroz  <cesar.quiroz@gmail.com>  (tiny change)
5815         Fix a typo in the Emacs manual
5817         * doc/emacs/maintaining.texi (VC Directory Commands): Fix a typo
5818         in a command name.
5820 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5822         Curved quotes in etc/NEWS etc.
5824         * etc/NEWS, nextstep/README: Prefer curved quotes in the
5825         recently-changed text documentation.  See:
5826         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00860.html
5828 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5830         Fix some single quotes in documentation
5832         * doc/emacs/anti.texi (Antinews): Avoid confusion in info and PDF
5833         when documenting quoting styles.
5834         * etc/NEWS, nextstep/README: In these plain text files, quote
5835         'like this' consistently, rather than also (sometimes) ‘like this’
5836         or (more often) `like this'.
5838 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
5840         Make lisp-completion-at-point's argument optional
5842         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point): Make
5843         the argument optional, like it was before the rename.
5845 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
5847         Tweak the left precedence of '=>'
5849         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Tweak the left
5850         precedence of '=>', to improve indentation and sexp navigation.
5852 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
5854         Indent '.' relative to the first sibling expression
5856         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
5857         Indent '.' relative to the first sibling expression, instead of the
5858         parent token (bug#17213).
5860 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
5862         Make '.' associative, for easier sexp navigation
5864         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
5865         Make '.' associative, for easier sexp navigation.
5867 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
5869         Revert "Simplify "Visit New File" to "New File""
5871         This reverts commit d457fd9dc782465e1547f74021390c9d5951d6af.
5873 2016-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
5875         Simplify "Visit New File" to "New File"
5877         * doc/emacs/files.texi, lisp/menu-bar.el (menu-bar-file-menu),
5878           lisp/startup.el(normal-mouse-start-screen,
5879           normal-no-mouse-startup-screen): Change label "Visit New File" to "New
5880           File".
5882 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5884         Update Unicode notes for importing a new Unicode version
5886         * admin/notes/unicode: Mention the need to update otf-script-alist
5887         in fontset.el when importing data files from a new Unicode
5888         version.
5890 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5892         Import new data files from Unicode 9.0.0beta
5894         * admin/unidata/UnicodeData.txt:
5895         * admin/unidata/Blocks.txt:
5896         * admin/unidata/BidiMirroring.txt:
5897         * admin/unidata/BidiBrackets.txt: Update from Unicode 9.0.0beta.
5898         * admin/unidata/unidata-gen.el (unidata-gen-files): Bind
5899         'coding-system-for-read' to 'utf-8, as various Unicode data files
5900         now actually use non-ASCII characters.
5901         (unidata-setup-list, unidata-get-name): Support the new Tangut
5902         Ideographs block.
5904         * lisp/international/characters.el (standard-case-table): Add new
5905         characters from Unicode 9.0.0.
5906         (standard-category-table): Add Arabic block u+08A0..u+08FF.  Add
5907         Cyrillic Extended-C block.
5908         (char-width-table): Update ranges per Unicode 9.0.0.
5909         * lisp/international/fontset.el (script-representative-chars): Add
5910         new scripts defined by Unicode 9.0.0.
5911         (otf-script-alist): Add new OTF script tags.
5912         * lisp/international/mule-cmds.el (ucs-names): Update ranges per
5913         Unicode 9.0.0 additions.
5915 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5917         Avoid errors in forms-mode when default major mode is text
5919         * lisp/forms.el (forms-mode): Bind
5920         change-major-mode-with-file-name to nil when calling
5921         set-visited-file-name.  (Bug#22982)
5923 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5925         Avoid crashes at startup on systems that CANNOT_DUMP
5927         * src/xdisp.c (syms_of_xdisp) <redisplay--inhibit-bidi>: New
5928         boolean variable.
5929         (init_iterator, reseat_to_string)
5930         (Fcurrent_bidi_paragraph_direction)
5931         (Fbidi_find_overridden_directionality): Use
5932         redisplay--inhibit-bidi instead of purify-flag, to determine when
5933         it's safe to reorder bidirectional text.
5935         * lisp/loadup.el (redisplay--inhibit-bidi): Set to t at the
5936         beginning of the file.  Reset to nil when charprop.el is
5937         successfully loaded, or when we are going to dump, whichever
5938         happens last.  (Bug#22975)
5940 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5942         Fix documentation of seq.el functions
5944         * doc/lispref/sequences.texi (Sequence Functions): Fix typos.  Add
5945         cross-references.  Fix formatting.  (Bug#22992)
5947 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
5949         Support Ruby 2.3.0's safe navigation operator
5951         * lisp/progmodes/ruby-mode.el (ruby-smie--forward-token)
5952         (ruby-smie--backward-token): Tokenize '&.' as '.'.
5953         (ruby-smie--implicit-semi-p): Check for possible '&' before '.'.
5955         * test/indent/ruby.rb: Add an example using safe navigation
5956         operator.  Fix a syntax error in existing example.
5958 2016-06-19  John Wiegley  <johnw@newartisans.com>
5960         Update Emacs manual section related to character folding
5962         * doc/emacs/search.texi: Character folding is not on by default.
5964 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
5966         Update admin/notes/unicode
5968         * admin/notes/unicode: Update the list of files from the UCD we
5969         are using.  Mention the possible need to change 'ucs-names' when
5970         importing a new version of the Unicode Standard.
5972 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
5974         Add symref-filepattern entries for c?perl-mode
5976         * lisp/cedet/semantic/symref/grep.el
5977         (semantic-symref-filepattern-alist): Add entries for perl-mode and
5978         cperl-mode.
5980 2016-06-19  Ken Raeburn  <raeburn@raeburn.org>
5982         Don't use XRANDR 1.3 extensions if the server doesn't support them.
5984         * src/xterm.h (struct x_display_info): Add fields to save XRANDR
5985         version number.
5986         * src/xfns.c (x_get_monitor_attributes): Save the version numbers
5987         after querying the X server.
5988         (x_get_monitor_attributes_xrandr): Don't use XRRGetOutputPrimary or
5989         XRRGetScreenResourcesCurrent if the server doesn't support at least
5990         RANDR version 1.3.  Conditionalize the code blocks on compiling
5991         against library version 1.3 or better, rather than feature tests for
5992         each function.
5993         * configure.ac: Stop testing for those two functions.
5995 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5997         Sync with gnulib
5999         This incorporates:
6000         2016-03-08 intprops: make .h file license match module
6001         2016-03-08 acl: fix missing return on Cygwin
6002         2016-03-05 extern-inline: port to PGI CC
6003         * doc/misc/texinfo.tex, lib/intprops.h, lib/set-permissions.c:
6004         * m4/extern-inline.m4:
6005         Copy from gnulib.
6007 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
6009         Rework C source files to avoid ^(
6011         Work around Bug#22884 by rewording comments and strings to avoid ‘(’
6012         at the start of a line unless it starts a function.  This change
6013         is a short-term hack; in the longer run we plan to fix cc-mode’s
6014         performance for C files that have ‘(’ at the start of a line in a
6015         comment or string.
6017 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
6019         By default, etags produces unqualified Perl tag names
6021         * lib-src/etags.c (Perl_functions): Produce unqualified names,
6022         unless -Q was specified.
6023         (print_help): Update the description of -Q.
6025         * doc/man/etags.1: Update the documentation of -Q.
6027         * test/etags/ETAGS.good_1:
6028         * test/etags/ETAGS.good_2:
6029         * test/etags/ETAGS.good_3:
6030         * test/etags/ETAGS.good_4:
6031         * test/etags/ETAGS.good_5:
6032         * test/etags/CTAGS.good: Adapt the expected test results to the
6033         changed Perl functionality.
6035 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
6037         Indent methods with keyword names correctly
6039         * lisp/progmodes/ruby-mode.el (ruby-smie--at-dot-call):
6040         Rename to ruby-smie--before-method-name.  Now also check if we're
6041         after a 'def' keyword.  Update both callers.
6043 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
6045         Propertize character literals and special global variables differently
6047         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Propertize
6048         character literals and global variables with special names with
6049         prefix and symbol syntax classes, for SMIE to tokenize them
6050         together automatically.
6051         (ruby-font-lock-keywords): Fix an old regression in highlighting
6052         character literals.
6054 2016-06-19  John Wiegley  <johnw@newartisans.com>
6056         Change how /etc/NEWS presents character folding
6058         * NEWS: Note that character folding is no longer the default.
6060 2016-06-19  John Wiegley  <johnw@newartisans.com>
6062         Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding off by default""
6064         This reverts commit a91b4b51ddf2575d821adb8b84fdf32cff83886e.
6066 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
6068         Properly handle lambda as read function (bug 22961)
6070         * src/lread.c (readchar): Be more strict about checking for
6071         string in cons for read_vector.
6072         (unreadchar): Likewise.
6074 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
6076         Propertize operator symbol names with symbol syntax class
6078         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
6079         Do it here.
6080         (ruby-font-lock-keywords): Instead of handling them here.  Leave
6081         highlighting them to the "normal" matcher, because now we can.
6082         (ruby-smie--forward-token, ruby-smie--backward-token):
6083         Likewise, don't special-case operator symbols anymore.
6084         (ruby-smie--args-separator-p): Simplify the regexp, match operator
6085         names with \s_.
6086         (ruby-smie--implicit-semi-p): Handle the special cases of ? and =
6087         at EOL the same way: check if the character has been assigned the
6088         symbol syntax class by syntax-propertize.
6090 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
6092         Stop recognizing :#{} as symbol in ruby-mode
6094         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Remove
6095         the weird part that recognized colon followed by interpolation
6096         construct without quotes (e.g. ':#{abc}') as symbol, which is just a
6097         syntax error in any modern version of Ruby.  Fix nearby bug reference.
6099 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
6101         Allow using the left shift operator without spaces on both sides
6103         * lisp/progmodes/ruby-mode.el (ruby-singleton-class-p): Rename to
6104         ruby-verify-heredoc, reverse the meaning of the return value, and
6105         short-circuit if preceded by a symbol not separated by whitespace.
6107         * test/automated/ruby-mode-tests.el (ruby-no-heredoc-left-shift)
6108         (ruby-no-heredoc-class-self): New tests.
6110 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
6112         Properly handle unquoting in wdired (bug 22938)
6114         The recorded old names are not quoted, don't unquote them.
6116         * lisp/wdired.el (wdired-normalize-filename): Add argument
6117         unquotep, only unquote if non-nil.
6118         (wdired-get-filename): Don't unquote the old file name.
6119         (wdired-get-previous-link): Always unquote.
6121 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
6123         Allow splat operator before percent literal
6125         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
6126         Allow splat operator before percent literal.
6128 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
6130         Don't apply the return value of goto-char as syntax class
6132         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Don't
6133         apply the return value of goto-char as syntax class.
6135 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
6137         Guard against nested percent literals
6139         * lisp/progmodes/ruby-mode.el
6140         (ruby-syntax-propertize-percent-literal):
6141         Don't check the syntax status.
6142         (ruby-syntax-propertize): Check it here.  And also guard against
6143         being in a larger percent literal.
6145         * test/automated/ruby-mode-tests.el
6146         (ruby-no-nested-percent-literals): New test.
6148 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
6150         Recognize iuwu-mod after an escaped newline
6152         * lisp/progmodes/ruby-mode.el (ruby-smie--bosp): Check if the
6153         newline is escaped.
6154         (ruby-smie-rules): Indent iuwu-mod after an escaped newline
6155         correctly.
6157 2016-06-19  Andreas Schwab  <schwab@linux-m68k.org>
6159         Fix symbolic mode string conversion for s and t
6161         * lisp/files.el (file-modes-char-to-right): Fix values for ?s and
6162         ?t.
6163         (file-modes-symbolic-to-number): Default to a for ts permissions.
6165 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
6167         Update 'ucs-names' database
6169         * lisp/international/mule-cmds.el (ucs-names): Update used and
6170         unused ranges from the latest UnicodeData.txt.
6172 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
6174         Improve doc string of 'shell-command'
6176         * lisp/simple.el (shell-command): Mention that COMMAND is prompted
6177         for.  (Bug#22926)
6179 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
6181         Make the code in movemail_strftime more general
6183         * lib-src/movemail.c (movemail_strftime): Transform the format
6184         string passed by the caller instead of using a separate format
6185         string.
6187 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
6189         Speed up redisplay of binary files with long series of nulls
6191         * src/bidi.c (bidi_resolve_weak): Avoid entering a loop searching
6192         for a character needed for resolving the type of a series of BN
6193         and ET characters, as required by rule W5 of UAX#9, if the results
6194         of the resolution are known in advance, because we are at level
6195         zero, and the previous strong character was L.
6196         (bidi_resolve_neutral): Partially resurrect the optimization for a
6197         long series of control characters in an otherwise strictly L2R
6198         text.
6199         (bidi_level_of_next_char): Don't enter the loop that searches for
6200         a paragraph separator if the current character is already at base
6201         embedding level.  (Bug#22739)
6203 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
6205         Remove the highlighting support for quoting 'like this' inside Lisp docstrings
6207         Remove the highlighting support for quoting 'like this' inside
6208         Lisp docstrings.  This part of
6209         c4151ebe15479de4c2e511b068cdf9af6a4576cf seems to have been
6210         unintentional, considering substitute-command-keys gives wrong
6211         output for such usage.
6212         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
6213         (lisp-cl-font-lock-keywords-2): Do not highlight text between two
6214         straight quotes as symbol.
6216 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
6218         Restore leading space in movemail pop output
6220         * lib-src/movemail.c (movemail_strftime) [WINDOWSNT]: New function.
6221         (strftime) [WINDOWSNT]: New macro.
6222         (mbx_delimit_begin): Go back to previous version of this code,
6223         now that there’s a special-purpose WINDOWSNT implementation
6224         that should do the right thing.  That way, the output continues
6225         to use leading space rather than leading zero for day of month.
6227 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
6229         Fix bidi-paragraph-direction in Rmail view buffer
6231         * lisp/mail/rmail.el (rmail-show-message-1): Reset
6232         bidi-paragraph-direction to nil before formatting the message for
6233         display.
6235 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
6237         Don't misindent computed property generator methods
6239         * lisp/progmodes/js.el (js--looking-at-operator-p):
6240         Don't misindent computed property generator methods
6241         (https://github.com/mooz/js2-mode/issues/317).
6243 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
6245         Fix mbox files produced by movemail on MS-Windows
6247         * lib-src/movemail.c (mbx_delimit_begin): Use portable strftime
6248         format specifiers, as at least the MS-Windows version of strftime
6249         doesn't support %e and %T.
6251 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
6253         doc string file descriptor exhaustion fix
6255         * src/doc.c (get_doc_string): Move newly-added check to a better
6256         location (Bug#22814).
6258 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
6260         Fix Bug#22814
6262         * src/doc.c (get_doc_string): Raise an error in case too many
6263         files are open.  (Bug#22814)
6265 2016-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
6267         Fix insertion of edited servers in the dribble file
6269         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
6270         insert explicit newlines, because they're quoted (bug#22903).
6272         Backport:
6274         (cherry picked from commit ca4e30058eba0531f38fff75f14734acffab84ea)
6276 2016-06-19  Martin Rudalics  <rudalics@gmx.at>
6278         Fix previous fix of enlarge-/shrink-window
6280         * lisp/window.el (enlarge-window, shrink-window): Consistently
6281         signal user-error instead of error.  Resize minibuffer window by
6282         delta lines instead of pixels.  When a window cannot be resized,
6283         signal an error only when this function was invoked by a command
6284         in the enlarge-/shrink-window group (this restores the behavior
6285         before the fix of bug#22723 for the non-interactive case).
6287 2016-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
6289         * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
6291 2016-06-19  Mark Oteiza  <mvoteiza@udel.edu>
6293         Complete temperature units in calc-convert-temperature
6295         * lisp/calc/calc-units.el (calc-convert-temperature): Complete with
6296         temperature units in math-standard-units.
6298 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
6300         Make sure to use case-sensitive search
6302         * lisp/progmodes/xref.el (xref-collect-references): Make sure to
6303         use case-sensitive search.
6305 2016-06-19  Ulf Jasper  <ulf.jasper@web.de>
6307         Prevent infinite loop on not-well-formed xml. (Bug#16344)
6309         * lisp/xml.el (xml-parse-tag-1): Prevent inifinite loop. (Bug#16344)
6310         * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add
6311           test cases for Bug#16344.
6313 2016-06-19  Alan Third  <alan@idiocy.org>
6315         Add the missing test case for the previous patch
6317         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
6318         any processing.
6319         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
6320         DABBREV--SUBSTITUTE-EXPANSION.
6321         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
6323 2016-06-19  Alan Third  <alan@idiocy.org>
6325         Use the correct dabbrev expansion
6327         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
6328         any processing.
6329         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
6330         DABBREV--SUBSTITUTE-EXPANSION.
6331         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
6333 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
6335         Bump version to 25.0.92
6337         * README:
6338         * configure.ac:
6339         * msdos/sed2v2.inp: Bump version to 25.0.92.
6341 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
6343         * etc/AUTHORS: Update the AUTHORS file
6345 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
6347         authors.el updates
6349         * admin/authors.el (authors-ignored-files): Addition.
6351 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
6352 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
6354         Fix Bug#22859
6356         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
6357         event in case of kqueue and file1 is nil.  (Bug#22859)
6359 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
6361         Fix reordering of bidi text in an isolate inside an override
6363         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
6364         of FSI with either LRI or RLI, as determined by the first strong
6365         directional character in the isolate.  This prevents failure to
6366         isolate when the FSI...PDI text is inside a directional override.
6367         (Bug#22786)
6369 2016-03-04  Alan Mackenzie  <acm@muc.de>
6371         Document c-guess-basic-syntax in the CC Mode manual.
6373         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
6374         pxrefs to Custom Line-Up and Other Indentation.
6375         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
6376         Syntactic Analysis.
6378 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
6380         Fix targets in test/automated/Makefile.in
6382         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
6383         empty target and target all.
6385 2016-03-04  Leo Liu  <sdl.web@gmail.com>
6387         Comment on last change to define-derived-mode
6389         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
6391 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
6393         Allow binding `url-mime-accept-string'
6395         * lisp/url/url-http.el (url-http): Allow binding
6396         `url-mime-accept-string' (bug#22855).
6398         Backport:
6400         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
6402 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
6404         Also allow setting the paragraph direction to nil
6406         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
6407         setting the paragraph direction to nil ("auto").
6409 2016-03-04  Anders Lindgren  <andlind@gmail.com>
6411         Made the new OS X visible bell more visible.
6413         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
6414           "caution" image five times, as the image in its original size
6415           was hard to see.
6417 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
6419         Use the correct background color when filling nested <divs>
6421         * lisp/net/shr.el (shr-face-background): Return the first
6422         background, because that's the one that's visible (bug#22680).
6424         Backport:
6426         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
6428 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
6430         Make <div> in <li> not insert extra newlines
6432         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
6433         extra newlines (bug#19587).
6435         Backport:
6437         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
6439 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
6441         Uncomment the next-error-function integration in xref
6443         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
6444         Uncomment the next-error-function integration
6445         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
6447 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
6449         Remove the word "valid", to avoid ambiguity
6451         * doc/emacs/maintaining.texi (Identifier Search)
6452         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
6454 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
6456         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
6458 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
6460         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
6462         * etc/NEWS:
6463         * etc/PROBLEMS: Mention this.
6465         * lisp/autorevert.el (global-auto-revert-mode): Set
6466         `auto-revert-use-notify' to nil.  (Bug#22814)
6468 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
6470         * etc/TODO: Minor quoting and grammar fixes.
6472 2016-03-04  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
6474         Fix ModelSim error parsing
6476         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
6477         ModelSim error parsing (bug#5768).
6479 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
6481         Make parse-time-string-chars faster
6483         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
6484         up the code (backport:).
6486 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
6488         Add a eww command to toggle paragraph direction
6490         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
6491         command and keystroke.
6493         * doc/misc/eww.texi (Advanced): Mention the `D' command.
6495 2016-03-04  Glenn Morris  <rgm@gnu.org>
6497         * nextstep/WISHLIST: Merge into etc/TODO and remove.
6499         * etc/TODO: Merge in items from nextstep/WISHLIST.
6500         * nextstep/README: Update for this change.
6502 2016-03-04  Andreas Schwab  <schwab@linux-m68k.org>
6504         Fix char signedness issue in bidi code
6506         * src/dispextern.h (struct bidi_t): Change type of resolved_level
6507         and isolate_level to signed char.  (Bug#22830)
6509 2016-03-04  Andreas Schwab  <schwab@linux-m68k.org>
6511         * lib-src/pop.c (socket_connection): Fix format string.
6513 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
6515         Avoid inflooping in thing-at-point-looking-at
6517         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
6518         with regular expressions whose matching doesn't move point.
6519         (Bug#22756)
6520         Describe the argument DISTANCE in the doc string.
6522 2016-03-04  Leo Liu  <sdl.web@gmail.com>
6524         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
6526 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
6528         etc/PROBLEMS: Mention problems with using file descriptors
6530         * etc/PROBLEMS: Mention problems with using file descriptors
6531         of kqueue file notification library.
6533 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>
6535         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
6537 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
6539         Remove unneeded workaround in xftfont.c
6541         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
6542         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
6543         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
6545 2016-03-04  Stefan Monnier  <monnier@iro.umontreal.ca>
6547         * lisp/saveplace.el (save-place-local-mode): New minor mode
6549         (toggle-save-place): Define as obsolete alias.
6550         (save-place--setup-hooks): New function.
6551         (save-place-mode): Use it.
6553 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
6555         Fix redisplay on a TTY after 'make-frame'
6557         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
6558         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
6560 2016-03-04  Alan Mackenzie  <acm@muc.de>
6562         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
6564         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
6565         `syntax-after' to ensure syntax-table text properties are respected.
6567 2016-03-04  Magnus Henoch  <magnus.henoch@gmail.com>
6569         Input method polish-slash should not use keyboard translation
6571         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
6572         polish-slash should not use keyboard translation (bug#19081).
6574 2016-03-04  Chris Feng  <chris.w.feng@gmail.com>
6576         Fix an assertion
6578         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
6579         implies start == 0) separately.
6581 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
6583         Fix 'toggle-save-place'
6585         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
6586         support save-place in the buffer.  Autoload the command.
6588 2016-03-04  Stefan Monnier  <monnier@iro.umontreal.ca>
6590         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
6592         * src/keyboard.c (read_key_sequence): Don't inadvertently set
6593         immediate_echo when we don't want any echo-keystrokes.
6594         (echo_keystrokes_p): Move earlier.
6596 2016-03-04  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
6598         Minor fixes in calculator.el
6600         * lisp/calculator.el (calculator-mode-map): Bind `E' for
6601         `calculator-exp'.
6602         (calculator-last-input): Fix a bug with pressing F1.
6603         (Bug#20764)
6605 2016-03-04  Anders Lindgren  <andlind@gmail.com>
6607         Update HISTORY section in readme for the NextStep interface.
6609         * nextstep/README: Update HISTORY after suggestion
6610         from former maintainer Adrian Robert.
6612 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
6614         Improve documentation of 'save-place-mode'
6616         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
6617         turning on 'save-place-mode' globally.
6619         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
6620         on the mode in all buffers.
6622 2016-03-04  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
6624         Allocate glyph matrices for the initial frame
6626         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
6628         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
6630 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
6632         Fix white space in last checkin
6634 2016-03-04  Dima Kogan  <gnuplot@dima.secretsauce.net>
6636         Make `insert-pair' always leave the cursor where documented
6638         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
6639         insert-pair states that after insertion, the point ends up
6640         after the opening character. This was not true if the pair was
6641         inserted to surround a region (bug#16949).
6643 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>
6645         etc/NEWS: Mention the new second parameter to `package-install'
6647         * etc/NEWS: Mention the new second parameter to
6648         `package-install' (bug#22784).
6650 2016-03-04  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
6652         Highlight assignments in Makefiles more correctly
6654         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
6655         Highlight assignments preceded by a TAB character correctly
6656         (bug#20787).
6659         Backport:
6661         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
6663 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
6665         Improve documentation of focus-related hooks
6667         * doc/lispref/commands.texi (Focus Events): Mention focus-related
6668         hooks.  (Bug#21728)
6670 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
6672         Further improve doc string of 'disable-point-adjustment'
6674         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
6675         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
6677 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
6679         Further adaptions in file-notify-tests.el for w32notify
6681         * test/automated/file-notify-tests.el
6682         (file-notify--test-read-event-timeout, file-notify--test-timeout):
6683         Decrease values.
6684         (file-notify-test03-autorevert)
6685         (file-notify-test04-file-validity)
6686         (file-notify-test05-dir-validity): Run tests also for w32notify.
6687         (file-notify-test08-watched-file-in-watched-dir):
6688         Adapt expected events for w32notify.
6690 2016-03-04  Jan Tatarik  <jan.tatarik@gmail.com>
6692         Don't bug out on localised dates in gnus-icalendar
6694         * lisp/gnus/gnus-icalendar.el
6695         (gnus-icalendar-event:org-timestamp): Don't bug out on
6696         localised dates.
6698 2016-03-04  Drew Adams  <drew.adams@oracle.com>
6700         (ls-lisp-insert-directory): Make -B work
6702         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
6703         (bug#20776).
6705         Backport:
6707         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
6709 2016-03-04  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
6711         Make buttons in header lines work
6713         * lisp/help-mode.el (help-button-action): `help-xref-button' in
6714         header line doesn't work (bug#21024).
6716         Backport:
6718         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
6720 2016-03-04  Christopher Wellons  <wellons@nullprogram.com>
6722         Make setf for frame-height/width work again
6724         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
6725         frame-height/width work again (bug#21979).
6727 2016-03-04  Łukasz Stelmach  <stlman@poczta.fm>
6729         Encode header strings before printing
6731         * lisp/ps-print.el (ps-generate-header-line): Encode the
6732         header strings to avoid problems with non-ASCII headers
6733         (bug#22611).
6735         Backport:
6737         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
6739 2016-03-04  Nicolas Richard  <youngfrog@members.fsf.org>
6741         (cl-union): Do not ignore :test argument when lists are equal.
6743         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
6745         * test/automated/cl-seq-tests.el: New file (bug#22729).
6747 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
6749         Add `isearch' to `basic-faces'
6751         * doc/lispref/display.texi (Basic Faces): Mention the isearch
6752         and lazy-highlight faces.
6754         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
6755         group, too (bug#22760).
6757 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
6759         Make $, : and @ "prefix characters" in ruby-mode
6761         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
6762         syntax classes of $, : and @ to "prefix character"
6763         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
6764         (ruby-syntax-propertize): Undo that specifically for colons
6765         followed by an opening paren or bracket.
6766         (ruby-font-lock-keyword-beg-re): Include colon character.
6767         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
6768         not being a symbol constituent anymore.
6770 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
6772         Make find-tag-default-bounds more strict
6774         * lisp/subr.el (find-tag-default-bounds): Delegate to
6775         bounds-of-thing-at-point (bug#22692).
6777 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
6779         Minor fixes in filenotify.el
6781         * lisp/filenotify.el (top): Require 'cl-lib.
6782         (file-notify--rm-descriptor)
6783         (file-notify--event-watched-file): Use cl-caadr.
6784         (file-notify-callback): Handle also `ignore' events from inotify.
6786 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
6788         Additional fixes for file notification
6790         * lisp/filenotify.el (top): Require 'cl when compiling.
6791         (file-notify--event-watched-file): New defun.
6792         (file-notify--rm-descriptor, file-notify-callback):
6793         Handle case of several monitors running in parallel.
6795         * test/automated/file-notify-tests.el
6796         (file-notify--test-event-test): Simplify test.
6797         (file-notify--test-with-events): Get rid of outer definition.
6798         Check also results of tests performed in callbacks.
6799         (file-notify-test02-events): No wrapping when calling
6800         `file-notify-rm-watch'.  No special checking for callback tests.
6801         (file-notify-test07-backup): Adapt expected events for gfilenotify.
6802         (file-notify-test08-watched-file-in-watched-dir): Improve.
6804 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
6806         Fix documentation of 'global-disable-point-adjustment'
6808         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
6809         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
6811 2016-03-04  Daiki Ueno  <ueno@gnu.org>
6813         Set file modes of pinentry socket for extra safety
6815         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
6816         (pinentry-start): Change the file modes of the socket file to 0700.
6817         This is just for extra safety since the parent directory is already
6818         protected with `server-ensure-safe-dir'.
6820 2016-03-04  Daiki Ueno  <ueno@gnu.org>
6822         Clarify GnuPG version compatibility chapter
6824         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
6825         description a bit clearer.
6827 2016-03-04  Daiki Ueno  <ueno@gnu.org>
6829         Revert "Change the default socket location for pinentry"
6831         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
6832         It turned out that the address is fixed in Pinentry itself.
6834 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
6836         Kill off xref--display-history
6838         Now that the core workflow keeps the xref window visible, there's
6839         less value in storing this history.  And it never was
6840         comprehensive enough to undo scrolling changes.
6841         * lisp/progmodes/xref.el (xref--display-history)
6842         (xref--save-to-history, xref-quit): Remove.
6843         (xref--show-pos-in-buf): Update accordingly.
6844         (xref--xref-buffer-mode-map): Remove xref-quit binding.
6846 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
6848         Keep the xref buffer visible until the user quits it explicitly
6850         * lisp/progmodes/xref.el (xref--pop-to-location):
6851         Rename WINDOW argument to ACTION.
6852         (xref--with-dedicated-window): New macro.
6853         (xref--show-pos-in-buf): Rename from `xref--display-position'.
6854         Add and handle new argument, SELECTED.  Use the above macro.
6855         (xref--show-location): Add SELECTED argument.
6856         (xref-show-location-at-point): Make an effort to avoid the
6857         original window when showing the location.
6858         (xref-goto-xref): Don't quit the xref window (bug#20487 and
6859         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
6860         (xref--query-replace-1): Use xref--with-dedicated-window as well.
6861         (xref--next-error-function): Call xref--show-location instead of
6862         xref--pop-to-location.
6863         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
6864         Only pass that value to xref--pop-to-location.  Pass the current
6865         selected window to xref-show-xrefs-function as the `window'
6866         property.
6867         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
6868         to DISPLAY-ACTION as well.
6870 2016-03-04  Daiki Ueno  <ueno@gnu.org>
6872         Change the default socket location for pinentry
6874         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
6875         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
6876         ~/.emacs.d/pinentry.
6877         (pinentry-start): Change the file modes of the socket file to 0700.
6878         This is just for extra safety since the parent directory is already
6879         protected with `server-ensure-safe-dir'.
6881 2016-03-04  Daiki Ueno  <ueno@gnu.org>
6883         Mention how to enable pinentry feature
6885         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
6886         * lisp/net/pinentry.el: Likewise.
6888 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
6890         Sync with gnulib
6892         This incorporates:
6893         2016-02-10 stdalign: port to older HP and IBM cc
6894         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
6896 2016-03-04  David Engster  <deng@randomsample.de>
6898         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
6900         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
6901           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
6902           not an idle hook, so it's not appropriate to call it there. It will
6903           already be called in the `semantic-idle-work-core-handler', which
6904           runs when Emacs is actually idle.
6906 2016-03-04  David Engster  <deng@randomsample.de>
6908         Restore point when writing semantic table to disk
6910         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
6911           `semantic-fetch-tags' in `save-excursion', since it might move point
6912           in current buffer. (Bug #22287)
6914 2016-03-04  Daiki Ueno  <ueno@gnu.org>
6916         Mention pinentry.el in epa manual
6918         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
6919         describing the differences between three GnuPG branches, and how
6920         to enable pinentry.el.
6921         (Caching Passphrases): Add xref to the compatibility chapter.
6923 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
6925         Fix Bug#22736
6927         * lisp/filenotify.el (file-notify-callback): Use the proper
6928         descriptor when calling the callback.  (Bug#22736)
6930         * test/automated/file-notify-tests.el
6931         (file-notify--test-event-handler): Deactivate trace.
6932         (file-notify-test08-watched-file-in-watched-dir): Bind
6933         `file-notify--test-tmpfile' temporarily in `dir-callback'.
6935 2016-03-04  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
6937         Grammar fix in doc string
6939         * lisp/custom.el (defgroup): Grammar fix in doc string.
6941 2016-03-04  Daiki Ueno  <ueno@gnu.org>
6943         Naming fix for consistency
6945         * lisp/epg-config.el (epg-find-configuration): Rename from
6946         `epg-configuration-find' to be consistent with other epg-* functions.
6947         Change all callers.
6949 2016-03-04  Daiki Ueno  <ueno@gnu.org>
6951         Prefer customized value for GnuPG executable
6953         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
6954         configuration if it is already set with custom.  (Bug#22747)
6956 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
6958         Fix memory reservation on MS-Windows
6960         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
6961         units.  This avoids leaving gaps in reserved memory regions that
6962         no one can use, since memory reservation must produce 64KB-aligned
6963         addresses.  (Bug#22526)
6965 2016-03-04  Anders Lindgren  <andlind@gmail.com>
6967         Update NextStep readme and add wish list.
6969         * nextstep/README: Rewritten from scratch. New sections on
6970         "History", "Overview of Cocoa and Objective-C", "Guidelines",
6971         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
6972         * nextstep/WISHLIST: New file containing list of issues and ideas
6973         associated with the NS port of Emacs.
6975 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
6977         Report also result in `file-notify--test-event-handler'
6979 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
6981         Improve file-notify-test08-watched-file-in-watched-dir
6983         * test/automated/file-notify-tests.el (file-notify--test-desc2):
6984         New variable.
6985         (file-notify--test-cleanup): Use it.
6986         (file-notify--test-event-handler): Enable trace.
6987         (file-notify-test08-watched-file-in-watched-dir): Tag it as
6988         :expensive-test.  Rewrite callbacks to use
6989         `file-notify--test-event-handler'.  Read events in loop.  Check
6990         `file-notify--test-results'.
6991         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
6993 2016-03-04  Stephen Berman  <stephen.berman@gmx.net>
6995         Fix todo-mode item date editing bugs
6997         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
6998         range error by making sure the value of the numerical month date
6999         component cannot be nil.  Prevent wrong type error on trying to edit
7000         day number in February by making sure numerical instead of string
7001         value of the year component is passed to todo-read-date.
7002         (todo-read-date): When using the numerical month date component make
7003         sure to use `*' for an arbitrary month instead of its numerical value.
7005 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
7007         Fix "[:upper:]" for non-ASCII characters
7009         * src/regex.c (re_match_2_internal): Support [:upper:] and
7010         [:lower:] for non-ASCII characters.  (Bug#18150)
7012 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
7014         Allow customising the article mode cursor behavior
7016         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
7018         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
7019         (gnus-article-mode): Use it.
7021 2016-03-04  Ari Roponen  <ari.roponen@gmail.com>
7023         Use pop-to-buffer-same-window in woman.el
7025         * lisp/woman.el (woman-really-find-file): Work around going to
7026         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
7027         (WoMan-find-buffer): Ditto.
7029 2016-03-04  Tassilo Horn  <tsdh@gnu.org>
7031         New filenotify test for bug#22736
7033         * test/automated/file-notify-tests.el
7034         (file-notify-test08-watched-file-in-watched-dir):
7035         (file-notify--test-desc1): New filenotify test for bug#22736
7037 2016-03-04  Marcin Borkowski  <mbork@mbork.pl>
7039         Report critical battery errors
7041         * lisp/battery.el (battery-pmset): Report critical battery
7042         errors (bug#18157).
7044 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
7046         Make eww message toggling message clearer
7048         * lisp/net/eww.el (eww-toggle-fonts): Make the message
7049         clearer.
7051 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
7053         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
7055 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
7057         Fix bugs in window resizing code
7059         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
7060         parenthesis.
7061         (shrink-window, enlarge-window): Fix bug#22723 where windows
7062         with preserved size would not get resized.  Also now signal an
7063         error when the window cannot be shrunk or enlarged as requested.
7065 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
7067         Fix decoding DOS EOL in a unibyte buffer
7069         * src/coding.c (decode_eol): Loop over bytes, not characters.
7070         (Bug#5251)
7072 2016-03-04  Alan Mackenzie  <acm@muc.de>
7074         Correct c-parse-state cache manipulation error.
7076         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
7077         comparison bound.  Amend comments.
7079 2016-03-04  Daiki Ueno  <ueno@gnu.org>
7081         Take advantage of new GnuPG version check function
7083         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
7084         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
7085         is usable.
7087 2016-03-04  Daiki Ueno  <ueno@gnu.org>
7089         Make GnuPG version check robuster
7091         We changed the default gpg program to "gpg2" from "gpg" in the commit
7092         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
7093         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
7094         series.  Check the actual version of "gpg2" at run time, and properly
7095         divert to "gpg" if necessary.
7096         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
7097         (epg-config--program-alist): New variable.
7098         (epg--configurations): New variable.
7099         (epg-configuration-find): New function.
7100         (epg-config--make-gpg-configuration): New function.
7101         (epg-config--make-gpgsm-configuration): New function.
7102         (epg-configuration): Mark as obsolete.
7103         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
7105 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
7107         Fix x-load-color-file pointer signedness
7109         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
7110         For sscanf and int *, use %d, not %u.
7111         Problem found on Ubuntu 15.10 x32, which lacks X support.
7113 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
7115         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
7117 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
7119         Follow convention for greek letter constants.
7121         * lisp/calc/calc-units.el (math-standard-units):
7122         Add "sigma" and alias σ to it.
7124 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
7126         Add Stefan-Boltzmann constant to calc units table.
7128         * lisp/calc/calc-units.el (math-standard-units):
7129         Add Stefan-Boltzmann constant.
7131 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
7133         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
7135 2016-03-04  Glenn Morris  <rgm@gnu.org>
7137         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
7139         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
7140         Prefill with relevant elements for term/xterm.
7142 2016-03-04  Tassilo Horn  <tsdh@gnu.org>
7144         Fix soffice UserInstallation-URL for Windows
7146         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
7147         UserInstallation-URL when calling soffice on Windows.
7149 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
7151         Fix display of <pre> elements
7153         * lisp/net/eww.el (eww-display-html): Remove CRLF before
7154         parsing so that <pre> elements don't render with ^M at the end
7155         of the lines.
7157 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
7159         Minor fixes in global-auto-composition-mode
7161         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
7162         Produce prettier names of globalized minor modes.
7163         * lisp/composite.el (global-auto-composition-mode): Make it a
7164         globalized mode.  (Bug#22682)
7166 2016-03-04  Alan Mackenzie  <acm@muc.de>
7168         Allow arithmetic operators inside C++ template constructs.
7170         Fixes debbugs #22486.  This corrects the previous patch with this message
7171         which was empty.
7173         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
7174         variable.
7175         (c-<>-notable-chars-re): New language variable.
7177         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
7178         c-<>-notable-chars-re in place of the former fixed string in searching for
7179         places to stop and examine.
7180         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
7181         multichar operator in place of the former c->-op-without->-cont-regexp.
7182         Add code to skip forwards over a balanced parenthesized expression.
7184 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
7186         Avoid crashes in semi-malformed 'condition-case'
7188         * src/eval.c (internal_lisp_condition_case): Treat a handler
7189         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
7191 2016-03-04  Alan Mackenzie  <acm@muc.de>
7193         Allow arithmetic operators inside C++ template constructs.
7195         Fixes debbugs #22486.
7197         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
7198         variable.
7199         (c-<>-notable-chars-re): New language variable.
7201         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
7202         c-<>-notable-chars-re in place of the former fixed string in searching for
7203         places to stop and examine.
7204         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
7205         multichar operator in place of the former c->-op-without->-cont-regexp.
7206         Add code to skip forwards over a balanced parenthesized expression.
7208 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
7210         Fix regression with 'recent-keys' and keyboard macros
7212         * src/keyboard.c (record_char): Don't record in 'recent_keys'
7213         events that come from executing keyboard macros.  (Bug#22674)
7215 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
7217         Fix wording in a doc-view.el comment
7219         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
7220         "illegal" for something that is not against the law.
7222 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
7224         CONTRIBUTE cleanups and updates
7226         * CONTRIBUTE: Mention URLs and info nodes more consistently,
7227         avoiding possibly-confusing punctuation adjacent to a URL, and
7228         giving full shell commands for 'info'.  Start with a brief but
7229         complete how-to, for people who want to get started right away.
7230         Then briefly discuss how to join the development process in the
7231         typical order.  Omit needless words.  Update some of the
7232         now-obsolete file names, info node names, and quoting styles.
7233         Better document emacs-NN branches and how they are merged.
7234         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
7235         and trunk to master.  This file still needs work.
7237 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
7239         Port USE_STACK_LISP_OBJECTS fix to Clang
7241         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
7242         Recent versions of Clang claim to be GCC 4.2.1 but do not have
7243         the GCC bug.
7245 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
7247         Port to x86 GCC 4.3.1 and earlier
7249         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
7250         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
7251         for GCC 4.3.1 and earlier.
7253 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
7255         Fix point movement under 'scroll-conservatively'
7257         * src/xdisp.c (redisplay_window): Correct a typo in computing the
7258         effective number of text lines in a window.  (Bug#22637)
7260 2016-03-04  Thomas Plass  <thomas.plass@arcor.de>
7262         Replace colon in file name (not legal on Windows)
7264         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
7265         name (not legal on Windows). [tiny change]
7267 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
7269         Fix a typo in edt.texi
7271         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
7272         "Herbert J. Skuhra" <herbert@mailbox.org>.
7274 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
7276         Make 'mmap_realloc' on MS-Windows more reliable
7278         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
7279         committing fails, return NULL.  Don't call GetLastError twice for
7280         the same API error.
7281         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
7282         before calling VirtualQuery, to avoid using garbled values if the
7283         call fails.  If committing more pages from the same block fails,
7284         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
7285         if the call to VirtualAlloc to commit more pages fails.
7286         (Bug#22526)
7288 2016-03-04  Oscar Fuentes  <ofv@wanadoo.es>
7290         Grep alias `all' shall not match parent directory
7292         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
7293           directory for `all'. Fixes bug#22577
7295 2016-03-04  Nicolas Petton  <nicolas@petton.fr>
7297         Bump version to 25.0.91
7299         * README:
7300         * configure.ac:
7301         * msdos/sed2v2.inp: Bump version to 25.0.91.
7303 2016-03-04  Nicolas Petton  <nicolas@petton.fr>
7305         * etc/AUTHORS: Update the AUTHORS file
7307 2016-03-04  Glenn Morris  <rgm@gnu.org>
7308 2016-02-15  Glenn Morris  <rgm@gnu.org>
7310         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
7312 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7314         Index tilde characters in names of backup files
7316         * doc/emacs/files.texi (Backup Names): Improve indexing.
7317         (Bug#22625)
7319 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7321         Document deprecation of hi-lock-mode's 'C-x w' bindings
7323         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
7324         "C-x w" bindings of hi-lock-mode.
7326         * etc/NEWS: Mark the deprecation entry as documented.
7328 2016-02-15  Stefan Monnier  <monnier@iro.umontreal.ca>
7330         Announce that the `C-x w' bindings are deprecated
7332 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7334         Suppress GNUstep hardening
7336         Fedora 23 normally hardens GNUstep applications, which causes
7337         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
7338         Fix this by eliding the hardening options (Bug#22518).
7339         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
7340         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
7341         (GNU_OBJC_CFLAGS): Omit options like
7342         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
7344 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7346         Fix redisplay after a large insertion
7348         * src/xdisp.c (redisplay_internal): Don't accept the results of
7349         "optimization 3" if the cursor ends up in a partially visible
7350         glyph row.  (Bug22637)
7352 2016-02-15  Andreas Schwab  <schwab@linux-m68k.org>
7354         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
7356         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
7358                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
7359                 change.  (Bug#22634)
7361 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7363         * lib-src/make-docfile.c: Include stdarg.h.
7365 2016-02-15  Alan Mackenzie  <acm@muc.de>
7367         Extend gpm-mouse-mode's doc string and doc to point out limitations.
7369         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
7370         inability to transfer text between Emacs and other programs which use GPM.
7372         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
7373         between Emacs and other progrmas which use GPM.
7375 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7377         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
7379         * lisp/isearch.el: Turn char-folding back oon by default.
7381         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
7383 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
7385         Revert "Support integer image rotation and respect EXIF rotations"
7387         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
7389         This change does not work on Fedora.
7391 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
7393         Revert "Document EXIF image rotation"
7395         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
7397         This change does not work on Fedora, for instance.
7399 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7401         Document OS X LANG default
7403         * doc/emacs/cmdargs.texi (General Variables):
7404         Document OS X Language and Region system preference.
7405         Suggested by Alan Third.
7407 2016-02-15  Alan Third  <alan@idiocy.org>
7409         Set locale when run from OS X GUI
7411         * src/emacs.c (main): Call ns_init_locale.
7412         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
7413         * src/nsterm.h: Include ns_init_locale.
7415 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7417         make-docfile cleanup for I/O, etc.
7419         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
7420         (num_globals_allocated, globals): Now static.
7421         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
7422         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
7423         Use bool for boolean.
7424         (verror): New function.
7425         (fatal, error): Use it.  API is now like printf.  All callers changed.
7426         (main): Remove err_count local that was always 0.
7427         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
7428         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
7429         Return void, not 0.
7430         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
7431         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
7432         (close_emacs_globals): Use ptrdiff_t for index, not int.
7433         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
7434         opened, rather than diagnosing but exiting with status 0.
7435         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
7436         portable now.
7438 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7440         Memory-management cleanup in make-docfile
7442         I compiled it with -fsanitize=address and fixed the leaks it detected.
7443         Also, I changed it to prefer signed to unsigned integer types,
7444         and to check for integer overflow.
7445         * lib-src/make-docfile.c:
7446         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
7447         (memory_exhausted): New function.
7448         (xmalloc, xrealloc): Use it.
7449         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
7450         (uncompiled, scan_lisp_file):
7451         Prefer signed integer types to unsigned.
7452         (xstrdup): Remove.  All uses removed.
7453         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
7454         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
7455         (add_global): Use const to pacify --enable-gcc-warnings.
7456         Make a copy here, rather than relying on strdup calls later.
7457         (add_global, write_globals, scan_c_stream):
7458         Avoid integer overflow when calculating sizes.
7459         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
7460         (scan_c_stream): Check for add_global failure.
7462 2016-02-15  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
7464         Kevin Gallagher has new email address
7466         * lisp/emulation/edt.el:
7467         * lisp/emulation/edt-lk201.el:
7468         * lisp/emulation/edt-mapper.el:
7469         * lisp/emulation/edt-pc.el:
7470         * lisp/emulation/edt-vt100.el:
7471         * etc/edt-user.el:
7472         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
7474 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7476         Improve doc strings of 'forward/backward-word-strictly'
7478         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
7479         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
7480         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
7481         Mention 'subword-mode' in the doc strings.
7483         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
7484         in the doc string.  (Bug#22560)
7486 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
7488         Describe Makefile test targets in test/README
7490         * CONTRIBUTE: Move Makefile test targets to test/README.
7492         * Makefile.in:
7493         * test/README: Describe Makefile test targets.
7495 2016-02-15  Artur Malabarba  <bruce.connor.am@gmail.com>
7497         Backport: * lisp/isearch.el: Turn char-folding off by default
7499         (search-default-mode): Set default value to nil.
7501 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
7503         Document EXIF image rotation
7505         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
7507 2016-02-15  Dima Kogan  <dima@secretsauce.net>
7509         Support integer image rotation and respect EXIF rotations
7511         * src/image.c (imagemagick_load_image): Allow integer rotations in
7512         addition to floating point rotations (bug#22591).
7513         * src/image.c (imagemagick_load_image): Images that have an
7514         orientation given in EXIF and have no explicit :rotation tag are now
7515         pre-rotated.  All information such as width/height is reported for the
7516         rotated image.
7518 2016-02-15  Matthew Carter  <m@ahungry.com>
7520         Quote table names for postgres listings (sql-mode)
7522         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
7523           unquoted table names to the completion list.
7525 2016-02-15  Juri Linkov  <juri@linkov.net>
7527         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
7529         Doc fix.
7530         (replace-search, replace-highlight): Make arg `backward' optional.
7531         (Bug#18388)
7533 2016-02-15  Juri Linkov  <juri@linkov.net>
7535         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
7537         (previous-line-or-history-element): Reset temporary-goal-column.
7538         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
7540 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7542         Suppress ACL ops if configured with --disable-acl
7544         Without this patch, some ACL operations were suppressed, but not all.
7545         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
7546         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
7548 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
7550         Mention web bugs
7552         * doc/misc/emacs-mime.texi (Display Customization):
7553         Mention web bugs in the mm-html-blocked-images section.
7555 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
7557         Make mm-html-blocked-images default to "" again
7559         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
7560         Default to "" that blocks all external images.
7562         * doc/misc/emacs-mime.texi (Display Customization):
7563         Mention that mm-html-blocked-images defaults to "".
7565 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7567         Minor alignas cleanup
7569         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
7570         over from the old way of doing things, before Bug#20862 was fixed.
7572 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7574         Add lmalloc commentary and tweak laligned
7576         * src/alloc.c (laligned): Help compiler in a tiny way by putting
7577         the more-commonly-failing disjunct first.
7579 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7581         Clarify documentation of key binding conventions
7583         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
7584         "punctuation characters" are reserved after "C-c".  (Bug#22604)
7586 2016-02-15  Oscar Fuentes  <ofv@wanadoo.es>
7588         * etc/NEWS: mention the `vc-faces' customization group
7590 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7592         Sync with gnulib
7594         This incorporates:
7595         2016-02-09 stdalign: port to clang 3.7.0
7596         2016-02-06 misc: port better to gcc -fsanitize=address
7597         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
7598         Copy from gnulib.
7600 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
7602         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
7604 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
7606         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
7608         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
7609         (mm-html-blocked-images): Default to nil.
7611         * doc/misc/emacs-mime.texi (Display Customization): Mention that
7612         mm-html-inhibit-images and mm-html-blocked-images default to nil.
7614         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
7615         mm-html-blocked-images.
7617 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7619         Increase success rate of fallback lmalloc
7621         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
7622         larger and larger sizes, to increase the probability that
7623         the allocator will return a Lisp-aligned pointer.
7625 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
7627         Make backgrounds extend to the end of the lines in shr
7629         * lisp/net/shr.el (shr-face-background): Faces can also be on
7630         the form `(:background "#fff)' (bug#22547).
7632 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
7634         Make the `R' command get the correct relative <img>s
7636         * lisp/net/eww.el (eww-readable): Preserve the base URL so
7637         that image expansions are fetched from the right place (bug#22605).
7639         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
7641         Backport:
7643 2016-02-15  Mike Kupfer  <m.kupfer@acm.org>
7645         Fix typos in emacs-mime.texi and gnus.texi
7647         * doc/misc/emacs-mime.texi (Display Customization):
7648         * doc/misc/gnus.texi (HTML): Fix typo.
7650 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
7652         * doc/misc/emacs-mime.texi (Display Customization):
7653         Doc fix for mm-html-inhibit-images.
7655 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
7657         Fix message-cross-post-followup-to group names
7659         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
7660         insert group names like "nntp+foo:zot", because those aren't valid.
7662 2016-02-15  David Edmondson  <dme@dme.org>
7664         Compare recipient and keys case-insensitively
7666         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
7667         recipient address with that from a key, do so in a case insensitive
7668         manner (bug#22603).
7670 2016-02-15  Glenn Morris  <rgm@gnu.org>
7672         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
7674 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
7676         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
7678         * doc/misc/emacs-mime.texi (Display Customization):
7679         Remove mm-inline-text-html-with-images; add documentations for
7680         mm-html-inhibit-images and mm-html-blocked-images.
7682         * lisp/gnus/gnus-art.el (gnus-article-show-images):
7683         No need to bind mm-inline-text-html-with-images.
7684         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
7685         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
7686         bind mm-html-inhibit-images and mm-html-blocked-images.
7687         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
7688         (gnus-mm-display-part, gnus-mime-display-single)
7689         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
7691         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
7692         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
7693         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
7694         mm-html-inhibit-images and mm-html-blocked-images respectively
7695         instead of gnus-inhibit-images and gnus-blocked-images.
7697         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
7698         instead of mm-inline-text-html-with-images.
7700 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7702         Port to FreeBSD 11-CURRENT i386
7704         Problem reported by Herbert J. Skuhra in:
7705         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
7706         Instead of trying
7707         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
7708         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
7709         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
7710         (MALLOC_IS_GC_ALIGNED): New macro.
7711         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
7712         No longer needed now that alloc.c uses lmalloc and lrealloc.
7714 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
7716         Some fixes in file-notify-tests.el
7718         * test/automated/file-notify-tests.el
7719         (file-notify--test-with-events-check)
7720         (file-notify--test-with-events-explainer): New defuns.
7721         (file-notify--test-with-events): Use it.
7722         (file-notify-test07-backup): Fix docstring.  Some of the
7723         backends fire two `changed' events.  Backup by rename doesn't
7724         work for kqueue.
7726 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
7728         Fix Bug#22557
7730         * lisp/filenotify.el (file-notify-callback): Do not send a
7731         `stopped' event in case of backup by renaming.  (Bug#22557)
7733         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
7734         all targets but check and check-maybe.
7736         * test/automated/file-notify-tests.el
7737         (file-notify--test-read-event-timeout): New defconst.
7738         (file-notify--deftest-remote, file-notify--wait-for-events)
7739         (file-notify-test02-events)
7740         (file-notify-test04-file-validity)
7741         (file-notify-test06-many-events): Use it.
7742         (file-notify--test-cleanup): Make it more robust.  Delete also
7743         backup file.
7744         (file-notify-test07-backup): New test.
7746 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7748         Fix test for dladdr
7750         Problem reported by Andreas Schwab in:
7751         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
7752         * configure.ac (dladdr): Link with LIBMODULES when checking for
7753         this function.
7755 2016-02-15  Andreas Schwab  <schwab@linux-m68k.org>
7757         Fix gnus-group-get-new-news-this-group on group with closed server
7759         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
7760         method and pass to nnimap-open-server.
7762 2016-02-15  Artur Malabarba  <bruce.connor.am@gmail.com>
7763 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
7765         * doc/lispref/sequences.texi: Add documentation for seq-map-indexed
7767 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
7769         New function seq-map-indexed
7771         * lisp/emacs-lisp/seq.el (seq-map-indexed): New function.
7772         * test/lisp/emacs-lisp/seq-tests.el: Add tests for seq-map-indexed.
7774 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
7776         * lisp/gnus/mm-util.el: Remove the mm-string-as-multibyte alias.
7778 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
7780         Fix problem with wrong encoding of non-ASCII message bodies
7782         * lisp/gnus/mml.el (mml-generate-mime-1): Disable
7783         multibyteness before encoding the data.
7785 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
7787         Remove codepage setup code from mm-util
7789         * lisp/gnus/mm-util.el (mm-codepage-setup): Remove.
7790         (mm-codepage-iso-8859-list): Remove.
7791         (mm-codepage-ibm-list, mm-setup-codepage-iso-8859)
7792         (mm-setup-codepage-ibm): Remove.
7793         (mm-charset-eval-alist): Remove the code pages from the
7794         default value.
7796 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
7798         Remove compat code for older Emacsen
7800         * lisp/gnus/gnus-art.el (gnus-button-url-regexp): Remove
7801         XEmacs compat code.
7803         * lisp/gnus/gnus-sync.el (gnus-sync-json-alist-p): Remove
7804         unused compat function.
7805         (gnus-sync-json-plist-p): Ditto.
7807         * lisp/gnus/message.el (message-default-charset): Make obsolete.
7808         (message-info): Remove compat code.
7809         (message-setup-fill-variables): Remove kludge needed earlier
7810         to not overwrite `normal-auto-fill-function'.
7811         (message-split-line): Remove compat code.
7813         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Remove
7814         compat code.
7816 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
7818         Remove some compat functions from gmm-utils.el
7820         * lisp/gnus/gmm-utils.el (gmm-tool-bar-from-list): Remove
7821         compat code.
7822         (gmm-image-search-load-path): Remove.
7823         (gmm-image-load-path-for-library): Remove.
7825 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
7827         Remove the gmm-lazy and nnmail-lazy compat widgets
7829         * lisp/gnus/gmm-utils.el (gmm-lazy): Remove.
7831         * lisp/gnus/nnmail.el (nnmail-lazy): Remove.
7833 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
7835         Clean up nnimap-request-move-article slightly
7837         * lisp/gnus/nnheader.el (subr-x): Require.
7839         * lisp/gnus/nnimap.el (nnimap-request-move-article): Clean up
7840         the code slightly.
7842 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
7844         Use open-network-stream instead of open-protocol-stream
7846         * lisp/gnus/nnimap.el: Use open-network-stream instead of
7847         open-protocol-stream.
7849         * lisp/gnus/nntp.el: Ditto.
7851         * lisp/gnus/pop3.el: Ditto.
7853         * lisp/gnus/sieve-manage.el: Ditto.
7855         * lisp/net/network-stream.el (open-protocol-stream): Make obsolete.
7857 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
7859         Remove compat code that relies on (featurep 'mule)
7861         * lisp/gnus/gnus-group.el (gnus-group-name-decode): Remove
7862         compat code.
7864         * lisp/gnus/gnus-start.el (gnus-read-descriptions-file):
7865         Remove compat code.
7867         * lisp/gnus/mm-bodies.el (mm-decode-body, mm-decode-string):
7868         Remove compat code.
7870         * lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
7871         Remove compat code.
7872         (mm-w3m-standalone-supports-m17n-p): Ditto.
7874 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
7876         Remove compat functions from starttls.el
7878         * lisp/gnus/starttls.el
7879         (starttls-set-process-query-on-exit-flag): Remove.
7881 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
7883         Remove compat functions from smime.el
7885         * lisp/gnus/smime.el (smime-replace-in-string): Remove.
7886         (smime-make-temp-file): Remove.
7888 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
7890         Remove compat code from smiley
7892         * lisp/gnus/smiley.el (smiley-style): Remove compat code.
7894 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
7896         Remove compat code from rfc2047
7898         * lisp/gnus/rfc2047.el (rfc2047-encode-message-header): Remove
7899         compat code.
7900         (rfc2047-decode-string): Ditto.
7902 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
7904         Remove compat function from pop3
7906         * lisp/gnus/pop3.el (pop3-set-process-query-on-exit-flag): Remove.
7908 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
7910         Remove compat code in Gnus backends
7912         * lisp/gnus/nndiary.el (nndiary-error): Remove.
7914         * lisp/gnus/nndraft.el (nndraft-request-associate-buffer): Ditto.
7916         * lisp/gnus/nnfolder.el (nnfolder-read-folder): Ditto.
7918         * lisp/gnus/nnheader.el (nnheader-find-file-noselect): Ditto.
7920         * lisp/gnus/nnimap.el (nnimap-log-buffer): Remove compat code.
7922 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
7924         Remove compat code from some mml files
7926         * lisp/gnus/mml-sec.el (mml-secure-passphrase-cache-expiry):
7927         Remove compat code.
7929         * lisp/gnus/mml-smime.el (mml-smime-openssl-sign-query):
7930         Always use `mail-extract-address-components', since this isn't
7931         time critical.
7932         (mml-smime-get-dns-cert): Ditto.
7934         * lisp/gnus/mml.el (mml-preview): Remove compat code.
7936 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
7938         Remove compat code and compat functions from mm-util.el
7940         * lisp/gnus/mm-util.el (mm-mime-mule-charset-alist): Remove
7941         compat code.
7942         (mm-coding-system-priorities)
7943         (mm-mule-charset-to-mime-charset, mm-charset-after)
7944         (mm-mime-charset, mm-iso-8859-x-to-15-region): Remove compat code.
7945         (mm-detect-coding-region): Define unconditionally.
7946         (mm-detect-mime-charset-region): Ditto.
7947         (mm-coding-system-to-mime-charset): It's 'mime-charset now.
7948         (coding-system-name)
7949         (find-file-coding-system-for-read-from-filename)
7950         (find-operation-coding-system): Remove aliases.
7952 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
7954         Remove some compat code from mm-*.el
7956         * lisp/gnus/mm-bodies.el (mm-decode-body): Ditto.
7958         * lisp/gnus/mm-decode.el (mm-tmp-directory)
7959         (mm-valid-image-format-p): Remove compat code.
7961         * lisp/gnus/mm-url.el (mm-url-insert-file-contents): Remove
7962         "Connection" "Close" workaround for older Emacsen.
7964 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
7966         Remove compat code and functions from message.el
7968         * lisp/gnus/message.el (message-send-mail-function): Remove
7969         compat code.
7970         (message-dont-reply-to-names, message-mode)
7971         (message-setup-fill-variables, message-fill-paragraph)
7972         (message-remove-blank-cited-lines, message-make-from)
7973         (message-forward-rmail-make-body, message-tool-bar-gnome)
7974         (message-tab): Remove compat code.
7975         (message-completion-in-region): Remove.
7976         (message-read-from-minibuffer): Remove compat code.
7978 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
7980         Declare rfc1843 instead of autoloading
7982         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Declare
7983         instead of autoload.
7985 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
7987         Avoid signaling an error in 'dired-do-find-regexp-and-replace'
7989         * lisp/dired-aux.el: Require cl-lib, so that 'cl-mapcan' is
7990         autoloaded correctly.  (Bug#22613)
7992 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
7994         Fix network-stream-tests.el for MS-Windows
7996         * test/lisp/net/network-stream-tests.el
7997         (connect-to-tls-ipv6-nowait): Skip for MS-Windows builds.
7998         (connect-to-tls-ipv4-wait): Add a 0.1 sleep-for.
8000 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8002         Remove some Message compat functions
8004         * lisp/gnus/message.el (message-kill-all-overlays): Define
8005         unconditionally.
8006         (message-window-inside-pixel-edges): Remove.
8007         (mail-dont-reply-to): Remove.
8009 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8011         Remove some Gnus compat code
8013         * lisp/gnus/gnus-art.el (gnus-mime-inline-part): Remove compat code.
8014         (gnus-mm-display-part): Ditto.
8016         * lisp/gnus/gnus-start.el (gnus-dribble-read-file): Remove
8017         compat code.
8019 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8021         Sort groups before inserting them into the group buffer
8023         * lisp/gnus/gnus-group.el (gnus-group-describe-all-groups):
8024         Sort groups before inserting them.
8026 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8028         Make "unseen" tracking work again in Gnus
8030         * lisp/gnus/gnus-sum.el (gnus-update-marks): Make "unseen"
8031         tracking work again.
8033 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8035         Remove Gnus compat functions defined in gnus.el
8037         * lisp/gnus/gnus.el (gnus-extent-detached-p): Remove.
8038         (gnus-extent-start-open, gnus-character-to-event)
8039         (gnus-assq-delete-all, gnus-add-text-properties)
8040         (gnus-put-text-property, gnus-key-press-event-p):
8042 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8044         Remove compat code from gnus-uu and win
8046         * lisp/gnus/gnus-util.el (gnus-image-type-available-p): Remove
8047         compat code.
8049         * lisp/gnus/gnus-uu.el (gnus-uu-tmp-dir): Remove compat code.
8051         * lisp/gnus/gnus-win.el (gnus-frames-on-display-list): Remove.
8053 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8055         Remove several gnus-util compat functions
8057         * lisp/gnus/gnus-util.el (gnus-set-process-query-on-exit-flag): Remove.
8058         (gnus-read-shell-command): Remove.
8059         (gnus-match-substitute-replacement): Remove.
8060         (gnus-string-match-p): Remove.
8061         (gnus-string-prefix-p): Remove.
8063 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8065         Remove the gnus-merge alias
8067         * lisp/gnus/gnus-util.el (gnus-merge): Remove.
8069 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8071         Remove the gnus-union alias
8073         * lisp/gnus/gnus-util.el (gnus-union): Remove.
8075 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8077         Remove the gnus-delete-alist alias
8079         * lisp/gnus/gnus-util.el (gnus-run-mode-hooks): Remove compat code.
8080         (gnus-delete-alist): Remove.
8082 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8084         Remove the gnus-float-time alias
8086         * lisp/gnus/gnus-util.el (gnus-completion-styles): Remove
8087         compat code.
8088         (gnus-float-time): Remove.
8090 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8092         Remove compat code from gnus-srvr, start and sum
8094         * lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Remove
8095         compat code.
8097         * lisp/gnus/gnus-start.el (gnus-check-reasonable-setup):
8098         Remove compat code.
8100         * lisp/gnus/gnus-sum.el (gnus-summary-display-arrow)
8101         (gnus-summary-make-menu-bar, gnus-summary-make-tool-bar)
8102         (gnus-recenter)
8103         (gnus-summary-limit-strange-charsets-predicate)
8104         (gnus-summary-show-thread): Remove compat code.
8106 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8108         Remove compat code from gnus-spec.el
8110         * lisp/gnus/gnus-spec.el (gnus-lrm-string-p): Remove compat code.
8111         (gnus-balloon-face-function): Remove compat code.
8113 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8115         Fix compat change in last check-in
8117         * lisp/gnus/gnus-group.el
8118         (gnus-group-name-charset-group-alist): `find-coding-system'
8119         doesn't exist in Emacs.
8121 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8123         Always use url-queue
8125         * lisp/gnus/gnus-html.el (gnus-html-schedule-image-fetching):
8126         Always use url-queue.
8128 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8130         Remove compat functions from gnus-html.el
8132         * lisp/gnus/gnus-html.el (gnus-html-encode-url-chars): Remove.
8134 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8136         Remove compat code from gnus-group.el
8138         * lisp/gnus/gnus-group.el (gnus-group-name-charset-group-alist)
8139         (gnus-group-make-tool-bar, gnus-group-update-tool-bar): Remove compat code.
8141 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8143         Define gnus-diary-kill-entire-line unconditionally
8145         * lisp/gnus/gnus-diary.el (gnus-diary-kill-entire-line):
8146         Define unconditionally.
8148 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8150         Remove compat code from gnus-cache and gnus-bookmark
8152         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-bmenu-mode-map): Ditto.
8154         * lisp/gnus/gnus-cache.el (gnus-cache-decoded-group-name):
8155         Remove compat code.
8157 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8159         Remove compat code from gnus-art.el
8161         * lisp/gnus/gnus-art.el (gnus-article-prepare)
8162         (gnus-mime-copy-part, gnus-output-to-file)
8163         (gnus-article-reply-with-original)
8164         (gnus-button-handle-apropos-variable)
8165         (gnus-button-handle-apropos-documentation):
8167 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8169         Remove compat code from gnus-agent.el
8171         * lisp/gnus/gnus-agent.el (gnus-agent-make-mode-line-string):
8172         Remove compat code.
8174 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8176         Rewrite gmm-labels usage to use cl-labels
8178         * lisp/gnus/gmm-utils.el (gmm-tool-bar-style): Remove compat code.
8179         (gmm-labels): Remove.
8181 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8183         Remove compat code from canlock.el
8185         * lisp/gnus/canlock.el (defmacro): Remove
8187 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8189         Remove compat code from auth-source
8191         * lisp/gnus/auth-source.el (auth-source-read-char-choice):
8192         Remove compat code.
8194 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8196         Fix gnus-group.el compilation warnings about unprefixed variables
8198         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): Avoid
8199         compilation warnings by passing in the dynamic variables as
8200         explicit lexical parameters to `eval'.
8202 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
8204         Fix the :tracker slot name
8206         * lisp/gnus/registry.el (registry-lookup-secondary): The
8207         `tracker' slot is called `tracker', not `:tracker'.
8209 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8211         Fix compilation warnings in gnus-art.el
8213         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Autoload.
8214         (gnus-article-hide): Avoid compilation warnings.
8216 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8218         Fix compilation warning in gnus-score.el
8220         * lisp/gnus/gnus-score.el (gnus-art): Require to silence byte
8221         compiler.
8223 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
8225         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
8227         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
8229         This makes nnimap groups not be activated.
8231 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8233         Fix encoding problem introduced by previous patch series
8235         * lisp/gnus/rfc2047.el: Ditto (bug#22648).
8237         * lisp/gnus/rfc2231.el: Fix problem created by the
8238         mm-replace-in-string conversion.
8240 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8242         Revert "Avoid defvarring prefix-less variables"
8244         This reverts commit 303390bda34f98b400798d5383cf0d722e35ba19.
8246         The defvars are needed if we're doing lexical-binding
8248 2016-02-12  Glenn Morris  <rgm@gnu.org>
8250         * test/lisp/url/url-auth-tests.el (url-auth-test-digest-auth):
8251         Make it pass.
8253         * test/lisp/url/url-auth-tests.el
8254         (url-auth-test-digest-auth-retrieve-cache): Fix obvious typo.
8256 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8258         Finish up cl-defmethoding registry,el
8260         * lisp/gnus/registry.el (initialize-instance): Use cl-defmethod.
8262 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8264         Revert the gnus-replace-in-string change, fix arguments, reapply
8266 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8268         Silence more message.el compilation warnings
8270         * lisp/gnus/message.el (message-generate-headers): Don't use
8271         variable values directly to get the header values, because
8272         that breaks with lexical binding (without unprefixed defvars).
8274 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8276         Fix various compilation warnings in message.el
8278         * lisp/gnus/message.el (message-fix-before-sending): Use
8279         read-multiple-choice instead of gnus-multiple-choice.
8280         (mm-util): Require.
8281         (rfc2047): Require.
8282         (message-remove-blank-cited-lines): Use message instead of
8283         gnus-message.
8284         (message-send): Use y-or-n-p instead of gnus-y-or-n-p.
8286 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8288         Silence compilation warning in mm-view
8290         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Silence
8291         compilation warning.
8293 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8295         Fix epg-related compilation warnings in mml-sec
8297         * lisp/gnus/mml-sec.el: Fix compilation warnings from the epg
8298         library.
8300 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8302         rmail-dont-reply-to-names is obsolete
8304         * lisp/gnus/nnmail.el (nnmail-fancy-expiry-target): Don't bind
8305         the obsolete `rmail-dont-reply-to-names' variable.
8307 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8309         Partially revert the defmethod->cl-defmethod change in registry.el
8311         * lisp/gnus/registry.el (initialize-instance): Use defmethod,
8312         since cl-defmethod doesn't work with :after.
8313         (initialize-instance): Ditto, but with :before.
8315 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8317         Avoid obsolete function in plstore
8319         * lisp/gnus/plstore.el (plstore--insert-buffer): Use setf
8320         instead of the obsolete epg-context-set-armor.
8322 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8324         Use cl-defmethod in registry.el
8326         * lisp/gnus/registry.el: Use cl-defmethod instead of the
8327         obsolete defmethod.
8329 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8331         Make sieve-manage require sasl
8333         * lisp/gnus/sieve-manage.el: Fix compilation warning by
8334         requiring sasl.
8336 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8338         Avoid defvarring prefix-less variable
8340         * lisp/gnus/mm-uu.el (mm-uu-entry): Rename from `entry'.
8342 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8344         * lisp/gnus/mailcap.el: Remove usage of mailcap-delete-duplicates.
8346 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8348         Don't use the obsolete char-valid-p function
8350         * lisp/gnus/mm-url.el (mm-url-decode-entities): Don't use the
8351         obsolete char-valid-p function.
8353 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8355         Fix missed translation in a previous commit
8357         * lisp/gnus/mailcap.el (mailcap-mime-types): Fix missed
8358         translation of mailcap-delete-duplicates.
8360 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8362         Avoid using mm-make-temp-file
8364         * lisp/gnus/mail-source.el (mail-source-delete-crash-box): Ditto.
8366         * lisp/gnus/mm-decode.el (mm-display-external): Ditto.
8368         * lisp/gnus/mml-smime.el (mml-smime-openssl-encrypt): Ditto.
8370 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8372         Fix compilation warning in gnus-start
8374         * lisp/gnus/gnus-start.el (gnus-slave-save-newsrc): Avoid
8375         mm-make-temp-file.
8377 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8379         Avoid the obsoleted defmethod
8381         * lisp/gnus/gnus-icalendar.el: Use cl-defmethod instead of
8382         defmethod.
8384 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8386         Avoid defvarring prefix-less variables
8388         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): We
8389         don't need to `defvar' the short variables to allow `eval' to
8390         use them.
8392 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8394         nnweb doesn't need unibyte buffers
8396         * lisp/gnus/nnweb.el (nnweb-retrieve-headers)
8397         (nnweb-read-overview, nnweb-request-article)
8398         (nnweb-google-reference): Unibyte buffers are not needed here.
8400 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
8402         Encode before sending from nnspool
8404         * lisp/gnus/nnspool.el (nnspool-request-post): Encode data
8405         before sending it to the news server.
8407 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8409         nnrss buffers don't have to be unibyte
8411         * lisp/gnus/nnrss.el (nnrss-insert): The buffer doesn't have
8412         to be unibyte just to receive data, I think.
8414 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8416         Don't use mm-with-unibyte-current-buffer in mml2015
8418         * lisp/gnus/mml2015.el (mml2015-mailcrypt-encrypt): Don't use
8419         mm-with-unibyte-current-buffer.
8421 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8423         Don't use mm-with-unibyte-current in mml1991
8425         * lisp/gnus/mml1991.el (mml1991-epg-sign): Don't use
8426         mm-with-unibyte-current.
8428 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8430         Don't use mm-with-unibyte-current in mml1991
8432         * lisp/gnus/mml1991.el (mml1991-pgg-sign): Don't use
8433         mm-with-unibyte-current.
8435 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8437         Don't use mm-with-unibyte-buffer in utf7
8439         * lisp/gnus/utf7.el (utf7-fragment-encode): Don't use
8440         mm-with-unibyte-buffer.
8442 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8444         Remove XEmacs compat code from Gnus helper libraries
8446         * lisp/gnus/plstore.el (plstore-called-interactively-p): Remove.
8448         * lisp/gnus/pop3.el (pop3-make-date): Remove XEmacs compat.
8450         * lisp/gnus/sieve-mode.el: Remove XEmacs compat.
8452         * lisp/gnus/spam-stat.el (spam-stat-called-interactively-p): Remove.
8454 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8456         Remove XEmacs compat code from Gnus backends
8458         * lisp/gnus/mm-view.el (mm-inline-image-xemacs): Remove.
8459         (mm-inline-image): Rename from mm-inline-image-emacs.
8461         * lisp/gnus/mml.el: Remove XEmacs compat code.
8463         * lisp/gnus/nnheader.el: Remove XEmacs compat code.
8465         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Remove
8466         XEmacs compat code.
8468         * lisp/gnus/nnir.el (nnir-run-gmane): Remove XEmacs compat code.
8470         * lisp/gnus/nnmail.el (nnmail-pathname-coding-system): Remove
8471         XEmacs compat code.
8473         * lisp/gnus/nnmairix.el: Remove XEmacs compat code.
8475         * lisp/gnus/nnrss.el: Remove XEmacs compat code.
8477         * lisp/gnus/nntp.el: Remove XEmacs compat code.
8479 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8481         Remove XEmacs compat functions from mm-util.el
8483         * lisp/gnus/mm-util.el (mm-special-display-p): Remove.
8484         (mm-decode-coding-string, mm-encode-coding-string)
8485         (mm-decode-coding-region, mm-encode-coding-region): Remove.
8486         (mm-string-to-multibyte): Remove.
8487         (mm-char-or-char-int-p): Remove.
8488         (mm-ucs-to-char): Remove compat versions of the function.
8489         (mm-read-coding-system): Remove.
8490         (mm-coding-system-p): Remove compat code.
8491         (mm-enrich-utf-8-by-mule-ucs): Remove.
8492         (mm-enable-multibyte, mm-disable-multibyte): Remove compat versions.
8493         (mm-delete-duplicates): Remove.
8494         (mm-multibyte-p): Remove compat versions.
8495         (mm-xemacs-find-mime-charset-1): Remove.
8496         (mm-xemacs-find-mime-charset): Remove.
8497         (mm-make-temp-file): Made obsolete.
8498         (mm-find-buffer-file-coding-system): Remove XEmacs compat.
8500 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8502         Remove Message and mm-decode XEmacs compat code
8504         * lisp/gnus/message.el: Remove XEmacs compat code.
8506         * lisp/gnus/mm-decode.el (mm-create-image-xemacs): Remove.
8508         * lisp/gnus/mm-util.el: Remove some XEmacs compat code.
8510 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8512         Remove som XEmacs compat code from message.el
8514         * lisp/gnus/message.el: Remove some XEmacs compat code.
8516 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8518         Remove XEmacs compat code from ietf-drums.el
8520         * lisp/gnus/ietf-drums.el (ietf-drums-syntax-table): Drop
8521         XEmacs compat.
8523 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8525         Remove XEmacs compat code from gravatar.el
8527         * lisp/gnus/gravatar.el: Remove XEmacs compat code from
8528         gravatar.el.
8530 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8532         Remove more XEmacs compat code from Gnus
8534         * lisp/gnus/gnus-util.el (gnus-bound-and-true-p): Remove.
8535         (gnus-timer--function): Remove.
8537         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Remove XEmacs
8538         19.2 compat.
8540         * lisp/gnus/gnus-win.el: Remove XEmacs compat code.
8542 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8544         Remove more XEmacs compat functions from gnus-util.el
8546         * lisp/gnus/gnus-util.el (gnus-put-display-table): Remove.
8547         (gnus-get-display-table): Remove.
8548         (gnus-format-message): Remove.
8550 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8552         Remove more XEmacs compat functions from Gnus
8554         * lisp/gnus/gnus-util.el (gnus-next-char-property-change): Remove.
8555         (gnus-previous-char-property-change): Remove.
8556         (gnus-graphic-display-p): Remove.
8557         (gnus-select-frame-set-input-focus): Remove.
8559 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8561         Remove more XEmacs compat code from gnus-util
8563         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
8564         all its usages).
8565         (gnus-invisible-p): Remove.
8567 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8569         Remove gnus-make-local-hook
8571         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
8572         all its usages).
8574 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8576         gnus-replace-in-string -> replace-regexp-in-string
8578         * lisp/gnus/gnus-util.el (gnus-replace-in-string): Declare
8579         obsolete.  Transform all usages of it into
8580         replace-regexp-in-string.
8582         * lisp/gnus/mailcap.el (mailcap-replace-in-string): Remove.
8584 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
8586         Remove Gnus XEmacs compat
8588         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Remove comment
8589         about code that doesn't work in XEmacs.
8591         * lisp/gnus/gnus-sum.el: Remove XEmacs compat.
8593         * lisp/gnus/gnus-topic.el: Remove XEmacs compat.
8595 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
8597         Remove compat functions in gnus-spec.el
8599         * lisp/gnus/gnus-spec.el (gnus-string-width-function): Remove.
8600         (gnus-substring-function): Remove.
8601         (gnus-use-correct-string-widths): Remove.
8602         (gnus-make-format-preserve-properties): Remove.
8603         (gnus-xmas-format): Remove.
8605         * lisp/gnus/gnus-srvr.el (gnus-server-mode): Remove XEmacs compat.
8607 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
8609         Remove Gnus XEmacs compat functions
8611         * lisp/gnus/gnus-registry.el: Remove XEmacs compat.
8613         * lisp/gnus/gnus-salt.el: Remove XEmacs compat.
8615         * lisp/gnus/gnus-score.el (gnus-decay-score): Remove XEmacs compat.
8617 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
8619         Remove Gnus XEmacs compatibility
8621         * lisp/gnus/gnus-demon.el (gnus-demon-idle-since): Remove
8622         XEmacs compat.
8624         * lisp/gnus/gnus-dired.el: Remove XEmacs compat.
8626         * lisp/gnus/gnus-draft.el: Remove XEmacs compat.
8628         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-insert): Remove
8629         XEmacs compat.
8631         * lisp/gnus/gnus-group.el: Remove XEmacs compat.
8633         * lisp/gnus/gnus-html.el: Remove XEmacs compat.
8635         * lisp/gnus/gnus-ml.el: Remove XEmacs compat.
8637         * lisp/gnus/gnus-picon.el (gnus-picon-style): Remove XEmacs comment.
8639 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
8641         Don't use image-map if it isn't defined
8643         * lisp/net/shr.el (shr-image-map): Only use image-map as a
8644         parent if it's defined (bug#22614).
8646 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
8648         Check for MagickAutoOrientImage
8650         * configure.ac: Check for MagickAutoOrientImage.
8652         * src/image.c (imagemagick_load_image): Don't use
8653         MagickAutoOrientImage unless it's available.
8655 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
8657         Document EXIF image rotation
8659         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
8661 2016-02-10  Dima Kogan  <dima@secretsauce.net>
8663         Support integer image rotation and respect EXIF rotations
8665         * src/image.c (imagemagick_load_image): Allow integer rotations in
8666         addition to floating point rotations (bug#22591).
8667         * src/image.c (imagemagick_load_image): Images that have an
8668         orientation given in EXIF and have no explicit :rotation tag are now
8669         pre-rotated.  All information such as width/height is reported for the
8670         rotated image.
8672 2016-02-10  Wolfgang Jenkner  <wjenkner@inode.at>
8674         * lisp/net/shr.el (image-map): Defvar it.  (Bug#22614)
8676 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
8678         * lisp/gnus/gnus-cite.el: Remove XEmacs compat code.
8680 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8682         Remove compat code from gnus-bookmark.el
8684         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-mouse-available-p): Remove.
8685         (gnus-bookmark-remove-properties): Remove.
8687 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8689         Remove XEmacs compat code from gnus-a*.el
8691         * lisp/gnus/gnus-agent.el: Remove compat code.
8693         * lisp/gnus/gnus-art.el: Remove compat code.
8695         * lisp/gnus/gnus-async.el: Remove compat code.
8697 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8699         Remove gmm compat functions
8701         * lisp/gnus/gmm-utils.el (gmm-image-search-load-path): Remove.
8702         (gmm-write-region): Remove.
8703         (gmm-called-interactively-p): Remove.
8705 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8707         * lisp/gnus/ecomplete.el: Remove XEmacs compat code.
8709 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8711         Remove compat code from compface.el
8713         * lisp/gnus/compface.el: Remove XEmacs compat code throughout.
8715 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8717         Remove the now empty gnus-ems.el and references to it
8719 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8721         Remove Gnus compat names for mouse bindings
8723         * lisp/gnus/gnus-ems.el (gnus-widget-button-keymap): Remove.
8724         (gnus-down-mouse-2): Remove.
8725         (gnus-down-mouse-3): Remove.
8727 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8729         Drop Gnus compat functions
8731         * lisp/gnus/gnus-ems.el (gnus-mule-max-width-function): Remove.
8733         * lisp/gnus/gnus-util.el (gnus-kill-all-overlays): Move here.
8735         * lisp/gnus/gnus.el (gnus-mode-line-modified): Remove.
8737 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8739         Get rid of gnus-ems-redefine
8741         * lisp/gnus/gnus-ems.el (gnus-mouse-face-prop): Remove.
8743 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8745         * lisp/gnus/gnus-spec.el: Move definition here from gnus-ems.el.
8747 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8749         Remove Gnus compat code
8751         * lisp/gnus/gnus-ems.el (gnus-ems-redefine): Remove
8752         transitional code from ten years ago.
8754 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8756         Allow interactively scaling past :max-width etc
8758         * lisp/image.el (image--current-scaling)
8759         (image--image-without-parameters): New functions.
8760         (image--change-size): Use them to allow changing the size of a
8761         image even if it has :width/:max-width (etc.) already set.
8763 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8765         * lisp/gnus/mm-decode.el (shr-image-map): Compilation fix.
8767 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8769         Allow accessing the image commands via shr
8771         * lisp/gnus/mm-decode.el (mm-convert-shr-links): Allow
8772         accessing the image commands.
8774         * lisp/net/shr.el (shr-image-map): New map used for images.
8775         (shr-urlify): Don't overwrite image maps when applying URL maps.
8777 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8779         Use a sparse image keymap
8781         * lisp/image.el (image-map): Use a sparse keymap.
8783 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8785         Put a keymap on images created with insert-image and friends
8787         * lisp/image.el (image-save): New command.
8788         (image-rotate): Ditto.
8789         (image-map): New keymap.
8790         (insert-image): Put the image-map on all images.
8791         (insert-sliced-image): Ditto.
8792         * doc/lispref/display.texi (Showing Images): Document the
8793         image map.
8795 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8797         Fix some folding issues in read-multiple-choice
8799         * lisp/subr.el (read-multiple-choice): Fix folding when you
8800         have many items.
8802 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8804         Fix typo in last checkin
8806 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8808         Remove Gnus compat functions
8810         * lisp/gnus/gnus-ems.el (gnus-mark-active-p)
8811         (gnus-region-active-p, gnus-select-lowest-window)
8812         (gnus-summary-display-table, gnus-max-width-function): Remove
8813         compat functions.
8815 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8817         Move non-compat Gnus functions to gnus-util.el
8819         * lisp/gnus/gnus-util.el (gnus-remove-image, gnus-put-image)
8820         (gnus-create-image, gnus-image-type-available-p): Move here
8821         from gnus-ems.el, since these aren't compat functions.
8823 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8825         Omit valloc decl if redundant
8827         * src/gmalloc.c (valloc): Omit decl if malloc.h is included,
8828         to pacify --enable-gcc-warnings.
8830 2016-02-09  Wolfgang Jenkner  <wjenkner@inode.at>
8832         Restore the calloc family.
8834         * src/gmalloc.c (calloc, gcalloc, hybrid_calloc): Restore definitions.
8835         They were lost in a4817d8 but calloc is still (marginally) used in
8836         code statically liked with emacs, so hybrid_calloc is needed.
8837         Also, in the non-hybrid case, we can't get rid of calloc anyway as
8838         other libraries liked with emacs may need it.
8839         * src/conf_post.h: Restore redefinition of calloc to hybrid_calloc.
8841 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8843         Remove some Gnus compat functions
8845         * lisp/gnus/gnus-ems.el (gnus-string-mark-left-to-right)
8846         (gnus-window-inside-pixel-edges, gnus-set-process-plist)
8847         (gnus-process-plist, gnus-process-get, gnus-process-put): Remove.
8849 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8851         -
8853         -
8855 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8857         Merge from origin/emacs-25
8859         4feb962 * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
8860         cc419fb Don't inloop gnus-uu-mark-thread on the last thread
8861         51c77a2 Display non-ASCII group names better in prompts
8862         f93d669 Default to gpg2 instead of gpg
8864 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8866         Merge from origin/emacs-25
8868         9ffe7dd * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
8869         16140f7 * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
8870         3db6adb * lisp/isearch.el (search-default-mode)
8871         4ea1ea7 * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
8872         c77ffc8 Use monitor's resolution for positioning tooltips
8873         49e5749 Fix file-notify-test on MS-Windows
8874         be1d874 Fix issues found by auditing w32notify code
8875         87ae218 Extend etags Ruby support for accessors
8876         aa35257 Update publicsuffix.txt.
8877         6816bff Ensure that Gnus dribble handling allows removing entries
8878         691feae Be consistent when using encoded strings in nnimap data
8879         3ed423b Display the decoded Gnus group name
8880         5428b5b Use completion-ignore-case instead of defining command
8882 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8884         Merge from origin/emacs-25
8886         1eaf68f * test/automated/file-notify-tests.el (file-notify-test06-many-events):
8887         d333716 ; * etc/NEWS: Expand news entry for scss-mode
8888         c32c16f ; Better document changes in ls-lisp default behavior
8889         dc6eed2 Fix doc string of tls-program
8891 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8893         Merge from origin/emacs-25
8895         2c117fc * etc/NEWS: Document new mpc.el features
8896         71a0496 * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
8897         9dfece1 Correctly fontify C++ initializations which "look like" functions.
8898         4485222 Improve newsticker-treeview-selection-face
8899         4236944 Minor fix in tagging Ruby accessors by etags
8900         35fc77d Spelling fixes
8901         3dda110 Remove 'def X' from the example
8903 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8905         Minor alignas cleanup
8907         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
8908         over from the old way of doing things, before Bug#20862 was fixed.
8910 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8912         Add lmalloc commentary and tweak laligned
8914         * src/alloc.c (laligned): Help compiler in a tiny way by putting
8915         the more-commonly-failing disjunct first.
8917 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
8919         Clarify documentation of key binding conventions
8921         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
8922         "punctuation characters" are reserved after "C-c".  (Bug#22604)
8924 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
8926         * etc/NEWS: mention the `vc-faces' customization group
8928 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8930         Sync with gnulib
8932         This incorporates:
8933         2016-02-09 stdalign: port to clang 3.7.0
8934         2016-02-06 misc: port better to gcc -fsanitize=address
8935         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
8936         Copy from gnulib.
8938 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
8940         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
8942 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8944         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
8946         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
8947         (mm-html-blocked-images): Default to nil.
8949         * doc/misc/emacs-mime.texi (Display Customization): Mention that
8950         mm-html-inhibit-images and mm-html-blocked-images default to nil.
8952         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
8953         mm-html-blocked-images.
8955 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
8957         Increase success rate of fallback lmalloc
8959         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
8960         larger and larger sizes, to increase the probability that
8961         the allocator will return a Lisp-aligned pointer.
8963 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
8965         Make backgrounds extend to the end of the lines in shr
8967         * lisp/net/shr.el (shr-face-background): Faces can also be on
8968         the form `(:background "#fff)' (bug#22547).
8970 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
8972         Make the `R' command get the correct relative <img>s
8974         * lisp/net/eww.el (eww-readable): Preserve the base URL so
8975         that image expansions are fetched from the right place (bug#22605).
8977         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
8979         Backport:
8981 2016-02-08  Mike Kupfer  <m.kupfer@acm.org>
8983         Fix typos in emacs-mime.texi and gnus.texi
8985         * doc/misc/emacs-mime.texi (Display Customization):
8986         * doc/misc/gnus.texi (HTML): Fix typo.
8988 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
8990         * doc/misc/emacs-mime.texi (Display Customization):
8991         Doc fix for mm-html-inhibit-images.
8993 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
8995         Fix message-cross-post-followup-to group names
8997         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
8998         insert group names like "nntp+foo:zot", because those aren't valid.
9000 2016-02-08  David Edmondson  <dme@dme.org>
9002         Compare recipient and keys case-insensitively
9004         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
9005         recipient address with that from a key, do so in a case insensitive
9006         manner (bug#22603).
9008 2016-02-08  Glenn Morris  <rgm@gnu.org>
9010         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
9012 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
9014         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
9016         * doc/misc/emacs-mime.texi (Display Customization):
9017         Remove mm-inline-text-html-with-images; add documentations for
9018         mm-html-inhibit-images and mm-html-blocked-images.
9020         * lisp/gnus/gnus-art.el (gnus-article-show-images):
9021         No need to bind mm-inline-text-html-with-images.
9022         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
9023         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
9024         bind mm-html-inhibit-images and mm-html-blocked-images.
9025         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
9026         (gnus-mm-display-part, gnus-mime-display-single)
9027         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
9029         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
9030         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
9031         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
9032         mm-html-inhibit-images and mm-html-blocked-images respectively
9033         instead of gnus-inhibit-images and gnus-blocked-images.
9035         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
9036         instead of mm-inline-text-html-with-images.
9038 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
9040         Port to FreeBSD 11-CURRENT i386
9042         Problem reported by Herbert J. Skuhra in:
9043         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
9044         Instead of trying
9045         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
9046         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
9047         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
9048         (MALLOC_IS_GC_ALIGNED): New macro.
9049         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
9050         No longer needed now that alloc.c uses lmalloc and lrealloc.
9052 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
9054         Some fixes in file-notify-tests.el
9056         * test/automated/file-notify-tests.el
9057         (file-notify--test-with-events-check)
9058         (file-notify--test-with-events-explainer): New defuns.
9059         (file-notify--test-with-events): Use it.
9060         (file-notify-test07-backup): Fix docstring.  Some of the
9061         backends fire two `changed' events.  Backup by rename doesn't
9062         work for kqueue.
9064 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
9066         Fix Bug#22557
9068         * lisp/filenotify.el (file-notify-callback): Do not send a
9069         `stopped' event in case of backup by renaming.  (Bug#22557)
9071         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
9072         all targets but check and check-maybe.
9074         * test/automated/file-notify-tests.el
9075         (file-notify--test-read-event-timeout): New defconst.
9076         (file-notify--deftest-remote, file-notify--wait-for-events)
9077         (file-notify-test02-events)
9078         (file-notify-test04-file-validity)
9079         (file-notify-test06-many-events): Use it.
9080         (file-notify--test-cleanup): Make it more robust.  Delete also
9081         backup file.
9082         (file-notify-test07-backup): New test.
9084 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
9086         Fix test for dladdr
9088         Problem reported by Andreas Schwab in:
9089         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
9090         * configure.ac (dladdr): Link with LIBMODULES when checking for
9091         this function.
9093 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
9095         Fix gnus-group-get-new-news-this-group on group with closed server
9097         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
9098         method and pass to nnimap-open-server.
9100 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
9102         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
9104         While tabs in code are mostly fine because the Emacs sources have a
9105         .dir-locals file specifying tab-width, the same is not true of tabs in
9106         code examples inside docstrings.  The docstring is printed on a *Help*
9107         buffer, which can be created on any directory and won't necessarily have
9108         the same tab-width set.
9110 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
9112         Don't inloop gnus-uu-mark-thread on the last thread
9114         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
9115         final thread in the summary buffer (bug#16666).
9117 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
9119         Display non-ASCII group names better in prompts
9121         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
9122         group name, we have to do that before we remove the prefix.
9124 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
9126         Default to gpg2 instead of gpg
9128         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
9129         it exists.  This fixes many problems with using the GPG
9130         authentication agent.
9132 2016-02-06  David Edmondson  <dme@dme.org>
9134         src/process.c Correctly convert AF_INET6 addresses
9136         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
9137         converted to a list of 16 bit quantities by
9138         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
9139         same scheme rather than expecting a (longer) list of 8 bit
9140         quantities.
9142         Backport:
9144         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
9146 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
9148         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
9150 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
9152         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
9154         (menu-bar-search-options-menu): New variable
9156 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
9158         * lisp/isearch.el (search-default-mode)
9160         (isearch-regexp-function): Improve docstrings.
9162 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
9164         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
9166         (search-default-mode): New variable.
9167         (isearch-mode, isearch-define-mode-toggle)
9168         (isearch--describe-regexp-mode): Update accordingly.
9169         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
9170         * etc/NEWS: Update accordingly.
9171         * doc/emacs/search.texi: Update accordingly.
9173 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
9175         Use monitor's resolution for positioning tooltips
9177         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
9178           the mouse pointer is to avoid placing the tooltip over the border of
9179           the monitor on multi-head displays. Fixes bug#22549.
9181 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
9183         Fix file-notify-test on MS-Windows
9185         * test/automated/file-notify-tests.el (file-notify--test-timeout):
9186         Reduce w32notify timeout to 10 sec.
9187         (file-notify-test06-many-events): Call read-event after each
9188         rename, to keep the w32notify backend happy in batch mode.
9189         (Bug#22534)
9191 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
9193         Fix issues found by auditing w32notify code
9195         * src/w32inevt.c (handle_file_notifications): Count the number of
9196         events to be returned.
9197         * src/w32notify.c (send_notifications): Don't copy to the file
9198         notification buffer more than it can hold.  (Bug#22534)
9200 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
9202         Extend etags Ruby support for accessors
9204         * lib-src/etags.c (Ruby_functions): Support accessors defined with
9205         parentheses.  (Bug#22563)
9207         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
9208         defined with parentheses.
9209         * test/etags/ETAGS.good_1:
9210         * test/etags/ETAGS.good_2:
9211         * test/etags/ETAGS.good_3:
9212         * test/etags/ETAGS.good_4:
9213         * test/etags/ETAGS.good_5:
9214         * test/etags/ETAGS.good_6:
9215         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
9217 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
9219         Update publicsuffix.txt.
9221         * etc/publicsuffix.txt: Updated from
9222         https://publicsuffix.org/list/public_suffix_list.dat.
9224 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
9226         Ensure that Gnus dribble handling allows removing entries
9228         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
9229         entry is on a single line.
9231 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
9233         Be consistent when using encoded strings in nnimap data
9235         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
9236         (nnimap-request-list): Use it.
9237         (nnimap-request-newgroups): Ditto.
9239 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
9241         Display the decoded Gnus group name
9243         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
9244         decoded group name in the message.
9246 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
9248         Use completion-ignore-case instead of defining command
9250         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
9251         that we get case-insensitive completion.
9252         (erc-completion-at-point): Remove.
9254 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
9256         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
9258 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
9260         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
9262         Reduce the number of iterations to 250 in case of w32notify.
9264 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
9266         Fix problems caused by new implementation of sub-word mode
9268         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
9269         New functions.
9270         (word-move-empty-char-table): New variable.
9272         * etc/NEWS: Mention 'forward-word-strictly' and
9273         'backward-word-strictly'.
9275         * doc/lispref/positions.texi (Word Motion): Document
9276         'find-word-boundary-function-table', 'forward-word-strictly', and
9277         'backward-word-strictly'.  (Bug#22560)
9279         * src/syntax.c (syms_of_syntax)
9280         <find-word-boundary-function-table>: Doc fix.
9282         * lisp/wdired.el (wdired-xcase-word):
9283         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
9284         (texinfo-copy-section-title, texinfo-start-menu-description)
9285         (texinfo-copy-menu-title, texinfo-specific-section-type)
9286         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
9287         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
9288         (texinfo-insert-@end):
9289         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
9290         (texinfo-anchor, texinfo-multitable-widths)
9291         (texinfo-multitable-item):
9292         * lisp/textmodes/tex-mode.el (latex-env-before-change):
9293         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
9294         * lisp/skeleton.el (skeleton-insert):
9295         * lisp/simple.el (count-words):
9296         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
9297         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
9298         (vhdl-update-sensitivity-list, vhdl-template-block)
9299         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
9300         (vhdl-template-default-indent, vhdl-template-for-loop)
9301         (vhdl-template-if-then-use, vhdl-template-bare-loop)
9302         (vhdl-template-nature, vhdl-template-procedural)
9303         (vhdl-template-process, vhdl-template-selected-signal-asst)
9304         (vhdl-template-type, vhdl-template-variable)
9305         (vhdl-template-while-loop, vhdl-beginning-of-block)
9306         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
9307         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
9308         (verilog-forward-sexp, verilog-beg-of-statement)
9309         (verilog-set-auto-endcomments, verilog-backward-token)
9310         (verilog-do-indent):
9311         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
9312         (vera-indent-block-closing):
9313         * lisp/progmodes/simula.el (simula-context)
9314         (simula-backward-up-level, simula-forward-down-level)
9315         (simula-previous-statement, simula-next-statement)
9316         (simula-skip-comment-backward, simula-calculate-indent)
9317         (simula-find-if, simula-electric-keyword):
9318         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
9319         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
9320         (ruby-smie--forward-token, ruby-smie--backward-token)
9321         (ruby-singleton-class-p, ruby-calculate-indent)
9322         (ruby-forward-sexp, ruby-backward-sexp):
9323         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
9324         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
9325         (perl-syntax-propertize-special-constructs)
9326         (perl-backward-to-start-of-continued-exp):
9327         * lisp/progmodes/pascal.el (pascal-indent-declaration):
9328         * lisp/progmodes/octave.el (octave-function-file-p):
9329         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
9330         * lisp/progmodes/js.el (js--forward-function-decl):
9331         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
9332         (idlwave-beginning-of-block, idlwave-end-of-block)
9333         (idlwave-block-jump-out, idlwave-determine-class):
9334         * lisp/progmodes/icon.el (icon-is-continuation-line)
9335         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
9336         * lisp/progmodes/hideif.el (hide-ifdef-define):
9337         * lisp/progmodes/f90.el (f90-change-keywords):
9338         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
9339         (cperl-linefeed, cperl-electric-terminator)
9340         (cperl-find-pods-heres, cperl-fix-line-spacing)
9341         (cperl-invert-if-unless):
9342         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
9343         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
9344         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
9345         (ada-adjust-case-skeleton, ada-create-case-exception)
9346         (ada-create-case-exception-substring)
9347         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
9348         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
9349         (ada-get-indent-if, ada-get-indent-block-start)
9350         (ada-get-indent-loop, ada-get-indent-type)
9351         (ada-search-prev-end-stmt, ada-check-defun-name)
9352         (ada-goto-decl-start, ada-goto-matching-start)
9353         (ada-goto-matching-end, ada-looking-at-semi-or)
9354         (ada-looking-at-semi-private, ada-in-paramlist-p)
9355         (ada-search-ignore-complex-boolean, ada-move-to-start)
9356         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
9357         * lisp/net/quickurl.el (quickurl-grab-url):
9358         * lisp/mail/sendmail.el (mail-do-fcc):
9359         * lisp/mail/rmail.el (rmail-resend):
9360         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
9361         * lisp/mail/mail-extr.el (mail-extract-address-components):
9362         * lisp/json.el (json-read-keyword):
9363         * lisp/files.el (insert-directory):
9364         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
9365         * lisp/completion.el (symbol-under-point, symbol-before-point)
9366         (symbol-before-point-for-complete, next-cdabbrev)
9367         (add-completions-from-c-buffer):
9368         * lisp/cedet/semantic/texi.el (semantic-up-context)
9369         (semantic-beginning-of-context):
9370         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
9371         use 'forward-word-strictly' and 'backward-word-strictly' instead
9372         of 'forward-word' and 'backward-word'.
9374 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
9376         Fix doc string of tls-program
9378         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
9380 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
9382         * etc/NEWS: Document new mpc.el features
9384 2016-02-04  Leo Liu  <sdl.web@gmail.com>
9386         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
9388 2016-02-04  Alan Mackenzie  <acm@muc.de>
9390         Correctly fontify C++ initializations which "look like" functions.
9392         Fixes bug#7579.
9394         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
9395         parameter to enable handling of "anonymous" declarators in declarations.
9397         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
9398         whether a "(" opens a parameter list of a function, or an initialization of a
9399         variable.
9401 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
9403         Improve newsticker-treeview-selection-face
9405         * newst-treeview.el (newsticker-treeview-selection-face): Improve
9406         readability for dark background.
9408 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
9410         Minor fix in tagging Ruby accessors by etags
9412         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
9413         names are not literal symbols.  (Bug#22241)
9415 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
9417         Spelling fixes
9419 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
9421         Remove 'def X' from the example
9423         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
9424         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
9425         * test/etags/CTAGS.good:
9426         * test/etags/ETAGS.good_1:
9427         * test/etags/ETAGS.good_2:
9428         * test/etags/ETAGS.good_3:
9429         * test/etags/ETAGS.good_4:
9430         * test/etags/ETAGS.good_5:
9431         * test/etags/ETAGS.good_6: Adjust accordingly.
9433 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
9435         Fix network-stream-tests on MS-Windows
9437         * test/lisp/net/network-stream-tests.el (make-local-unix-server):
9438         Skip if local sockets are not supported.
9440 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
9442         * admin/notes/bug-triage: Fix bug priorities.  Explain colors in debbugs-gnu.
9444 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
9446         Disable 'timer-list'
9448         * lisp/emacs-lisp/timer-list.el: Make 'timer-list' a disabled
9449         command.
9451 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
9453         Avoid aligned_alloc static/extern collision
9455         * src/alloc.c (aligned_alloc): Define to private name when a
9456         static function, to avoid collision with lisp.h extern decl.
9457         Reported by John Yates in:
9458         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00439.html
9460 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
9462         Make `message-beginning-of-line' aware of folded headers
9464         * lisp/gnus/message.pl (message-beginning-of-header): New function which
9465         moves point to the beginning of a mail header.  The function is aware of
9466         folded headers and with non-nil argument looks for the true beginning of
9467         a header while with nil argument moves to the indented text of header's
9468         value.
9469         (message-beginning-of-line): Function is now aware of folded headers and
9470         either moves point to the indention of a header or, in visual-line-mode,
9471         searches for the beginning of the header.
9473 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
9475         Optimise ‘point in message header’ check
9477         * lisp/gnus/message.el (message-point-in-header-p): Replace two unbound
9478         regular expression matches with a single bound string match thus
9479         reducing amount of work the function is doing.
9481 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
9483         Make the `R' command get the correct relative <img>s
9485         * lisp/net/eww.el (eww-readable): Preserve the base URL so
9486         that image expansions are fetched from the right place (bug#22605).
9488 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
9490         Add a mode to list and cancel timers
9492         * doc/lispref/os.texi (Timers): Menton `timer-list'.
9494         * lisp/emacs-lisp/timer-list.el: New file.
9496 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
9498         Add new commands to allow changing the size of images
9500         * lisp/image.el (image-increase-size, image-decrease-size):
9501         New commands.
9502         (image-change-size): New function.
9504 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
9506         Allow the image scale to be a floating point number
9508         * src/image.c (compute_image_size): The scale can be a
9509         floating point number.
9511 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
9513         Add an IPv6 test
9515         * test/lisp/net/network-stream-tests.el
9516         (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
9518 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
9520         Use gnutls-serv instead of openssh
9522         * test/lisp/net/network-stream-tests.el (make-tls-server): Use
9523         gnutls-serv instead of openssh.
9525 2016-02-08  Daniel Colascione  <dancol@dancol.org>
9527         Performance improvements for vc-hg
9529         Teach vc-hg how to read some Mercurial internal data structures,
9530         allowing us to avoid the need to run hg status -A, which is very slow
9531         for large repositories.  Fall back to running hg if anything looks
9532         funny.  vc-hg now puts the _working directory_ revision in the
9533         modeline instead of the file revision, which greatly improves
9534         performance and which allows us to again skip running hg in the case
9535         that we have an active bookmark.
9537         * lisp/vc/vc-hg.el (vc-hg-state): Try calling `vc-hg-statefast'
9538         (vc-hg-symbolic-revision-styles)
9539         (vc-hg-use-file-version-for-mode-line-version)
9540         (vc-hg-parse-hg-data-structures): New user preferences
9541         (vc-hg--active-bookmark-internal, vc-hg--run-log)
9542         (vc-hg--symbolic-revision, vc-hg-mode-line-string)
9543         (vc-hg--read-u8, vc-hg--read-u32-be)
9544         (vc-hg--raw-dirstate-search, vc-hg--cached-dirstate-search)
9545         (vc-hg--parts-to-string, vc-hg--pcre-to-elisp-re)
9546         (vc-hg--glob-to-pcre, vc-hg--hgignore-add-pcre)
9547         (vc-hg--hgignore-add-glob, vc-hg--hgignore-add-path)
9548         (vc-hg--slurp-hgignore-1, vc-hg--slurp-hgignore)
9549         (vc-hg--ignore-patterns-valid-p)
9550         (vc-hg--ignore-patterns-ignored-p, vc-hg--time-to-fixnum)
9551         (vc-hg--file-ignored-p, vc-hg--read-repo-requirements)
9552         (vc-hg--requirements-understood-p, vc-hg--dirstate-scan-cache)
9553         (vc-hg-state-fast): New functions.
9554         (vc-hg--hgignore-patterns, vc-hg--hgignore-filenames)
9555         (vc-hg--cached-ignore-patterns, vc-hg--dirstate-scan-cache)
9556         (vc-hg--dirstate-scan-cache): New internal variables.
9557         * lisp/vc/vc-hooks.el (vc-refresh-state): Invoke vc find-file-hook
9558         before updating modeline.
9560 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
9562         Skip TLS tests if we don't have openssl
9564         * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
9565         TLS tests if we don't have openssl and GnuTLS.
9567 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
9569         Automatically scale images up on high-density screens
9571         * doc/lispref/display.texi (ImageMagick Images): Mention :scale.
9572         (Defining Images): Mention image-scaling-factor.
9574         * lisp/image.el (image-compute-scaling-factor): New function
9575         (bug#22172).
9576         (create-image): Use it.
9577         (image-scaling-factor): New variable.
9579         * src/image.c (compute_image_size): Take :scale into account.
9581 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
9583         Ensure progress when fetching from the queue
9585         * lisp/url/url-queue.el (url-queue-check-progress): Ensure
9586         that we have progress when fetching queued requests (bug#22576).
9588 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
9590         Make mail-extract-address-components return the user name more
9592         * lisp/mail/mail-extr.el (mail-extract-address-components):
9593         Return the name even if it's the same as the mailbox name (if
9594         `mail-extr-ignore-single-names' isn't set) (bug#22594).
9596 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
9598         Message no longer warns about unknown top level domains
9600 2016-02-07  Jarno Malmari  <jarno@malmari.fi>
9602         Add tests for url-auth
9604         * test/lisp/url/url-auth-tests.el: New file.
9606 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
9608         Add a TLS connection test
9610         * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
9611         a TLS connection test.
9613 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
9615         Add more network tests
9617         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
9618         New test.
9620 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
9622         Add network tests
9624         * test/lisp/net/network-stream-tests.el: New suite of network tests.
9626 2016-02-07  Foo  <rasmus@gmx.us>
9628         Allow various Gnus and Message address variables to be functions
9630         * doc/misc/gnus.texi (To From Newsgroups):
9631         gnus-ignored-from-addresses can be a function.
9633         * doc/misc/message.texi (Wide Reply):
9634         message-dont-reply-to-names can be a function.
9636         * lisp/gnus/gnus-icalendar.el (gnus-icalendar-identities):
9637         message-alternative-emails can be a function.
9639         * lisp/gnus/gnus-notifications.el (gnus-notifications):
9640         message-alternative-emails can be a function (bug#22315).
9642         * lisp/gnus/gnus-sum.el
9643         (gnus-summary-from-or-to-or-newsgroups):
9644         gnus-ignored-from-addresses can be a function (bug#22315).
9646 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
9648         Fix typo in Gnus regexp
9650         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Fix
9651         typo in last change to this regexp (bug#22592).
9653 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
9655         Port to FreeBSD x86
9657         Reported by Herbert J. Skuhra in:
9658         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00336.html
9659         * src/lisp.h (NONPOINTER_BITS) [__FreeBSD__]: Zero in this case too,
9660         since malloc always returns a multiple of 8 in FreeBSD.
9662 2016-02-07  Alan Mackenzie  <acm@muc.de>
9664         On leaving CC Mode, clean up by removing character properties.
9666         * lisp/progmodes/cc-mode.el (c-leave-cc-mode-mode): Remove from the buffer
9667         all instances of the text properties/extents category, syntax-table,
9668         c-is-sws, c-in-sws, c-type, and c-awk-NL-prop.
9670 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
9672         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Don't use
9673         the no-longer-existing message-valid-fqdn-regexp variable.
9675 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
9677         Remove message-valid-fqdn-regexp, since it changes too much now
9678         * lisp/gnus/message.el (message-valid-fqdn-regexp): Remove.
9679         (message-bogus-recipient-p): Don't use it any more.
9680         (message-make-fqdn): Ditto.  Suggested by Lars-Johan Liman.
9682 2016-02-06  Paul van der Walt  <paul@denknerd.org>  (tiny change)
9684         * lisp/gnus/message.el (message-subject-re-regexp): Also match
9685         "Re :" as a "Re:" prefix (commonly used in France).
9687 2016-02-06  Adam Sjøgren  <asjo@koldfront.dk>
9689         * lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
9691 2016-02-06  David Edmondson  <dme@dme.org>
9693         src/process.c Correctly convert AF_INET6 addresses
9694         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
9695         converted to a list of 16 bit quantities by
9696         conv_sockaddr_to_lisp().  conv_lisp_to_sockaddr() should follow the
9697         same scheme rather than expecting a (longer) list of 8 bit
9698         quantities.
9700 2016-02-06  Martin Jesper Low Madsen  <martin@martinjlowm.dk>  (tiny change)
9702         * lisp/gnus/auth-source.el (auth-source-macos-keychain-search):
9703         Search for all host/port (or protocol) combinations for a match in
9704         the OS X keychain.
9706 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
9708         Remove nonsensical setting of gnus-newsgroup-unseen
9710         * lisp/gnus/gnus-sum.el (gnus-update-marks): Remove nonsensical
9711         setting of gnus-newsgroup-unseen.
9713 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
9715         Use underline on all terminals that support it
9717         * lisp/subr.el (read-multiple-choice): Use
9718         display-supports-face-attributes-p instead of
9719         display-graphic-p to determine whether we can use underlining.
9721 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
9723         Make the nsm query say what it did after the user interaction
9725         * lisp/net/nsm.el (nsm-query): Issue a message about
9726         aborting/accepting messages (suggested by N. Jackson)
9727         (bug#22531).
9729 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
9731         Omit XLI (init) == 0 optimization in make-vector
9733         * src/alloc.c (Fmake_vector): Simplify by omitting the (XLI (init)
9734         == 0) case, as this optimization is probably not worth the hassle.
9735         Just for the record, the test for that case could have been
9736         (XLI (init) % ((EMACS_UINT) -1 / UCHAR_MAX) == 0) (!),
9737         assuming the typical platform with no padding bits and where
9738         conversion to int omits the most significant bits.
9740 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
9742         * autogen.sh: Port to dash (Bug#22556).
9744 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
9746         Minor cleanup for Tramp "doas".
9748         * doc/misc/tramp.texi (Inline methods): Add "doas" method.
9750         * etc/NEWS: Add Tramp connection method "doas".
9752         * lisp/net/tramp-sh.el (tramp-methods) <doas>:
9753         Add `tramp-remote-shell-args'.
9755 2016-02-05  Xi Lu  <lx@shellcodes.org>
9757         * lisp/net/tramp-sh.el (tramp-methods) <doas>: Add.  (Bug#22542)
9759         (tramp-default-user-alist): Add rule for "doas".
9760         (top): Completion function for "doas" is
9761         `tramp-completion-function-alist-su'.
9763 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
9765         Restore the window configuration
9767         * lisp/net/nsm.el (nsm-query-user): Restore the window
9768         configuration (bug#22532).
9770 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
9772         Use an X popup in read-multiple-choice if running from a mouse command
9774         * lisp/subr.el (read-multiple-choice): Use an X popup if
9775         called from a mouse action (bug#19368).
9777 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
9779         Display cursor in echo area when prompting
9781         * lisp/subr.el (read-multiple-choice): Display the cursor in
9782         the echo area when prompting (bug#19368).
9784 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
9786         Make NSM prompting clearer
9788         * lisp/net/nsm.el (nsm-query-user): Use read-multiple-choice
9789         to prompt in a nicer way (bug#19368).
9791 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
9793         Underline read-multiple-choice-face
9795         * lisp/faces.el (read-multiple-choice-face): Also underline
9796         the choice.
9798 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
9800         Make the read-multiple-choice prompt a bit prettier
9802         * doc/lispref/commands.texi (Reading One Event): Mention
9803         read-multiple-choice-face.
9805         * lisp/subr.el (read-multiple-choice): Make the prompting a bit
9806         prettier.
9808 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
9810         Prefer memcpy and memset to doing it by hand
9812         * src/alloc.c (Fmake_vector):
9813         * src/ccl.c (setup_ccl_program):
9814         Use memset to clear array.
9815         * src/alloc.c (Fvector, Fmake_byte_code):
9816         * src/charset.c (Fdefine_charset_internal):
9817         Use memcpy to copy array.
9819 2016-02-04  Nicolas Petton  <nicolas@petton.fr>
9821         Do not ignore redirections of 301, 302 and 307 status codes
9823         The current version of HTTP/1.1 (RFC 7231) no longer requires
9824         confirmation on 301, 302 or 307 status codes, therefore we do not have
9825         to ignore redirects for other requests than GET and HEAD.
9827         * lisp/url/url-http.el (url-http-parse-headers): Do not ignore 301, 302
9828         and 307 redirects for other requests than GET and HEAD.
9830 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
9832         * lisp/net/eww.el (eww-switch-to-buffer): Use pop-to-buffer-same-window instead.
9834 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
9836         Simplify USE_ALIGNED_ALLOC
9838         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify, now that we’ve merged
9839         in the emacs-25 changes.  Omit no-longer-needed decl for aligned_alloc.
9841 2016-02-04  Eric Abrahamsen  <eric@ericabrahamsen.net>
9843         Honor docstring of gnus-group-get-new-news
9845         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg
9846         is t, but non-numeric, unconditionally consider all groups to need
9847         updating.
9849 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
9851         New function read-multiple-choice
9853         * doc/lispref/commands.texi (Reading One Event): Document
9854         read-multiple-choice.
9856         * lisp/faces.el (read-multiple-choice-face): New face.
9858         * lisp/subr.el (read-multiple-choice): New function.
9860 2016-02-04  John Wiegley  <johnw@newartisans.com>
9862         Merge from origin/emacs-25
9864         ee73997 Make erc work better when encountering unknown prefix chars
9865         b99141d Make erc completion case-insensitive again
9866         66c4620 Make complection in erc use consistent casing
9867         8c562b2 Make /QUIT in erc more robust
9868         d93d2c5 Make tracking faces in Emacs work more reliably
9869         af6ab7e Make shr not bug out on images on non-graphical displays
9870         3311f40 Fix bookmark display widths
9871         d90ab1e Fix typo in eww-make-unique-file-name
9872         7f81825 Make it possible to TAB to input fields
9873         a43a1dc Insert complete alt texts when images are disabled
9874         56ed4e1 Allow eww text fields to grow
9875         66b315c Make erc work when subword-mode is switched on
9876         255b68f Fix IMAP doc example
9877         91557f5 Quoting fixes in doc strings and diagnostics
9878         2c0dc9f Fix warning message in hack-local-variables
9879         504696d Etags: yet another improvement in Ruby tags
9880         8784ebf Fix x-popup-menu on TTYs without a mouse
9881         8b87ecb * lisp/emacs-lisp/map.el: Improvements to the docstring of the
9882                 pcase macro
9883         6191003 Use pop-to-buffer-same-window in eww
9884         fe321fd * autogen.sh: Revert all recent changes.
9885         74ebd4a * make-dist: Updates related to nt/.
9886         737193a * make-dist: Add modules/.
9887         3696bf2 * make-dist: Update for super-special file that can't live in etc/.
9888         a4278e2 Fix failure to compile ns-win.el in parallel builds
9889         860da4d Fix names of tags generated for Ruby accessors
9890         f6213ce Fix file-name recognition in 'etags'
9891         e42e662 Change Ruby file names and extensions recognized by 'etags'
9892         58bfb6a More improvements for Ruby support in 'etags'
9893         c04e911 Add --git-config option to autogen.sh
9894         5713466 Fix editing undo changes in eww fields
9895         51362d6 Allow the user more control of popping up the eww window
9896         ee0fbd8 Make eww-browse-url with new-window parameter work again
9897         9c3142d Clean up eww code slightly
9898         cb035f3 Don't insert nil faces in shr
9899         4c3fae3 ; * lisp/progmodes/prolog.el: Remove some obsolete commentary.
9900         93f2153 Improve the custom type of some user options.
9901         9f60d7e Mark some risky calendar variables.
9902         1d07dcd Highlight two additional SCSS keywords
9903         ee8b466 Recommend enabling integrity-checking in git
9904         e639e10 Some corrections in Elisp manual
9905         d766ca8 Chatter when autogen.sh changes Git configuration
9906         3b734e1 * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
9907         43cb9f8 Omit unnecessary history from Lisp intro
9908         2fbd1da * etc/HISTORY: Add some more history, plus git tags.
9909         c90e1b4 Improve elisp “Security Considerations” doc
9910         cedd7ca autogen.sh now arranges for git to check hashes
9911         86ce76b ; Fix ChangeLog.2 commit ID.
9912         7b1d2b1 Fix (c & 040) typo in emergency escapes
9913         a8273da Fix display of overlay strings with 'display' and 'box' property
9914         fc48106 Fix imap-starttls-open
9915         cdecbed Fix return value of imap-starttls-open
9916         20c7e34 ; * etc/NEWS: Fix renamed command name
9917         98bdbdb Correct reference to DARWIN_OS preprocessor symbol
9918         b250d29 Spelling fix
9919         b920a0e Spelling fixes
9920         93b144b Pacify GCC on C library without glibc API
9922 2016-02-04  John Wiegley  <johnw@newartisans.com>
9924         Merge from origin/emacs-25
9926         ea26c8a * lisp/net/browse-url.el (browse-url-default-browser): Lower
9927                 priority of non-free Chrome.
9928         0fac75f Improve the custom type of some user options.
9929         2df0e04 Highlight CSS variables with variable name face
9930         3cf5e81 * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not
9931                 user-serviceable.
9932         2a5233c Mark some user options that can get evalled as risky.
9933         39b166f Disable DebPrint in sys_read on MS-Windows
9934         9fd0189 ;Fix ChangeLog entry
9935         4bb7233 Fix typos in Introduction to Emacs Lisp manual
9937 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
9939         Allow sending empty hidden values in eww
9941         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
9942         values (bug#22388).
9944         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
9946         Backport:
9948 2016-02-04  David Edmondson  <dme@dme.org>
9950         Make erc work better when encountering unknown prefix chars
9952         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
9953         instead of erroring out on unknown prefix chars (bug#22380).
9955 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
9957         Add a new command to switch between erc buffers
9959         * doc/misc/eww.texi: Document eww-switch-to-buffer and its keybinding
9960         * etc/NEWS: Mention new command
9961         * lisp/net/eww.el (eww-mode-map): Bind eww-switch-to-buffer to "s"
9962         (eww-mode-map): Add menu item
9963         (eww-switch-to-buffer): New command
9965 2016-02-04  David Edmondson  <dme@dme.org>
9967         Make erc work better when encountering unknown prefix chars
9969         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
9970         instead of erroring out on unknown prefix chars (bug#22380).
9972 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
9974         Allow sending empty hidden values in eww
9976         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
9977         values (bug#22388).
9979 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
9981         Make erc completion case-insensitive again
9983         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
9984         case-insensitive again (bug#11360).
9986 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
9988         Make complection in erc use consistent casing
9990         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
9991         case in the complection consistent (bug#18509).
9993 2016-02-04  Francis Litterio  <flitterio@gmail.com>
9995         Make /QUIT in erc more robust
9997         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
9998         issuing /QUIT to disconnected servers (bug#22099).
10000 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
10002         Make tracking faces in Emacs work more reliably
10004         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
10005         faces to avoid later ambiguity (bug#22424).
10007 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
10009         Make shr not bug out on images on non-graphical displays
10011         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
10012         images on non-graphical displays (bug#22327).
10014 2016-02-04  Andrew Hyatt  <ahyatt@gmail.com>
10016         Remove packages obsoleted before Emacs 24.
10018         In accordance with the policy discussed in the emacs-devel list,
10019         packages that have been obsoleted for a full major release cycle are up
10020         for deletion.
10022         This removes almost all packages that are now eligible for deletion,
10023         with the exception of "cl-compat", which seems it is likely to still be
10024         used, and "optional", which offers some functionality that doesn't have
10025         a replacement yet.
10027 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
10029         Fix bookmark display widths
10031         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
10032         preparing it so that the widths are computed correctly (bug#22328).
10034 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
10036         Fix typo in eww-make-unique-file-name
10038         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
10039         actually work.
10041 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
10043         Make it possible to TAB to input fields
10045         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
10046         input fields (bug#22540).
10048 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
10050         Insert complete alt texts when images are disabled
10052         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
10053         the complete alt/title string (bug#22293).
10055 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
10057         Allow eww text fields to grow
10059         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
10060         grow when typing in stuff that's longer than the original width.
10062 2016-02-03  Dima Kogan  <dima@secretsauce.net>
10064         Make erc work when subword-mode is switched on
10066         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
10067         (erc-bounds-of-word-at-point): New functions to do word-based
10068         things when subword-mode is switched on.
10070         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
10071         (bug#17558).
10073 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
10075         Fix IMAP doc example
10077         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
10079 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
10081         Quoting fixes in doc strings and diagnostics
10083         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
10084         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
10085         (mml-smime-get-ldap-cert):
10086         Follow user style preference when quoting diagnostics.
10088 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
10090         Mention context when resume from emergency escape
10092         That way, if the user has been doing something else for a while,
10093         they are reminded of the situation when restarting Emacs,
10094         and are more likely to understand the two questions.
10095         * doc/emacs/trouble.texi (Emergency Escape): Document this.
10096         * src/keyboard.c (handle_interrupt): Implement this.
10098 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
10100         Fix warning message in hack-local-variables
10102         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
10103         the original buffer name in the warning message.  (Bug#21681)
10105 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
10107         Etags: yet another improvement in Ruby tags
10109         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
10110         Ruby accessor definitions.  (Bug#22241)
10112         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
10113         accessors and multiline definitions.
10114         * test/etags/ETAGS.good_1:
10115         * test/etags/ETAGS.good_2:
10116         * test/etags/ETAGS.good_3:
10117         * test/etags/ETAGS.good_4:
10118         * test/etags/ETAGS.good_5:
10119         * test/etags/ETAGS.good_6:
10120         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
10122 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
10124         Fix x-popup-menu on TTYs without a mouse
10126         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
10127         for the TTY case without a mouse.  (Bug#22538)
10129 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
10131         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
10133 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
10135         Port aligned_alloc decl to Cygwin.
10137         Problem reported by Ken Brown (Bug#22522#38).
10138         * configure.ac (aligned_alloc): Check for decl too.
10139         * src/lisp.h (aligned_alloc): Declare if not already declared.
10141 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
10143         autogen.sh now configures git only on request
10145         * autogen.sh (do_autoconf, do_git): New vars.
10146         Support new arguments --help, all, autoconf, git.
10147         By default, just do autoconf-related configuration, not git.
10148         Prefer 'echo' to 'cat <<EOF ...', as this tends to avoid temp files.
10149         If GNU cp is available, use it to backup .git/config before
10150         changing it.  When configuring git, chatter about what is being
10151         done, and configure git to check hashes.  Avoid some duplicate
10152         file name specification when creating git hooks.
10154         * GNUmakefile (ALL_IF_GIT): New macro.
10155         (configure): Use it.
10156         * INSTALL.REPO: Suggest './autogen.sh all'.
10158 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
10160         Use pop-to-buffer-same-window in eww
10162         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
10163         switch-to-buffer (bug#22244).
10165 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
10167         * autogen.sh: Revert all recent changes.
10169 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
10171         Build with C11 if available
10173         * admin/merge-gnulib (GNULIB_MODULES): Add std-gnu11.
10174         * m4/std-gnu11.m4: New file, from gnulib.
10175         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
10177 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
10179         Update gnulib copy
10181         * doc/misc/texinfo.tex: Copy from gnulib.
10183 2016-02-02  Glenn Morris  <rgm@gnu.org>
10185         * make-dist: Updates related to nt/.
10187         * make-dist: Add modules/.
10189         * make-dist: Update for super-special file that can't live in etc/.
10191 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
10193         Fix failure to compile ns-win.el in parallel builds
10195         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
10196         dependency on $(lispsource)/international/charprop.el.
10197         (Bug#22501)
10199 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
10201         Fix names of tags generated for Ruby accessors
10203         * lib-src/etags.c (Ruby_functions): Don't include the leading
10204         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
10206         * test/etags/ETAGS.good_1:
10207         * test/etags/ETAGS.good_2:
10208         * test/etags/ETAGS.good_3:
10209         * test/etags/ETAGS.good_4:
10210         * test/etags/ETAGS.good_5:
10211         * test/etags/ETAGS.good_6:
10212         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
10214 2016-02-02  Glenn Morris  <rgm@gnu.org>
10216         * lisp/vc/add-log.el (change-log-directory-files, find-change-log):
10217         Doc tweaks.
10219 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
10221         Fix file-name recognition in 'etags'
10223         * lib-src/etags.c (get_language_from_filename): If FILE includes a
10224         leading directory, compare only its basename to the known file
10225         names in lang_names[].
10227         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
10228         renaming.
10229         * test/etags/ETAGS.good_1:
10230         * test/etags/ETAGS.good_2:
10231         * test/etags/ETAGS.good_3:
10232         * test/etags/ETAGS.good_4:
10233         * test/etags/ETAGS.good_5:
10234         * test/etags/ETAGS.good_6:
10235         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
10236         to the results in Makefile due to the above etags.c fix.
10238 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
10240         Change Ruby file names and extensions recognized by 'etags'
10242         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
10243         of Ruby files.
10244         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
10245         <lang_names>: Add Ruby_filenames to the Ruby entry.
10246         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
10247         (Bug#22241)
10249 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
10251         Port better to platforms lacking aligned_alloc
10253         Problem reported by Ken Brown (Bug#22522).
10254         * src/lisp.h (hybrid_aligned_alloc)
10255         [HYBRID_MALLOC && !HAVE_ALIGNED_ALLOC]: New decl.
10257 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
10259         Port malloc.h hygiene fix to LTO
10261         * src/alloc.c (__malloc_initialize_hook):
10262         Make it externally visible (Bug#22522).
10264 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
10266         More improvements for Ruby support in 'etags'
10268         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
10269         alias_method.  Identify constants even if the assignment is not
10270         followed by whitespace.  (Bug#22241)
10272         * test/etags/ruby-src/test1.ruby: Add tests for constants,
10273         accessors, and alias_method.
10274         * test/etags/ETAGS.good_1:
10275         * test/etags/ETAGS.good_2:
10276         * test/etags/ETAGS.good_3:
10277         * test/etags/ETAGS.good_4:
10278         * test/etags/ETAGS.good_5:
10279         * test/etags/ETAGS.good_6:
10280         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
10282 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
10284         Add --git-config option to autogen.sh
10286         * autogen.sh: New options --git-config, --help.
10287         (git_config): New shell var.  Alter function to respect this var.
10289 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
10291         Fix editing undo changes in eww fields
10293         * eww.el (eww-tag-form): Don't overwrite initial form data in text
10294         fields.
10295         (eww-process-text-input): Make `M-t' at the end of text fields work
10296         better (bug#19085).
10298 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
10300         Allow the user more control of popping up the eww window
10302         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
10303         Michael Heerdegen) (bug#22244).
10305 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
10307         Make eww-browse-url with new-window parameter work again
10309         * eww.el (eww-browse-url): Stay in the same buffer if we're
10310         already in a eww mode buffer so that eww-browse-url with a
10311         new-window parameter works (bug#22244).
10313 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
10315         Clean up eww code slightly
10317         * eww.el (eww-browse-url): Clean up code slightly.
10319 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
10321         Don't insert nil faces in shr
10323         * shr.el (shr-insert-table): Don't add nil faces, because that
10324         will show up in *Messages* as "Invalid face reference: nil [32
10325         times]".
10327 2016-02-01  Glenn Morris  <rgm@gnu.org>
10329         Make find-change-log prefer a VCS root, if no ChangeLog exists.
10331         * lisp/vc/add-log.el (change-log-directory-files): New option.
10332         (find-change-log): Respect change-log-directory-files.
10333         * doc/emacs/maintaining.texi (Change Log Commands):
10334         Mention change-log-directory-files.
10336 2016-02-01  Glenn Morris  <rgm@gnu.org>
10338         Improve the custom type of some user options.
10340         * lisp/autoinsert.el (auto-insert-alist):
10341         * lisp/replace.el (query-replace-from-to-separator):
10342         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
10343         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
10344         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
10345         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
10346         (prolog-mode-specificators, prolog-determinism-specificators)
10347         (prolog-directives, prolog-program-name, prolog-program-switches)
10348         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
10349         (prolog-prompt-regexp): Improve custom type.
10351 2016-02-01  Glenn Morris  <rgm@gnu.org>
10353         Mark some risky calendar variables.
10355         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
10356         Remove risky setting for deleted obsolete alias.
10357         (calendar-chinese-standard-time-zone-name)
10358         (calendar-chinese-daylight-saving-start)
10359         (calendar-chinese-daylight-saving-end):
10360         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
10361         (calendar-european-date-display-form)
10362         (calendar-american-date-display-form, calendar-date-display-form):
10363         * lisp/calendar/diary-lib.el (diary-remind-message)
10364         (diary-header-line-format):
10365         * lisp/calendar/solar.el (calendar-time-display-form)
10366         (calendar-location-name): Mark as risky.
10368 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
10370         Highlight two additional SCSS keywords
10372         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
10373         identifiers on the form !foo.
10374         (scss-bang-ids): New defconst holding SCSS identifiers on the form
10375         !foo.
10376         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
10377         `font-lock-builtin-face'.
10379         * test/indent/css-mode.css: Add bang rule test case.
10381         * test/indent/scss-mode.css: Add test cases for the introduced bang
10382         rules.
10384 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
10386         Recommend enabling integrity-checking in git
10388         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
10390         This is related to the autogen.sh changes made by Paul Eggert in
10391         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
10392         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
10393         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
10394         "Recommend these .gitconfig settings for git integrity." at
10395         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
10397 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
10399         Some corrections in Elisp manual
10401         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
10402         argument POSITION.
10403         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
10404         is an option.
10405         * doc/lispref/display.texi (Refresh Screen): Describe optional
10406         argument FRAME of `redraw-frame'.
10407         (Attribute Functions): Describe optional argument CHARACTER of
10408         `face-font'.
10409         (Defining Images): `image-load-path' is an option.
10410         (Beeping): `ring-bell-function' is an option.
10411         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
10412         argument of `set-frame-size' is optional.
10413         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
10414         is optional.
10415         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
10416         `set-transient-map'.
10417         * doc/lispref/minibuf.texi (Text from Minibuffer):
10418         `read-regexp-defaults-function' is an option.
10419         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
10420         * doc/lispref/modes.texi (Mode Line Variables):
10421         `mode-line-position' and `mode-line-modes' are variables, not
10422         options.
10423         * doc/lispref/strings.texi (Creating Strings): The START argument
10424         of `substring' is optional.
10425         * doc/lispref/text.texi (Buffer Contents): Describe optional
10426         argument NO-PROPERTIES of `thing-at-point'.
10427         (User-Level Deletion): Both arguments of
10428         `delete-trailing-whitespace' are optional.
10429         (Margins): Use @key{RET} instead of @kbd{RET}.
10430         * doc/lispref/windows.texi (Display Action Functions): Write
10431         non-@code{nil} instead of non-nil.
10432         (Choosing Window Options): The WINDOW arg of
10433         `split-window-sensibly' is optional.
10434         (Choosing Window Options): Write non-@code{nil} instead of
10435         non-nil.
10436         (Window Start and End): Both args of `window-group-end' are
10437         optional.
10439         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
10440         to POSITION to keep consisteny with doc-string.
10442 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
10444         Double static heap size.
10446         * src/sheap.h (STATIC_HEAP_SIZE): Double it, since it was too
10447         small on FreeBSD (Bug#22086).
10449 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
10451         Chatter when autogen.sh changes Git configuration
10453         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
10455 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
10457         * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
10459 2016-02-01  Michael Albinus  <michael.albinus@gmx.de>
10461         Fix Bug#20821
10463         * lisp/net/tramp.el (tramp-file-name-handler):
10464         * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name):
10465         Use `tramp-drop-volume-letter'.  (Bug#20821)
10467 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
10469         Omit unnecessary history from Lisp intro
10471         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
10472         (Conclusion): Reword so as not to talk about earlier versions
10473         of Emacs in what should be an intro.
10475 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
10477         * etc/HISTORY: Add some more history, plus git tags.
10479 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
10481         Improve elisp “Security Considerations” doc
10483         * doc/lispref/os.texi (Security Considerations):
10484         Mention call-process and rename-file as opposed to shell commands.
10485         Add some more cross-references.
10487 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
10489         autogen.sh now arranges for git to check hashes
10491         Suggested by Karl Fogel in:
10492         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
10493         * autogen.sh: Do "git config transfer.fsckObjects true".
10495 2016-01-31  Dave Barker  <kzar@kzar.co.uk>
10497         Add ability to give rcirc servers an alias name
10499         * lisp/net/rcirc.el (rcirc-server-alist): Add :server-alias
10500         customization option.
10501         (rcirc, rcirc-connect): Take server alias into account.
10503 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
10505         Fix (c & 040) typo in emergency escapes
10507         * src/keyboard.c (handle_interrupt): Fix recently-introduced
10508         typo (040 should have been ~040) that silently suppressed
10509         auto-saves after emergency escapes.  Redo comparison to avoid
10510         similar problems.
10512 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
10514         Port new hybrid malloc to FreeBSD
10516         Problem reported by Wolfgang Jenkner in: http://bugs.gnu.org/22086#118
10517         * src/gmalloc.c (__malloc_initialize_hook, __after_morecore_hook)
10518         (__morecore) [HYBRID_MALLOC]: Define in this case too.
10520 2016-01-31  Wolfgang Jenkner  <wjenkner@inode.at>
10522         * configure.ac: Stop using mmap for buffers for FreeBSD.
10524 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
10526         Fix display of overlay strings with 'display' and 'box' property
10528         * src/xdisp.c (get_next_display_element): Take the box face from
10529         display stack level that comes from a buffer, not an overlay
10530         string.  (Bug#22499)
10532 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
10534         Fix imap-starttls-open
10536         * lisp/net/imap.el (imap-starttls-open): Log imap process
10537         output.  Call imap-parse-greeting.  (Bug#22500)
10539 2016-01-31  Michael Albinus  <michael.albinus@gmx.de>
10541         Merge changes from Tramp repository
10543         * doc/misc/Makefile.in (${buildinfodir}/tramp.info tramp.html):
10544         No EXTRA_OPTS needed.
10546         * doc/misc/tramp.texi: Merge changes from Emacsemacs-25
10547         branch, especially for @trampfn{}.
10548         (Top): Move @ifnottex down.
10549         (History): XEmacs support has been removed.
10550         (GVFS based methods, Remote processes): Do not use emacsgvfs flag.
10551         (Auto-save and Backup): Use both syntax versions.
10552         (File name Syntax): Remark on IPv6 adresses is valid for
10553         unified syntax only.
10555         * doc/misc/trampver.texi: Do not set emacsgvfs flag.
10557 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
10559         Fix return value of imap-starttls-open
10561         * lisp/net/imap.el (imap-starttls-open): Fix return value.
10563 2016-01-31  John Wiegley  <johnw@newartisans.com>
10565         Correct reference to DARWIN_OS preprocessor symbol
10567         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
10568           not be defined.
10570 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
10572         Spelling fixes
10574         Spelling fix
10576         Spelling fixes
10578 2016-01-30  Glenn Morris  <rgm@gnu.org>
10580         * lisp/vc/add-log.el (find-change-log): Use locate-dominating-file.
10582 2016-01-30  Matthew Carter  <m@ahungry.com>
10584         Quote table names for postgres listings (sql-mode)
10586         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
10587           unquoted table names to the completion list.
10589 2016-01-30  Glenn Morris  <rgm@gnu.org>
10591         Change Smerge "Mine" and "Other" for "Upper" and "Lower.  (Bug#20878)
10593         * lisp/vc/smerge-mode.el (smerge-diff-switches)
10594         (smerge-context-menu, smerge-match-conflict, smerge-swap): Doc fixes.
10595         (smerge-upper, smerge-upper-face, smerge-keep-upper)
10596         (smerge-diff-base-upper): Rename from smerge-mine, smerge-mine-face,
10597         smerge-keep-mine, smerge-diff-base-mine.  Update all uses.
10598         (smerge-mine-face, smerge-other-face): Remove obsolete face aliases.
10599         (smerge-lower, smerge-lower-face, smerge-lower-re, smerge-keep-lower)
10600         (smerge-diff-base-lower): Rename from smerge-other, smerge-other-face,
10601         smerge-other-re, smerge-keep-other, smerge-diff-base-lower.
10602         Update all uses.
10603         (smerge-basic-map): Add "l" and "u" bindings.
10604         (smerge-mode-menu): Update menu bindings for renaming.
10605         (smerge-font-lock-keywords): Update face names.
10606         (smerge-match-names): Update names.
10607         (smerge-diff-upper-lower): Rename from smerge-diff-mine-other.
10608         (smerge-match-conflict, smerge-ediff): Rename local variables.
10609         (smerge-makeup-conflict): Relabel markers.
10610         (smerge-parsep-re): Use renamed variables.
10612 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
10614         Port recent my_edata change to MS-Windows
10616         * src/lastfile.c (my_edata): Also define if WINDOWSNT.
10618 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
10620         Pacify GCC on C library without glibc API
10622         Without this change, with --enable-gcc-warnings GCC would complain
10623         “error: redundant redeclaration of ‘aligned_alloc’”.
10624         * configure.ac: Simplify aligned_alloc testing.
10625         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
10626         since the simplified configure.ac no longer checks for that.
10627         Don’t declare if HAVE_ALIGNED_ALLOC.
10628         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
10630 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
10632         Tell Automake the new lib/Makefile.am is OK
10634         * lib/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
10636 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
10638         Make it easy to override preferred-branch test
10640         * Makefile.in (preferred-branch-is-current):
10641         Rename from emacs-25-branch-is-current.  All uses changed.
10642         (PREFERRED_BRANCH): New macro.
10644 2016-01-30  Glenn Morris  <rgm@gnu.org>
10646         * lisp/net/browse-url.el (browse-url-default-browser):
10647         Lower priority of non-free Chrome.
10649 2016-01-30  Glenn Morris  <rgm@gnu.org>
10651         Improve the custom type of some user options.
10653         * lisp/desktop.el (desktop-minor-mode-table):
10654         * lisp/man.el (Man-frame-parameters):
10655         * lisp/midnight.el (midnight-delay):
10656         * lisp/speedbar.el (speedbar-select-frame-method):
10657         * lisp/tooltip.el (tooltip-frame-parameters):
10658         * lisp/tree-widget.el (tree-widget-space-width):
10659         * lisp/type-break.el (type-break-keystroke-threshold):
10660         * lisp/woman.el (woman-imenu-generic-expression):
10661         * lisp/cedet/ede.el (ede-debug-program-function):
10662         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
10663         * lisp/emulation/viper-keym.el (viper-toggle-key):
10664         * lisp/erc/erc-networks.el (erc-server-alist):
10665         * lisp/gnus/message.el (message-deletable-headers, message-signature):
10666         * lisp/mail/mailalias.el (mail-directory-stream):
10667         * lisp/play/tetris.el (tetris-x-colors):
10668         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
10670 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
10672         Highlight CSS variables with variable name face
10674         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
10675         (css--font-lock-keywords): Highlight variables in
10676         `font-lock-variable-name-face'.
10678 2016-01-30  Glenn Morris  <rgm@gnu.org>
10680         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
10682 2016-01-30  Glenn Morris  <rgm@gnu.org>
10684         Mark some user options that can get evalled as risky.
10686         * lisp/allout.el (allout-title):
10687         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
10688         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
10689         * lisp/progmodes/gud.el (gud-tooltip-display):
10690         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
10691         Mark as risky.
10693 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
10695         Disable DebPrint in sys_read on MS-Windows
10697         * src/w32.c (sys_read): Disable a debugging print that is normal
10698         when non-blocking reads are retried.
10700 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
10702         ;Fix ChangeLog entry
10704 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
10706         Fix typos in Introduction to Emacs Lisp manual
10708         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
10709         (kill-new function, Digression into C)
10710         (Complete forward-sentence, Divide and Conquer, Find a File)
10711         (lengths-list-many-files, Columns of a graph, defcustom)
10712         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
10713         <dbastos@toledo.com>.
10715 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
10717         Shrink static heap a bit
10719         * src/sheap.h: Include lisp.h, for Lisp_Object.
10720         (STATIC_HEAP_SIZE): Now an enum constant, not a macro.
10721         Make it 2 MiB * sizeof (Lisp_Object), which is a bit more
10722         conservative than the old value.
10723         (Bug#22086)
10725 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
10727         Fix extern symbols defined and not used
10729         * src/alloc.c: Always include <signal.h>.
10730         (malloc_warning) [!SIGDANGER && (SYSTEM_MALLOC || HYBRID_MALLOC)]:
10731         Do not define; unused.
10732         * src/emacs.c, src/lisp.h (might_dump) [!DOUG_LEA_MALLOC]: Now static.
10733         * src/gmalloc.c (gdefault_morecore): Rename from __default_morecore,
10734         to avoid collision with glibc.  Now static.  All uses changed.
10735         * src/lastfile.c (my_edata): Define only if
10736         ((!defined SYSTEM_MALLOC && !defined HYBRID_MALLOC && !defined
10737         WINDOWSNT) \ || defined CYGWIN || defined DARWIN_OS).
10738         (Bug#22086)
10740 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
10742         Build lib/e-*.o only on platforms that need it
10744         * configure.ac (hybrid malloc): Simplify configuration.
10745         (SHEAP_OBJ): Remove; no longer needed.
10746         (HYBRID_MALLOC): New var. Subst it.
10747         (HYBRID_MALLOC_LIB): New Automake conditional.
10748         * lib/Makefile.am (noinst_LIBRARIES): Add libegnu.a only if
10749         HYBRID_MALLOC_LIB.
10750         (libegnu_a_CPPFLAGS): Omit AM_CPPFLAGS; not needed.
10751         (MOSTLYCLEANFILES): Add libegnu.a.
10752         * src/Makefile.in (SHEAP_OBJ): Remove.
10753         (HYBRID_MALLOC): New macro.
10754         (base_obj): Use it to conditionally add sheap.o.
10755         (LIBEGNU_ARCHIVE): New macro.
10756         ($(LIBEGNU_ARCHIVE)): New rule, replacing $(lib)/libegnu.a.
10757         All uses of the latter replaced by the former.
10758         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify configuration.
10759         Correct misspelling ALIGNED_ALLOC to HAVE_ALIGNED_ALLOC.
10760         * src/gmalloc.c: Update comment.
10761         * src/lisp.h (aligned_alloc)
10762         [!DOUG_LEA_MALLOC && !HYBRID_MALLOC && !SYSTEM_MALLOC]:
10763         New decl.
10764         (Bug#22086)
10766 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
10768         Include <malloc.h> when advisable
10770         This should help insulate us better from future glibc changes.
10771         It is good hygiene to include .h files for APIs that Emacs uses.
10772         Fix type clashes between Emacs and GNU <malloc.h> (Bug#22086).
10773         * configure.ac: Check for malloc.h.
10774         * src/alloc.c: Include <malloc.h> depending on HAVE_MALLOC_H,
10775         not on DOUG_LEA_MALLOC.
10776         * src/emacs.c, src/gmalloc.c (malloc_enable_thread):
10777         Remove decl (now in lisp.h).
10778         * src/gmalloc.c: Include stddef.h earlier, for ptrdiff_t.
10779         [emacs]: Include lisp.h.
10780         [HAVE_MALLOC_H]: Include <malloc.h>.
10781         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
10782         (__after_morecore_hook, __malloc_initialize_hook, __morecore)
10783         (__default_morecore):
10784         [!HAVE_MALLOC_H]: New decls near non-inclusion of <malloc.h>.
10785         (calloc): Make it clear that the macro should not be used.
10786         Remove unused decl.
10787         (malloc_info): New macro, to avoid clash with glibc <malloc.h>.
10788         (__morecore, __default_morecore, __after_morecore_hook)
10789         (__malloc_extra_blocks, __malloc_initialize_hook, __free_hook)
10790         (__malloc_hook, __realloc_hook, __memalign_hook, memory_warnings):
10791         Remove later decls.
10792         (gmalloc_hook, gfree_hook, grealloc_hook):
10793         Rename from __malloc_hook, __free_hook, __realloc_hook to
10794         avoid type collision with glibc <malloc.h>.  All uses changed.
10795         (gmalloc_hook):
10796         (__malloc_extra_blocks) [DOUG_LEA_MALLOC||HYBRID_MALLOC||SYSTEM_MALLOC]:
10797         Now static.
10798         (gmalloc_hook, __malloc_extra_blocks): Define even if [!HYBRID_MALLOC].
10799         (__malloc_initialize_hook, __after_morecore_hook):
10800         Declare with types compatible with glibc.
10801         (__memalign_hook, hybrid_calloc) [HYBRID_MALLOC]:
10802         Remove.  All uses removed.
10803         * src/lisp.h (__malloc_extra_blocks, malloc_enable_thread): New decls.
10804         * src/ralloc.c, src/vm-limit.c:
10805         Simplify includes and include <malloc.h> if available.
10807 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
10809         * src/alloc.c: Include "sheap.h".
10811         (alloc_unexec_pre, alloc_unexec_post) [HYBRID_MALLOC]:
10812         Set and clear bss_sbrk_did_unexec, on all platforms not just Cygwin.
10813         * src/lisp.h (alloc_unexec_pre, alloc_unexec_post) [!DOUG_LEA_MALLOC]:
10814         Declare unconditionally.
10815         * src/unexcw.c, src/unexelf.c (bss_sbrk_did_unexec): Remove decl.
10816         (unexec): Don’t set or clear bss_sbrk_did_unexec;
10817         the caller now does this.
10818         (Bug#22086)
10820 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
10822         Pacify --enable-gcc-warnings when HYBRID_MALLOC
10824         * src/buffer.c (init_buffer):
10825         * src/emacs.c (main):
10826         * src/xsmfns.c (smc_save_yourself_CB, x_session_initialize):
10827         Use emacs_get_current_dir_name, not get_current_dir_name.
10828         * src/conf_post.h (aligned_alloc) [HYBRID_MALLOC && emacs]: New macro.
10829         (HYBRID_GET_CURRENT_DIR_NAME, get_current_dir_name): Remove.
10830         * src/emacs.c: Include "sheap.h".
10831         (report_sheap_usage): Remove decl.
10832         (Fdump_emacs) [HYBRID_MALLOC]: Report usage directly.
10833         Don't assume ptrdiff_t can be printed as int.
10834         * src/gmalloc.c [HYBRID_MALLOC]:
10835         Include "sheap.h" rather than declaring its contents by hand.
10836         (get_current_dir_name, gget_current_dir_name)
10837         (hybrid_get_current_dir_name): Remove.
10838         (emacs_abort): Remove duplicate decl.
10839         (aligned_alloc): Undef, like malloc etc.
10840         (ALLOCATED_BEFORE_DUMPING): Now a static function, not a macro.
10841         Make it a bit more efficient.
10842         (malloc_find_object_address): Remove unused decl.
10843         (enum mcheck_status, mcheck, mprobe, mtrace, muntrace, struct mstats)
10844         (mstats, memory_warnings): Declare only if GC_MCHECK.
10845         * src/lisp.h (emacs_get_current_dir_name):
10846         New decl, replacing get_current_dir_name.
10847         * src/sheap.c: Include sheap.h first.
10848         (STATIC_HEAP_SIZE): Remove; now in sheap.h.
10849         (debug_sheap): Now static.
10850         (bss_sbrk_buffer_end): Remove; no longer used.
10851         (bss_sbrk_ptr): Now static and private.
10852         (bss_sbrk_did_unexec): Now bool.
10853         (BLOCKSIZE): Remove, to avoid GCC warning about its not being used.
10854         (bss_sbrk): Don't treat request_size 0 as special, since the code
10855         works without this being a special case.
10856         Avoid overflow if request size exceeds INT_MAX.
10857         (report_sheap_usage): Remove; now done in emacs.c.
10858         * src/sheap.h: New file.
10859         * src/sysdep.c (get_current_dir_name): Remove macro.
10860         Include "sheap.h".
10861         (emacs_get_current_dir_name): Rename function from
10862         get_current_dir_name.  Handle HYBRID_MALLOC here;
10863         this is simpler.
10864         (Bug#22086)
10866 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
10868         Report static heap usage on non-Cygwin, too
10870         * src/emacs.c (Fdump_emacs) [HYBRID_MALLOC]: Report sheap usage here ...
10871         * src/unexcw.c (unexec): ... instead of here, since sheap can be used
10872         on platforms other than Cygwin (Bug#22086).
10874 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
10876         Pacify GCC on extern decls
10878         * src/unexelf.c (bss_sbrk_did_unexec): Move decl to top level
10879         to pacify recent GCC (Bug#22086).
10881 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
10883         Add musl patch to support HYBRID_MALLOC on elf systems
10885         * src/gmalloc.c: Adjust for HYBRID_MALLOC in the non CYGWIN case.
10886         (__default_morecore): Here, in particular.
10887         * configure.ac: Define HYBRID_MALLOC when unexelf.o is used.
10888         New variable SHEAP_OBJ.
10889         * src/Makefile.in: Use it.
10890         (Bug#22086)
10892 2016-01-30  Rich Felker  <dalias@libc.org>  (tiny change)
10894         unexelf.c hook to support HYBRID_MALLOC on ELF
10896         * src/unexelf.c (unexec) [HYBRID_MALLOC]:
10897         Define bss_sbrk_did_unexec (Bug#22086).
10899 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
10901         Link temacs with gnulib compiled with -Demacs
10903         This is done to support HYBRID_MALLOC, since some static variables
10904         (e.g., last_environ in putenv.c) hold pointers to memory malloced
10905         before dumping (Bug#22086).
10906         * lib/Makefile.am: Add incantation to install libegnu.a.
10907         * src/Makefile.in ($(lib)/libgnu.a): Replace with libegnu.a
10908         (temacs$(EXEEXT)): Use it.
10910 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
10912         Internal linkage for gmalloc etc. if HYBRID_MALLOC
10914         This avoids clashes with symbols if the after-dump malloc is
10915         derived from Doug Lea's implementation (Bug#22086).
10917         * src/gmalloc.c (emacs_abort, __morecore, __default_morecore):
10918         Move declarations up.  For HYBRID_MALLOC, turn all `extern'
10919         declarations below to `static' ones.
10920         (aligned_alloc): Declare for !MSDOS as well.
10921         (heapsize, _fraghead): Move resp. copy declaration downwards.
10922         For HYBRID_MALLOC, conditionalize out the other definitions,
10923         since the previous `static' declarations double as tentative
10924         definitions, anyway.
10925         (_malloc, _free, _realloc, __free_hook, _aligned_blocks)
10926         (__realloc_hook, __memalign_hook): Conditionalize out.
10927         (cfree, memalign, valloc): Ditto.
10929 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
10931         Merge from origin/emacs-25
10933         3f481ad Rename xref-query-replace to xref-query-replace-in-results
10934         62f4ed4 Update cl-defgeneric and cl-defmethod docstrings
10935         2111e0e Comment out next-error-function integration in xref
10936         4e11ad3 Correct a use of "which" in intro.texi
10937         a1865bc Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
10938         76045f7 Don't operate on menu bar of nonexistent frame
10939         c32f3bc Unbreak the GNUstep build.
10941 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
10943         Re-enable checks in member, memql, delete to complain about non-lists
10945         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
10947 2016-02-04  Martin Rudalics  <rudalics@gmx.at>
10949         Minor doc(-string) tweaks
10951         * lisp/window.el (window-in-direction): Fix doc-string typo.
10952         * doc/lispref/frames.texi (Frame Font): Mention canonical
10953         character width/height.
10954         * doc/lispref/windows.texi (Windows and Frames): Clarify
10955         handling of minibuffer window for `window-in-direction'.
10956         (Window Sizes): Minor tweaks in descriptions of
10957         `window-max-chars-per-line', `window-min-width' and
10958         `window-min-size'.
10959         (Deleting Windows): Minor tweak in `delete-window' description.
10960         (Selecting Windows): Clarify window use time description.
10961         (Cyclic Window Ordering): Minor tweak.
10962         (Switching Buffers): Clarify description of
10963         `switch-to-buffer-in-dedicated-window'.
10965 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
10967         Remove some useless-use-of eval.
10969         * lisp/gnus/gnus.el (gnus-load-hook): Don't use eval.
10970         * lisp/gnus/nnrss.el (xml): Simply require it.
10971         (xml-rpc-method-call): Use declare-function.
10973 2016-01-28  Glenn Morris  <rgm@gnu.org>
10975         Don't use eval to quieten prolog.el compilation.
10977         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
10978         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
10980 2016-01-28  Glenn Morris  <rgm@gnu.org>
10982         Mark some risky prolog variables.
10984         * lisp/progmodes/prolog.el (prolog-system-version)
10985         (prolog-keywords, prolog-types, prolog-mode-specificators)
10986         (prolog-determinism-specificators, prolog-directives)
10987         (prolog-program-name, prolog-program-switches)
10988         (prolog-consult-string, prolog-compile-string)
10989         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
10990         Mark anything processed by prolog-find-value-by-system as risky.
10992 2016-01-28  Glenn Morris  <rgm@gnu.org>
10994         * lisp/custom.el (defcustom): Doc fix.
10996         * doc/lispref/customize.texi (Variable Definitions):
10997         Defcustom should always have a type.
10999 2016-01-28  Glenn Morris  <rgm@gnu.org>
11001         * lisp/emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
11002         Warn if defcustom has no type.  (Bug#16276)
11004         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
11005         Fix :type.
11007         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
11009 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
11011         Fix Bug#22452
11013         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
11014         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
11015         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
11016         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
11017         Mark it as connected.
11019         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
11020         connection property "connected" is set.  (Bug#22452)
11022 2016-01-27  Glenn Morris  <rgm@gnu.org>
11024         * test/lisp/vc/vc-hg.el: Move from test/automated/.
11026         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
11028         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
11029         if not compiled with xwidgets.
11031 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
11033         C-u C-x = example doc fix
11035         * doc/emacs/mule.texi (International Chars):
11036         Adjust example to match current behavior of C-u C-x =.
11038 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
11040         malloc.h hygiene
11042         This attempts to future-proof Emacs a bit against possible glibc
11043         changes, by having Emacs use <malloc.h> declarations rather than
11044         coding them up by hand.  Problem noted by Florian Weimer in:
11045         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
11046         Implement this mainly by moving malloc.h-related functions from
11047         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
11048         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
11049         New function.
11050         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
11051         (alloc_unexec_pre, alloc_unexec_post): New functions.
11052         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
11053         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
11054         (__malloc_initialize_hook): Use it.
11055         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
11056         Move here from ...
11057         * src/emacs.c: ... here.
11058         (malloc_get_state, malloc_set_state): Remove extern decls.
11059         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
11060         All uses changed to similarly-named new function.
11061         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
11062         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
11063         New decls.
11065 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
11067         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
11069 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
11071         Remove never-set var handle_user_signal_hook
11073         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
11074         Remove never-set var.  All uses removed.
11076 2016-01-26  Anders Lindgren  <andlind@gmail.com>
11078         Fixed NextStep fullscreen issue (bug#22468)
11080         When in fullscreen mode, `[screen visibleFrame]' sometimes
11081         includes, sometimes excludes the menu bar. This could cause
11082         a frame to be placed too low when in fullscreen mode.
11084         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
11085         (constrain_frame_rect): New parameter, isFullscreen, when true don't
11086         query the height of the menu bar.
11087         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
11088         `constrain_frame_rect'.
11089         ([EmacsView initFrameFromEmacs:]): Trace.
11090         ([EmacsView isFullscreen]): Trace.
11091         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
11092         state to `constrain_frame_rect'.
11094 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11096         * lisp/files.el: Use a fixed file name for the second dir-locals file
11098         (dir-locals-file): Revert to its original fixed value.
11099         (dir-locals-file-2): New const.
11100         (dir-locals--all-files): Don't use `file-name-all-completions'.
11101         Instead, just check for the 2 dir-locals files and return a list
11102         of the ones that exit (if any).
11104         * etc/NEWS: Document the change.
11106         * doc/emacs/custom.texi (Directory Variables): Document the change.
11108         * doc/lispref/variables.texi (Directory Local Variables): Update
11109         accordingly.
11111 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11113         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
11115         Change a variable name to be more meaningful, and reorder some of
11116         the code with no change in behavior.
11118 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11120         * lisp/files.el (dir-locals-find-file): Refactor return values
11122         Returning a cache remains unchanged, but the case of returning a
11123         file (or pattern) is now changed to return the contaning
11124         directory.
11126         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
11127         and make obsolete.
11128         (dir-locals-read-from-dir): Simplify accordingly.
11129         (hack-dir-local-variables): Simplify accordingly and rename a
11130         variable.
11132 2016-01-25  Glenn Morris  <rgm@gnu.org>
11134         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
11135         Declare.
11137         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
11139         * configure.ac (--with-cairo): Say it's experimental.
11141         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
11142         Rename using American spelling.  Update all uses.
11144 2016-01-25  Glenn Morris  <rgm@gnu.org>
11146         Yet more xwidget doc fixes.
11148         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
11149         (xwidget-insert, xwidget-webkit-browse-url)
11150         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
11151         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
11152         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
11153         (xwidget-webkit-show-id-element)
11154         (xwidget-webkit-show-id-or-named-element)
11155         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
11156         (xwidget-webkit-execute-script-rv)
11157         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
11158         (xwidget-put):  Doc fixes.
11159         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
11160         (xwidget-webkit-show-id-element)
11161         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
11163 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
11165         * lisp/gnus/gnus-art.el (gnus-blocked-images):
11166         Add explicit nil choice and tags.
11168 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
11170         Spelling fixes
11172 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
11174         (rng-c-fix-escaped-newlines): Use subst-char-in-string
11176         * lisp/nxml/rng-cmpct.el (rng-c-fix-escaped-newlines):
11177         Use subst-char-in-string.
11179 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
11181         * lisp/textmodes/sgml-mode.el (sgml-forward-sexp): New function
11183         (sgml-cursor-sensor, sgml-pretty-print, sgml-parse-tag-backward)
11184         (sgml-calculate-indent): Use it.
11186 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
11188         * lisp/org: Fix some compiler warnings
11190         * lisp/org/ob-core.el (org-babel-check-confirm-evaluate)
11191         (org-babel-map-src-blocks): Don't emit warnings if added vars are not used.
11192         (*this*): Declare as dyn-bound.
11193         (org-babel-expand-src-block, org-babel-load-in-session)
11194         (org-babel-switch-to-session-with-code, org-babel-get-rownames):
11195         Mark unused args.
11196         (org-babel-combine-header-arg-lists): Remove unused var `args'.
11197         (org-babel-find-named-block): Remove unused var `msg'.
11199         * lisp/org/org-src.el (org-inhibit-startup, org-src-fontify-natively):
11200         Declare as dyn-bound.
11201         (org-edit-src-code): Remove unused var `lfmt'.
11202         (org-edit-fixed-width-region): Remove unused var `preserve-indentation'.
11204 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
11206         * lisp/font-lock.el: Use #' to quote function symbols
11208 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
11210         (font-lock-ensure-function): Fix bug#22399
11212         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
11213         font-lock-mode is not enabled (bug#22399).
11215 2016-01-25  Alan Mackenzie  <acm@muc.de>
11217         Expunge "allow" + infinitive from source and doc, part 2.
11219         Do the same for "permit", "enable", "prevent", and (where appropriate)
11220         "require".
11222         doc/misc/reftex.texi:
11223         doc/misc/url.texi:
11224         lib/get-permissions.c:
11225         lib/strftime.c:
11226         lisp/org/org-element.el:
11227         lisp/org/org-mobile.el:
11228         lisp/textmodes/reftex-vars.el:
11229         src/bidi.c:
11230         src/emacs.c:
11231         src/xdisp.c:
11232         test/etags/c-src/emacs/src/lisp.h:
11234         Expunge the likes of "This allows to do something" from the above files.
11236 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11238         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
11240         `special-mode' is already read-only.
11242 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11244         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
11246 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
11248         Port "$@" to OpenIndiana ksh93
11250         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
11251         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
11252         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
11253         bug in long-dead shells, so remove the workaround.
11254         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
11255         Use plain "$@" rather than ${1+"$@"}.
11257 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
11259         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
11261 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
11263         Improve wording for SMB support
11265         * doc/misc/tramp.texi (External methods): Improve and modernize
11266         wording for discussion of smbclient.  There is no longer any
11267         need to mention the laundry list of old MS Windows implementations
11268         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
11270 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
11272         Merge from gnulib
11274         This incorporates:
11275         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
11276         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
11277         2016-01-15 detect utimes() correctly on OS/2 kLIBC
11278         2016-01-15 openat_proc_name: port to OS/2 kLIBC
11279         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
11280         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
11281         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
11282         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
11283         2016-01-14 sig2str: list all signals on FreeBSD >= 7
11284         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
11285         2016-01-12 mktime: rename macro to avoid glibc clash
11286         2016-01-12 Port "$@" to OpenIndiana ksh93
11287         2016-01-12 Port Universal Time settings to strict POSIX
11288         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
11289         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
11290         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
11291         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
11292         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
11293         * m4/fcntl.m4, m4/utimes.m4:
11294         Copy from gnulib.
11295         * m4/gnulib-comp.m4: Regenerate.
11297 2016-01-24  Alan Mackenzie  <acm@muc.de>
11299         Expunge "allow" + infinitive without direct object from source and doc.
11301         Do the same for "permit", "enable", and "prevent".
11303         * doc/emacs/mule.texi:
11304         * doc/lispref/control.texi:
11305         * doc/lispref/display.texi:
11306         * doc/lispref/frames.texi:
11307         * doc/lispref/functions.texi:
11308         * doc/lispref/nonascii.texi:
11309         * doc/lispref/streams.texi:
11310         * doc/lispref/windows.texi:
11311         * doc/misc/dbus.texi:
11312         * doc/misc/eww.texi:
11313         * doc/misc/flymake.texi:
11314         * doc/misc/octave-mode.texi:
11315         * doc/misc/org.texi:
11316         * doc/misc/reftex.texi:
11317         * doc/misc/tramp.texi:
11318         * doc/misc/wisent.texi:
11319         * etc/NEWS:
11320         * lisp/autorevert.el:
11321         * lisp/cedet/mode-local.el:
11322         * lisp/cedet/semantic/senator.el:
11323         * lisp/cedet/semantic/wisent.el:
11324         * lisp/dos-fns.el:
11325         * lisp/frameset.el:
11326         * lisp/gnus/gnus-agent.el:
11327         * lisp/gnus/mm-util.el:
11328         * lisp/international/characters.el:
11329         * lisp/ldefs-boot.el:
11330         * lisp/mail/mailclient.el:
11331         * lisp/man.el:
11332         * lisp/mh-e/mh-search.el:
11333         * lisp/net/tramp-cmds.el:
11334         * lisp/net/tramp-gvfs.el:
11335         * lisp/org/org-crypt.el:
11336         * lisp/org/org-element.el:
11337         * lisp/org/org-feed.el:
11338         * lisp/org/org.el:
11339         * lisp/org/ox-ascii.el:
11340         * lisp/org/ox-icalendar.el:
11341         * lisp/org/ox-publish.el:
11342         * lisp/org/ox.el:
11343         * lisp/play/gamegrid.el:
11344         * lisp/play/gomoku.el:
11345         * lisp/progmodes/antlr-mode.el:
11346         * lisp/progmodes/python.el:
11347         * lisp/progmodes/vhdl-mode.el:
11348         * lisp/strokes.el:
11349         * lisp/textmodes/ispell.el:
11350         * lisp/tree-widget.el:
11351         * lisp/vc/pcvs.el:
11352         * lisp/window.el:
11353         * src/lisp.h:
11354         * src/w32.c:
11355         * src/w32heap.c:
11356         * src/w32term.c:
11357         * src/window.c:
11358         * src/xfaces.c:
11360         Replace solecisms like "This allow to do something" with a correct
11361         alternative, such as "This allow you to do something", "This allows
11362         something to be done" or "This allows the doing of something".
11364 2016-01-24  l3thal  <kwhite@gnu.org>
11366         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
11368 2016-01-24  Kelvin White  <kwhite@gnu.org>
11370         Add NEWS entry for asynchronous reconnect in ERC
11372 2016-01-24  l3thal  <kwhite@gnu.org>
11374         Add NEWS entry for asynchronous reconnect in ERC
11376 2016-01-24  Kelvin White  <kwhite@gnu.org>
11378         browse-url.el: Add 'google-chrome' to supported browsers.
11380 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
11382         Port Tramp manual to latest Texinfo
11384         Otherwise, 'make pdf' did not work (Bug#22416).
11385         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
11386         (trampfn): Specialize to the case where METHOD is nonempty.
11387         The 2nd argument is now user@host, not 2nd user and 3rd host args.
11388         All uses changed.
11389         (trampf): New macro.
11391 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
11393         * eww.el (eww-render): Protect against empty content-types.
11395 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
11397         authors.el updates
11399         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
11400           Additions.
11402 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
11404         Rename xref-query-replace to xref-query-replace-in-results
11406         * lisp/progmodes/xref.el(xref-query-replace):
11407         Rename to xref-query-replace-in-results.
11408         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
11410         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
11411         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
11412         * doc/emacs/dired.texi (Operating on Files):
11413         * doc/emacs/maintaining.texi (Xref Commands)
11414         (Identifier Search, Identifier Search): Update accordingly.
11416 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
11418         Update cl-defgeneric and cl-defmethod docstrings
11420         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
11421         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
11422         (cl-defmethod): Mention that multiple dispatch arguments are
11423         allowed.  Document supported types.  (Bug#22336)
11425 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
11427         Comment out next-error-function integration in xref
11429         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
11430         Comment out next-error-function integration
11431         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
11433 2016-01-23  John Wiegley  <johnw@newartisans.com>
11435         Correct a use of "which" in intro.texi
11437 2016-01-23  Alan Mackenzie  <acm@muc.de>
11439         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
11441         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
11442         context of case labels (including "default") more rigorously.
11443         (c-guess-basic-syntax CASE 15): Consequential amendment.
11445         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
11447 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
11449         Don't operate on menu bar of nonexistent frame
11451         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
11452         is valid before redisplaying its menu. Fixes bug#22438.
11454 2016-01-23  Anders Lindgren  <andlind@gmail.com>
11456         Unbreak the GNUstep build.
11458         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
11459         predefined "caution" image. Add trace.
11460         (x_set_window_size): Remove unused variables `cols' and `rows'.
11461         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
11462         GNUstep is used.
11463         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
11464         ([EmacsWindow zoom:]): Remove unused variable `f'.
11466 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
11467             John Wiegley  <johnw@gnu.org>
11468             Michael Heerdegen  <michael_heerdegen@web.de>
11470         Improve documentation of 'pcase'
11472         * doc/lispref/control.texi (Pattern matching case statement):
11473         Reorganize, expand, and improve wording.
11475         * etc/NEWS: Mention that 'pcase' changes are documented.
11477 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
11479         * etc/NEWS: Say that Cairo is experimental.
11481 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
11483         Report error for PNG under Cairo
11485         * src/image.c (lookup_rgb_color): Signal a file error instead
11486         of dumping core when mishandling an image.
11488 2016-01-23  Arash Esbati  <esbati@gmx.de>
11490         Delete a spurious backquote (tiny change)
11492         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
11493         spurious backquote which raises an error with emacs 25.
11495 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
11497         Pacify --enable-gcc-warnings --with-cairo
11499         Problem reported by Alexander Kuleshov in:
11500         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
11501         * src/gtkutil.c (xg_get_page_setup):
11502         Use switch rather than if-then-else.
11503         * src/image.c (COLOR_TABLE_SUPPORT):
11504         Define directly rather than via #define and optional later #undef.
11505         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
11506         Crash when the pixel is undefined, as there is a genuine bug
11507         here (Bug#22442).
11508         * src/image.c (tiff_load, gif_load, svg_load_image)
11509         (x_kill_gs_process) [USE_CAIRO]:
11510         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
11511         Omit unused locals, or move them to where they’re needed.
11512         (x_clear_area1): Now ATTRIBUTE_UNUSED.
11514 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
11516         Update documentation for Dired search and replace
11518         * doc/emacs/dired.texi (Operating on Files): Update descriptions
11519         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
11520         'dired-do-find-regexp-and-replace'.
11522         * etc/NEWS: Mention xref-related changes in Dired.
11524 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
11526         Port recent xdisp.c fix to picky C compilers
11528         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
11529         putting #if inside the arguments to a standard function, which
11530         the C standard says has undefined behavior.
11532 2016-01-22  Alan Mackenzie  <acm@muc.de>
11534         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
11536         * cc-engine.el (c-forward-declarator): New function.
11537         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
11538         contained in the preceding arg list.
11540         * cc-fonts.el (c-font-lock-declarators): Use the new function
11541         `c-forward-declarator' in place of inline code.
11543 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
11545         Fix the build with --enable-checking=glyphs
11547         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
11548         build without xwidget support.
11550 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
11552         Document cl-generic.el
11554         * doc/lispref/functions.texi (Generic Functions): New section.
11555         (Bug#22336)
11556         (Functions): Update the chapter menu.
11557         * doc/lispref/elisp.texi: Update the master menu.
11559 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
11561         xwidgets style cleanup
11563         Adjust the newly-added Xwidgets code so that it uses a more-typical
11564         Emacs style.  This should not affect behavior, except that in
11565         a few places it adds runtime checks that Lisp arguments are of
11566         the proper type, and in one place it uses more-precise arithmetic.
11567         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
11568         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
11569         Include xwidget.h unconditionally.
11570         * src/buffer.c (Fkill_buffer):
11571         * src/dispnew.c (update_window):
11572         * src/emacs.c (main):
11573         * src/print.c (print_object):
11574         * src/window.c (Fdelete_window_internal):
11575         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
11576         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
11577         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
11578         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
11579         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
11580         Call xwidget functions and macros without worrying about
11581         HAVE_XWIDGETS when the code is a no-op on non-xwidget
11582         platforms.
11583         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
11584         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
11585         (struct it.xwidget):
11586         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
11587         Always define.
11588         * src/emacsgtkfixed.h: Omit unnecessary comment.
11589         * src/keyboard.c: Fix spacing.
11590         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
11591         Define to be a no-op if not HAVE_XWIDGETS.
11592         * src/xwidget.c: Include xwidget.h first (after config.h)
11593         to make sure that it can stand by itself.
11594         (Fmake_xwidget, Fxwidget_webkit_execute_script):
11595         Fix typo in doc string.
11596         (Fmake_xwidget): Check type of args.
11597         (Fmake_xwidget, offscreen_damage_event)
11598         (webkit_document_load_finished_cb, webkit_download_cb)
11599         (webkit_new_window_policy_decision_requested_cb)
11600         (webkit_navigation_policy_decision_requested_cb)
11601         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
11602         (xwidget_osr_event_set_embedder, xwidget_init_view):
11603         Omit unnecessary casts.
11604         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
11605         (xwidget_show_view, xwidget_hide_view)
11606         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
11607         (xwidget_touched):
11608         * src/xwidget.h (struct xwidget.kill_without_query)
11609         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
11610         Use bool for boolean.
11611         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
11612         Simplify by using list functions.
11613         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
11614         (Fxwidget_resize): Check type of integer args
11615         before doing any work.  Check that they are nonnegative.
11616         (Fxwidget_set_adjustment): Check type of integer arg.
11617         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
11618         Simplify.  Use double, not float.
11619         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
11620         (valid_xwidget_spec_p): Simplify.
11621         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
11622         * src/xwidget.h: Include lisp.h first, so that includers do
11623         not need to worry about doing that before including this file.
11624         Make this .h file safe to include even on non-HAVE_XWIDGETS
11625         configurations, to simplify the includers.
11626         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
11627         (xwidget_end_redisplay, lookup_xwidget)
11628         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
11629         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
11630         (struct glyph_matrix, struct glyph_string, struct xwidget)
11631         (struct xwidget_view, struct window):
11632         New forward or incomplete decls, so that includers need not
11633         assume the corresponding .h files are already included, or that
11634         HAVE_XWIDGETS is defined.
11635         (struct xwidget_type, xwidget_from_id): Remove; unused.
11637 2016-01-22  John Wiegley  <johnw@newartisans.com>
11639         Further corrections to the pcase docstring
11641 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
11643         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
11645 2016-01-21  Stephen Leake  <stephen_leake@stephe-leake.org>
11647         In xref-collect-references, force backends to respect the 'dir' arg
11649         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
11650         to use `default-directory'.
11652 2016-01-21  John Wiegley  <johnw@newartisans.com>
11654         Minor correction to pcase docstring
11656 2016-01-21  John Wiegley  <johnw@newartisans.com>
11658         Write a new docstring for the pcase macro
11660         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
11662 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
11664         Avoid byte-compiler warning in todo-mode (bug#21953)
11666         * todo-mode.el (todo-convert-legacy-files): Add limit argument
11667         to looking-back to comply with advertised-calling-convention.
11669 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
11671         Fix desktop support in todo-mode and doc-view (bug#22377)
11673         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
11674         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
11676         * lisp/calendar/todo-mode.el (todo-modes-set-2):
11677         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
11679 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
11681         No need to configure gobject-introspection
11683         It wasn’t needed for the recently-installed xwidget_mvp code; see:
11684         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
11685         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
11686         (HAVE_GIR):
11687         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
11688         Remove.  All uses removed.
11689         * configure.ac (emacs_config_features): Don’t worry about GIR.
11691 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
11693         Don’t export C symbols not used elsewhere
11695         These were recently added, mostly as part of xwidget code.
11696         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
11697         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
11698         Now static functions here, not macros in emacsgtkfixed.h.
11699         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
11700         Remove.  All uses replaced by definiens.
11701         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
11702         Remove; these are now static functions in emacsgtkfixed.c.
11703         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
11704         Remove; unused.
11705         (emacs_fixed_get_type): Remove decl; no longer extern.
11706         * src/xwidget.c (offscreen_damage_event)
11707         (webkit_mime_type_policy_typedecision_requested_cb)
11708         (webkit_new_window_policy_decision_requested_cb)
11709         (webkit_navigation_policy_decision_requested_cb)
11710         (xwidget_spec_value, xwidget_view_lookup)
11711         (xwidget_start_redisplay, xwidget_touch):
11712         Now static.
11713         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
11714         Remove decls.
11716 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
11718         Support squiggly heredocs in ruby-mode
11720         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
11721         Support squiggly heredocs added in Ruby 2.3.
11723         * test/indent/ruby.rb: Add squiggly example.
11725 2016-01-20  Glenn Morris  <rgm@gnu.org>
11727         * configure.ac (emacs_config_features): Remove WEBKIT.
11729 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
11731         Port to platforms with gtk3 but not webkitgtk3
11733         I ran into this problem on my Fedora 23 installation;
11734         Emacs configured but did not build when --with-xwidgets was specified.
11735         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
11736         (DOES_XWIDGETS_USE_GIR): New var.
11737         If --with-xwidgets is specified, report an error if not
11738         doable, to be consistent with the other --with options.
11739         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
11740         not work at all without webkitgtk3.  Simplify use of
11741         EMACS_CHECK_MODULES.  Output message about gobject
11742         introspection only if xwidgets are used.
11743         * etc/NEWS: Users need webkitgtk3, not merely webkit.
11744         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
11745         since this file is no longer compiled if webkitgtk3 is not available.
11747 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
11749         Fix doc string of 'isearch-search-fun-function'
11751         * lisp/isearch.el (isearch-search-fun-function)
11752         (isearch-search-string): Doc fixes.  (Bug#22411)
11754 2016-01-19  Stefan Monnier  <monnier@iro.umontreal.ca>
11756         * lisp/xwidget.el: Nitpicks
11758         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
11759         Use with-current-buffer rather than save-excursion + set-buffer.
11761 2016-01-19  Glenn Morris  <rgm@gnu.org>
11763         Don't hard-code 1 as point-min.
11765         * lisp/image-mode.el (image-display-size):
11766         * lisp/xwidget.el (xwidget-webkit-last-session)
11767         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
11769 2016-01-19  Glenn Morris  <rgm@gnu.org>
11771         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
11773 2016-01-19  Glenn Morris  <rgm@gnu.org>
11775         Trivial doc copyedits.
11777         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
11778         (Fxwidget_webkit_get_title, Fxwidget_resize)
11779         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
11780         (Fxwidget_info, Fxwidget_view_lookup)
11781         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
11783 2016-01-19  Glenn Morris  <rgm@gnu.org>
11785         Avoid advising image-display-size for xwidgets.
11787         * lisp/xwidget.el (xwidget-image-display-size): Remove.
11788         (image-display-size): Remove advice.
11789         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
11790         (image-display-size): Incorporate xwidget code directly.
11792 2016-01-19  Glenn Morris  <rgm@gnu.org>
11794         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
11796         * lisp/xwidget.el (window-configuration-change-hook)
11797         (kill-buffer-query-functions): Only modify these hooks if
11798         compiled with xwidget support.
11800 2016-01-19  Glenn Morris  <rgm@gnu.org>
11802         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
11804         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
11806         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
11808         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
11810 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
11812         * lisp/gnus/nnir.el (nnir-request-update-mark):
11813         Default to the original mark.
11814         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
11815         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
11817 2016-01-19  Glenn Morris  <rgm@gnu.org>
11819         * lisp/xwidget.el (report-xwidget-bug): Remove.
11821         (top-level): No longer require reporter.
11823 2016-01-19  Joakim Verona  <joakim@verona.se>
11824             Grégoire Jadi  <daimrod@gmail.com>
11826         Support for the new Xwidget feature.
11828         * configure.ac:
11829         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
11830         * xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
11831         * xdisp.c:
11832         (handle_display_spec, handle_single_display_spec, push_it)
11833         (pop_it, set_iterator_to_next, dump_glyph)
11834         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
11835         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
11836         (produce_xwidget_glyph, x_produce_glyphs)
11837         (get_window_cursor_type):
11838         * window.c (Fdelete_window_internal):
11839         * termhooks.h (e):
11840         * print.c (print_object):
11841         * lisp.h (ptrdiff_t):
11842         * keyboard.c (kbd_buffer_get_event, make_lispy_event)
11843         (syms_of_keyboard):
11844         * emacs.c (main):
11845         * dispnew.c (update_window, scrolling_window):
11846         * dispextern.h (g, i):
11847         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
11848         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
11849         * keyboard.c (kbd_buffer_get_event):
11850         * emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
11851         (emacs_fixed_class_init): Add case for an xwidget view.
11853         * xwidget.c, xwidget.h, xwidget.el: New files for xwidgets
11856         Various improvements to the Xwidget feature.
11857         * xwidgets.c:
11858         * emacsgtkfixed.c:
11859         * xwidget.el:
11861 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
11863         Improve documentation of 'alist-get'
11865         * doc/lispref/variables.texi (Setting Generalized Variables): Add
11866         'alist-get' to the list of functions that can appear in PLACE
11867         argument of 'setf'.
11869 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
11871         Minor copyedits of doc/emacs/maintaining.texi
11873         * doc/emacs/maintaining.texi (List Identifiers): More accurate
11874         description of "C-M-i" wrt tags tables.
11875         (Tags Tables): Move the definition of "tag" to a footnote.
11877 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
11879         Unbreak the Cygwin-w32 build
11881         * src/w32fns.c (globals_of_w32fns): Move the initialization of
11882         resetstkoflw into a part that isn't compiled on Cygwin.
11883         (Bug#22403)
11885 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11887         * shr.el (shr-table-body): Allow tables to have text children.
11889 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
11891         Cope with multiple overlapping faces.
11893         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
11894           left.
11895           (hfy-face-resolve-face): Handle font specification as well as font
11896           name. Documentation update. (Bug#21990)
11898 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
11900         Fix spurious escapes in describe-input-method
11902         Problem reported by Vincent Belaïche (Bug#22309).
11903         * lisp/international/mule-cmds.el (describe-language-environment):
11904         * lisp/international/quail.el (quail-help):
11905         Apply substitute-command-keys to doc strings before displaying them.
11907 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
11909         Bump version to 25.0.90
11911         * README:
11912         * configure.ac:
11913         * msdos/sed2v2.inp: Bump version to 25.0.90.
11915 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
11917         * etc/AUTHORS: Update the AUTHORS file
11919 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
11921         authors.el updates
11923         * admin/authors.el (authors-renamed-files-alist): Additions.
11925 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
11927         Make it possible to run make change-history on emacs-25
11929         * Makefile.in: Check if the current branch is emacs-25 instead of
11930           master.
11932 2016-01-30  lu4nx  <lx@shellcodes.org>
11934         Support Go language in 'etags'
11936         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
11937         <Go_help>: New help.
11938         <Go_suffixes>: New variable.
11939         (Go_functions): New function.
11940         <lang_names>: Add entry for Go.  (Bug#22370)
11942         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
11943         * doc/man/etags.1: Mention Go support.
11945         * etc/NEWS: Mention Go support.
11947         * test/etags/go-src/test.go:
11948         * test/etags/go-src/test1.go: New test files.
11949         * test/etags/Makefile (GOSRC): New variable.
11950         (SRCS): Add $(GOSRC).
11951         * test/etags/ETAGS.good_1:
11952         * test/etags/ETAGS.good_2:
11953         * test/etags/ETAGS.good_3:
11954         * test/etags/ETAGS.good_4:
11955         * test/etags/ETAGS.good_5:
11956         * test/etags/ETAGS.good_6:
11957         * test/etags/CTAGS.good: Adapt to addition of Go tests.
11959 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
11961         Improve Ruby support in 'etags'
11963         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
11964         singleton classes.  Remove class qualifiers from tags generated
11965         for method and constant names.  (Bug#22241)
11967         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
11968         are tagged by etags in Ruby.
11970         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
11972         * test/etags/ruby-src/test1.ruby: Add more tests.
11973         * test/etags/ETAGS.good_1:
11974         * test/etags/ETAGS.good_2:
11975         * test/etags/ETAGS.good_3:
11976         * test/etags/ETAGS.good_4:
11977         * test/etags/ETAGS.good_5:
11978         * test/etags/ETAGS.good_6:
11979         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
11980         tests.
11982 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
11984         Adjust etags test results to changes in copyright years
11986         * test/etags/CTAGS.good:
11987         * test/etags/ETAGS.good_1:
11988         * test/etags/ETAGS.good_2:
11989         * test/etags/ETAGS.good_3:
11990         * test/etags/ETAGS.good_4:
11991         * test/etags/ETAGS.good_5:
11992         * test/etags/ETAGS.good_6: Adjust to shift in characters and
11993         in line numbers.
11995 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
11997         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
11999         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
12001 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
12003         Make it possible to run make change-history on emacs-25
12005         * Makefile.in: Check if the current branch is emacs-25 instead of
12006           master.
12008 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
12010         Don't fiddle with DEFAULT
12012         * lisp/progmodes/project.el (project--completing-read-strict):
12013         Don't change DEFAULT, whether is has any matches in
12014         COLLECTION, or not.
12016 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
12018         Document xwidget commands and functions
12020         * doc/lispref/display.texi (Xwidgets): New section, describes some
12021         of the xwidget primitives.
12022         * doc/lispref/display.texi (Display): Update the chapter menu.
12023         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
12024         * doc/emacs/emacs.texi (Top): Update the master menu to include
12025         the xwidget node.
12027 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
12029         Build fix for shr.el
12031         * shr.el (seq): Require.
12033 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
12035         Improve project-find-file yet again!
12037         * lisp/progmodes/project.el (project--completing-read-strict):
12038         New function.
12039         (project-find-file-in): Use it.
12040         (project-file-completion-table): Move the default
12041         implementation inside the cl-defgeneric form.
12042         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
12044 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
12046         Don't pass DIR to 'hg status'
12048         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
12049         Don't pass DIR to 'hg status' (bug#22481).
12051 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
12053         Fix typo in previous commits
12055         * lisp/progmodes/project.el (project-find-file-in):
12056         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
12057         commit.
12059 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
12061         Improve project-find-file
12063         * lisp/progmodes/project.el (project-file-completion-table): New.
12064         (project-find-file, project-or-external-find-file): Default to filename
12065         at point.
12066         (project-file-completion-table): New, split out from
12067         project--find-file-in.
12068         (project-find-file-in): Renamed from project--find-file-in, use
12069         project-file-completion-table.
12071         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
12072         (xref--find-ignores-arguments): Add doc string.
12074 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
12076         Implement vc-mtn-find-ignore-file, fix some doc strings
12078         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
12080         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
12082         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
12084         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
12086 2016-01-23  Michael Albinus  <michael.albinus@gmx.de>
12088         Improve user name completion in Tramp
12090         * lisp/net/tramp.el (tramp-parse-passwd, tramp-parse-etc-group):
12091         Call also "getent passwd" or "getent group", if possible.
12092         (tramp-parse-putty): Cache the result.
12094 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
12096         * etc/NEWS: Move kqueue entries to Emacs 25.1 sections.
12098 2016-01-20  Glenn Morris  <rgm@gnu.org>
12100         Remove handling of non-string time-stamp formats, obsolete for 20 years.
12102         * lisp/time-stamp.el (time-stamp-format): Doc fix.
12103         (time-stamp-old-format-warn, time-stamp-fconcat): Remove.
12104         (time-stamp-string): Ignore non-string formats.
12106 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
12108         Anoter fix for problematic merge from emacs-25
12110         * src/w32fns.c (globals_of_w32fns): Move initialization of
12111         resetstkoflw to a non-Cygwin part.
12113 2016-01-20  Michael Albinus  <michael.albinus@gmx.de>
12115         * test/Makefile.in (mostlyclean): Use ${LOGFILES}.
12117 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
12119         Fix MS-Windows build broken by a botched merge from emacs-25
12121         * src/w32.c (w32_crypto_hprov): New static variable.
12122         (globals_of_w32): Initialize w32_crypto_hprov.
12123         (w32_init_crypt_random, w32_init_random): New functions.
12124         Include wincrypt.h.
12125         * src/w32.h (w32_init_random): Add prototype.
12127 2016-01-20  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12129         Correct a whole bunch of bugs coming with renamed cell relocation.
12131         * lisp/ses.el (ses-localvars): rename variable
12132         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
12133         and adjust the comment about it.
12134         (ses-plist-delq): new defun.
12135         (ses--ses-buffer-list): new defvar.
12136         (ses--unbind-cell-name): new defun.
12137         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
12138         (ses-relocate-formula): Undo change of
12139         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
12140         preventing relocation for named cell --- now doing this is delegated
12141         to function `ses-relocate-symbol'.
12142         (ses-relocate-range): In docstring, undo change of
12143         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
12144         lower case as it is not a variable.
12145         (ses-relocate-all): Cell name relocation : 1) check that cell is a
12146         renamed cell by testing `ses-cell' property to :ses-named, rather than
12147         comparing name to corresponding standard name. Set rowcol of renamed
12148         cell into the hashmap --- `ses-cell' property must not be used for
12149         that as the same name can be used for different locations in different
12150         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
12151         `local-variable-p' to check if cell name is already in use in this
12152         sheet or needs initialization.
12153         (ses-relocate-all): Cell value relocation : 1) like for name
12154         relocation use the `ses-cell' property rather than comparing actual
12155         name to corresponding standard name. 2) Correct bug introduced in
12156         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
12157         made the other way round than the intention --- ie value relocation
12158         was disabled for standard cell, not for renamed cell as was the
12159         intention.
12160         (ses-relocate-all): Add loop for unbinding deleted renamed cells
12161         names.
12162         (ses-killbuffer-hook): new defun.
12163         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
12164         kill buffer hook, plus pushing current buffer if new in list.
12165         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
12166         into `ses--in-killing-named-cell-list'.
12167         (ses-rename-cell): Remove update of variable
12168         `ses--renamed-cell-symb-list', this variable is renamed to
12169         `ses--in-killing-named-cell-list', and its setting is done in
12170         functions `ses-delete-row' and , `ses-delete-column' now.
12171         (ses-rename-cell): Make cell new name a buffer local variable.
12172         (ses-rename-cell): Change correction of
12173         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
12174         computation of the range over which `cursor-intangible' property was
12175         to be updated. This correction was ok for non spilling cells, but not
12176         for cells spilling over following blank cells. Simply use
12177         `next-single-property-change' rather than computing the end column
12178         from column widths.
12180 2016-01-19  John Wiegley  <johnw@newartisans.com>
12182         Merge from origin/emacs-25
12184         3ae7934 ; * etc/NEWS: Mark entries that don't need further treatment.
12185         6165c36 * lisp/files.el (dir-locals--all-files): Respect absolute file-names
12186         2ffdf15 * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
12187         71ecd62 * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
12188         f0b82b3 * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
12189         86e4513 Fix incompatbilities with MS-Windows 2000 and older
12190         4e96521 Mention in PROBLEMS an issue with MS-Windows NT4
12191         15c23aa Ensure 8-byte aligned memory allocation on MS-Windows 9X
12192         39afa42 Fix tests for active region in hideif.el
12193         05df666 Fix interactive specs in some hideif.el commands
12195 2016-01-19  John Wiegley  <johnw@newartisans.com>
12197         -
12199 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
12201         Avoid stdio in SIGINT handler
12203         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
12204         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
12205         * lib/ignore-value.h: New file, from gnulib.
12206         * src/keyboard.c: Include it.
12207         (write_stdout, read_stdin): New functions.
12208         (handle_interrupt): Use them instead of printf and getchar,
12209         and avoid fflush when handling signals.
12211 2016-01-19  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
12213         Refactor mml-smime.el, mml1991.el, mml2015.el
12215         (Maybe this is the last merge from Gnus git to Emacs git)
12217         Cf. discussion on ding mailing list, messages in
12218         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
12219         Common code from the three files mml-smime.el, mml1991.el, and
12220         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
12221         to gnus-util.el.
12223         The code is supported by test cases with necessary test keys.
12225         Documentation in message.texi is updated.
12227         * doc/misc/message.texi (Security, Using S/MIME):
12228         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
12229         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
12230         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
12232         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
12233         New functions.
12235         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
12236         (epa--select-keys): Autoload.
12237         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
12238         (mml-secure-openpgp-signers): New user option;
12239         make mml1991-signers and mml2015-signers obsolete aliases to it.
12240         (mml-secure-smime-signers): New user option;
12241         make mml-smime-signers an obsolete alias to it.
12242         (mml-secure-openpgp-encrypt-to-self): New user option;
12243         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
12244         aliases to it.
12245         (mml-secure-smime-encrypt-to-self): New user option;
12246         make mml-smime-encrypt-to-self an obsolete alias to it.
12247         (mml-secure-openpgp-sign-with-sender): New user option;
12248         make mml2015-sign-with-sender an obsolete alias to it.
12249         (mml-secure-smime-sign-with-sender): New user option;
12250         make mml-smime-sign-with-sender an obsolete alias to it.
12251         (mml-secure-openpgp-always-trust): New user option;
12252         make mml2015-always-trust an obsolete alias to it.
12253         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
12254         New user options.
12255         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
12256         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
12257         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
12258         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
12259         (mml-secure-passphrase-callback, mml-secure-check-user-id)
12260         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
12261         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
12262         (mml-secure-fingerprint, mml-secure-filter-keys)
12263         (mml-secure-normalize-cust-name, mml-secure-select-keys)
12264         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
12265         (mml-secure-self-recipients, mml-secure-recipients)
12266         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
12268         * lisp/gnus/mml-smime.el: Require epg;
12269         refactor declaration and autoloading of epg functions.
12270         (mml-smime-use): Doc fix.
12271         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
12272         Obsolete.
12273         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
12274         Use format instead of gnus-format-message.
12275         (mml-smime-epg-secret-key-id-list): Remove variable.
12276         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
12277         (mml-smime-epg-find-usable-secret-key): Remove functions.
12278         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
12280         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
12281         (mml1991-passphrase-cache-expiry): Obsolete.
12282         (mml1991-epg-secret-key-id-list): Remove variable.
12283         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
12284         (mml1991-epg-find-usable-secret-key): Remove functions.
12285         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
12287         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
12288         (mml2015-passphrase-cache-expiry): Obsolete.
12289         (mml2015-epg-secret-key-id-list): Remove variable.
12290         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
12291         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
12292         (mml2015-epg-find-usable-secret-key): Remove functions.
12293         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
12294         (mml2015-epg-encrypt): Refactor.
12296 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
12298         Merge from gnulib
12300         This mostly just updates copyright dates of gnulib files.
12301         It also updates to the latest version of texinfo.tex.
12303 2016-01-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12305         Move variables to inner loop, preparing for Mac port merge
12307         * src/keyboard.c (command_loop_1): Move variables `cmd',
12308         `keybuf', and `i' to inner loop.
12310 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
12312         Minor improvements to (random t) documentation
12314         * doc/lispref/numbers.texi (Random Numbers):
12315         * src/fns.c (Frandom):
12316         Omit unnecessary details about randomness fallback.
12317         Say that it is a fallback.
12319 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
12321         Rename methods in Ruby etags example file
12323         * test/etags/ruby-src/test.rb: Rename the example methods to
12324         correspond to the common terminology used in Ruby.
12325         * test/etags/CTAGS.good:
12326         * test/etags/ETAGS.good_1:
12327         * test/etags/ETAGS.good_2:
12328         * test/etags/ETAGS.good_3:
12329         * test/etags/ETAGS.good_4:
12330         * test/etags/ETAGS.good_5:
12331         * test/etags/ETAGS.good_6: Adjust accordingly.
12333 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
12335         Propertize backtick in 'def `(abc)' as symbol constituent
12337         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
12338         Propertize backtick in 'def `(abc)' as symbol constituent.
12339         (ruby-syntax-propertize-function):
12340         Rename to ruby-syntax-propertize.
12342 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
12344         Fix scrolling under scroll-preserve-screen-position on TTY
12346         * src/window.c (window_scroll_line_based): When setting point to
12347         preserve screen coordinates, don't let cursor enter either of the
12348         two scroll margins.  (Bug#22395)
12350 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12352         Fix shr table rendering of nested tables
12354         * shr.el (shr-table-body): Don't include all tbodies in nested
12355         tables in the levels above.
12357 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
12359         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
12361 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
12363         Add xref-based replacements for Dired search commands
12365         * lisp/dired-aux.el (dired-do-find-regexp)
12366         (dired-do-find-regexp-and-replace): New commands.
12367         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
12369         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
12370         `Q' to the new commands.
12372         * lisp/progmodes/xref.el (xref-query-replace)
12373         (xref-collect-matches): Add progress reporters.
12374         (xref--find-ignores-arguments): Return nil for zero ignores.
12375         (xref--show-xrefs): Add an optional argument.
12376         (xref-collect-matches): Drop the assert.  'find' accepts a
12377         regular file in place of directory argument, too.
12379 2016-01-18  Alan Mackenzie  <acm@muc.de>
12381         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
12383 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
12385         Improve user documentation of Xref
12387         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
12388         (Looking Up Identifiers, Identifier Search, List Identifiers):
12389         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
12390         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
12391         for the details.
12393 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
12395         Fix scrolling under scroll-preserve-screen-position and margins
12397         * src/window.c (window_scroll_pixel_based): When setting point to
12398         preserve screen coordinates, don't let cursor enter either of the
12399         two scroll margins.  Fix incorrect usage of
12400         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
12401         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
12403 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
12405         Unbreak the MS-Windows build
12407         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
12408         WINDOWSNT, to avoid link failure.  (Bug#22202)
12410 2016-01-18  Alan Mackenzie  <acm@muc.de>
12412         Desktop: protect users against inadvertant upgrading of desktop file.
12414         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
12416         * etc/NEWS: Add an entry about upgrading a desktop file.
12418         * lisp/desktop.el (desktop-file-version): Amend doc string.
12419         (desktop-native-file-version, desktop-io-file-version): new variables.
12420         (desktop-clear): Set desktop-io-file-version to nil.
12421         (desktop-buffer-info): make the presence of the last item on the list
12422         conditional on (>= desktop-io-file-version 208).
12423         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
12424         Amend the doc string.  Add code to determine the output file version.
12425         (desktop-create-buffer): Set desktop-io-file-version to the input file's
12426         version.
12428 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
12430         Initialize GnuTLS before calling gnutls_rnd
12432         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
12433         Don’t set gnutls_global_initialized if gnutls_global_init fails.
12434         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
12435         if 2.12 or later, which has gnutls_rnd.
12436         (emacs_gnutls_global_init, gnutls_rnd): New fallback
12437         placeholder macros if before 2.12.
12438         (init_random): Initialize gnutls globals before trying to
12439         use gnutls_rnd.
12441 2016-01-17  Andreas Schwab  <schwab@linux-m68k.org>
12443         Don't use GnuTLS before it is initialized
12445                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
12447 2016-01-17  Bill Wohler  <wohler@newt.com>
12449         * mh-e.el (mh-version): Add +git to version.
12451 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
12453         Port cleanup attribute to OpenBSD
12455         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
12456         sprintf, and this messes up 'configure' when it tests for the cleanup
12457         attribute.  Work around the problem by using __has_attribute directly.
12458         Problem reported by Joakim Jalap (Bug#22385).
12459         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
12460         * m4/ax_gcc_var_attribute.m4: Remove.
12461         * src/conf_post.h (__has_attribute): Provide a substitute, for
12462         non-GCC or older GCC compilers.  All uses changed to assume
12463         the substitute.  Check for the cleanup attribute.
12464         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
12466 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
12468         Prefer GnuTLS when acquiring random seed
12470         This attempts to improve on the fix for Bug#22202.
12471         * configure.ac (HAVE_DEV_URANDOM): Remove.
12472         Check /dev/urandom existence at run time, not at build time,
12473         since the device could exist in the former but not the latter.
12474         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
12475         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
12476         (random_seed): New typedef.
12477         (set_random_seed): New static function.
12478         (seed_random): Use them.
12479         (init_random): Use random_seed instead of uintmax_t, so as to
12480         not consume more entropy than needed.  Prefer gnutls_rnd if it
12481         works; this avoids a redundant open of /dev/urandom on
12482         GNU/Linux with modern GnuTLS.
12484 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
12486         Improve documentation of dynamic modules
12488         * doc/lispref/loading.texi (How Programs Do Loading): Update the
12489         description of searching for files in 'load' when Emacs was built
12490         with support for dynamic modules.
12492 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
12494         * INSTALL: Document --with-modules.
12496 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
12498         Document 'function-put'
12500         * doc/lispref/symbols.texi (Symbol Plists): Document
12501         'function-put'.  Update documentation of 'function-get'.
12503 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
12505         Document 'funcall-interactively'
12507         * doc/lispref/commands.texi (Interactive Call): Document
12508         'funcall-interactively'.
12509         * doc/lispref/functions.texi (Calling Functions): Mention
12510         'funcall-interactively' and provide a cross-reference.
12512 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
12514         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
12516         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
12518 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
12520         Document renaming of selection-related functions
12522         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
12523         functions into the corresponding "gui-*" functions.  Make the
12524         description slightly less X-centric.
12526 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
12528         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
12530 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
12532         Document 'define-inline'
12534         * doc/lispref/functions.texi (Defining Functions): Document
12535         'define-inline' and related macros.
12537         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
12539 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
12541         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
12543         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
12545 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
12547         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
12549         instead of manually writing a dir-locals file.
12551 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
12553         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
12555         (dir-locals-file)
12556         * lisp/files-x.el (modify-dir-local-variable)
12557         * lisp/dos-fns.el (dosified-file-name)
12558         * lisp/help-fns.el (describe-variable): Change accordingly.
12560 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
12562         Fix incompatbilities with MS-Windows 2000 and older
12564         * src/w32.c <multiByteToWideCharFlags>: New global variable.
12565         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
12566         Use it instead of the literal MB_ERR_INVALID_CHARS.
12567         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
12568         appropriate for the underlying OS version.  For details, see
12569         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
12570         * src/w32.h: Declare multiByteToWideCharFlags.
12571         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
12572         (add_tray_notification): Use multiByteToWideCharFlags instead of
12573         the literal MB_ERR_INVALID_CHARS.
12574         (_resetstkoflw_proc): New typedef.
12575         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
12576         pointer, as this function is absent in msvcrt.dll shipped with W2K
12577         and older systems.
12579 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
12581         Mention in PROBLEMS an issue with MS-Windows NT4
12583         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
12584         on Windows NT4.  For the details, see
12585         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
12587 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
12589         Ensure 8-byte aligned memory allocation on MS-Windows 9X
12591         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
12592         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
12593         (malloc_after_dump_9x, realloc_after_dump_9x)
12594         (free_after_dump_9x): New functions.  (Bug#22379)  See also
12595         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
12596         for more details about the original problem.
12598         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
12599         (free_after_dump_9x): Add prototypes.
12601 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
12603         Fix tests for active region in hideif.el
12605         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
12606         'use-region-p' to test whether to operate on region, instead of
12607         testing 'mark-active'.
12609 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
12611         Fix interactive specs in some hideif.el commands
12613         * lisp/progmodes/hideif.el (hif-evaluate-macro)
12614         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
12615         in commands that should only act on the region if it's active.
12617 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
12619         Enable test selector from command line
12621         * test/automated/Makefile.in: Change variable manipulation to avoid
12622           over-writing selector.
12624 2016-01-15  Alan Mackenzie  <acm@muc.de>
12626         Don't confuse "::" with ":" when trying to parse member initializers.
12628         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
12629         more robustly for ":" token when searching backwards for it.
12631         * lisp/progmodes/cc-langs (c-:$-multichar-token-regexp): New language
12632         variable.
12634 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
12636         Ensure positive number of glyphs for margins of positive width
12638         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
12639         positive value when a non-zero width of the marginal area was
12640         requested.  (Bug#22356)
12642 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
12644         Fix crashes when mini-window has non-zero margins
12646         * src/window.c (resize_frame_windows): Use 'new_size' to set
12647         minibuffer window's 'total_cols' value, as 'size' might be in
12648         pixels.  (Bug#22356)
12650 2016-01-15  Alan Mackenzie  <acm@muc.de>
12652         In comment-dwim with style `extra-line', respect indent-tabs-mode.
12654         This fixes bug #22369.
12656         * lisp/newcomment.el (comment-make-bol-ws): New function.
12657         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
12659 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
12661         Make 'random' seeds cryptographically secure if possible
12663         * configure.ac: Check for "/dev/urandom".
12665         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
12666         for the seed from "/dev/urandom".
12667         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
12668         * src/fns.c (Frandom): Update the doc string to indicate that
12669         system entropy is used when available.
12670         * src/w32.c: Include wincrypt.h.
12671         (w32_init_crypt_random, w32_init_random): New functions, use the
12672         CryptGenRandom API.
12673         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
12674         * src/w32.h (w32_init_random): Add prototype.
12676         * doc/lispref/numbers.texi (Random Numbers): Document more details
12677         about 't' as the argument to 'random'.
12679         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
12680         strong seed if possible.
12682         (Bug#22202)
12684 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
12686         Unhide the --no-line-directive option to 'etags'
12688         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
12689         option.  (Bug#22306)
12691         * doc/man/etags.1: Document the --no-line-directive option.
12693 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
12695         Fix picture-mode wrt double-width characters
12697         * lisp/textmodes/picture.el (picture-insert): Check the width of
12698         the character being replaced, not just that of the replacement.
12699         (Bug#1808)
12701 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
12703         Honor docstring of gnus-group-get-new-news
12705         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
12706         but non-numeric, unconditionally consider all groups to need updating.
12708 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
12710         Disallow parenthesis in non-pseudo CSS selectors
12712         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
12713         parenthesis in selectors except for in the function notation that
12714         might appear right after a pseudo-class.
12715         * test/indent/scss-mode.scss: Add a test for it.
12717 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
12719         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
12721 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
12723         check-maybe shall run only default tests
12725         * test/automated/Makefile.in (check, check-expensive): Depend on
12726         mostlyclean.
12727         (check-maybe): Re-run only default tests.
12728         (check-doit): Use code of check-maybe.
12729         (mostlyclean): Move *.log files away.
12731 2016-01-13  Mark Oteiza  <mvoteiza@udel.edu>
12733         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
12735 2016-01-13  Dmitry Gutov  <dgutov@yandex.ru>
12737         Un-obsolete tags-loop-continue
12739         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
12740         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
12742 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
12744         Document obsoletion of 'intangible' and 'point-entered/left'
12746         * doc/lispref/text.texi (Special Properties): Document the new
12747         properties 'cursor-intangible' and 'cursor-sensor-functions'.
12748         Document the obsolete status of 'intangible', 'pointer-left',
12749         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
12750         * doc/lispref/display.texi (Overlay Properties): Document that
12751         'intangible' overlay property is obsolete.
12753         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
12755 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
12757         Updater documentation of 'looking-back'
12759         * doc/lispref/searching.texi (Regexp Search): Update documentation
12760         of 'looking-back'.  Fix markup.
12762 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
12764         Document 'pre-redisplay-functions'
12766         * doc/lispref/hooks.texi (Standard Hooks):
12767         * doc/lispref/display.texi (Forcing Redisplay): Document
12768         'pre-redisplay-functions'.
12770 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
12772         Document the new deafault value of 'load-read-function'
12774         * doc/lispref/loading.texi (How Programs Do Loading): Document the
12775         change in the default value of 'load-read-function'.
12777 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
12779         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
12781         * doc/lispref/nonascii.texi (Text Representations): Document
12782         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
12784 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
12786         Document the new prefix-command hooks
12788         * doc/lispref/hooks.texi (Standard Hooks): Document
12789         `prefix-command-echo-keystrokes-functions' and
12790         `prefix-command-preserve-state-hook'.
12792 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
12794         Fix one more misuse of time-stamp-time-zone
12796         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
12797         than the unportable "GMT" for time zone.
12799 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
12801         Fix NNTP NEWGROUPS off-by-a-few-hours bug
12803         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
12804         in Universal Time, since we’re telling the server “GMT”.
12806 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
12808         Update publicsuffix.txt from upstream
12810         * etc/publicsuffix.txt: Update from
12811         https://publicsuffix.org/list/effective_tld_names.dat
12812         dated 2016-01-12 11:52:01 UTC.
12814 2016-01-12  Glenn Morris  <rgm@gnu.org>
12816         Fix some declarations.
12818         * lisp/descr-text.el (internal-char-font):
12819         * lisp/cedet/mode-local.el (xref-item-location):
12820         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
12821         (epg-sub-key-capability, epg-sub-key-validity):
12822         * lisp/international/mule-util.el (internal-char-font):
12823         Fix declarations.
12825 2016-01-12  Glenn Morris  <rgm@gnu.org>
12827         Fix some custom types.
12829         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
12830         * lisp/gnus/gnus.el (gnus-valid-select-methods):
12831         * lisp/mail/rmail.el (rmail-get-coding-function):
12832         * lisp/net/newst-treeview.el (newsticker-groups-filename):
12833         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
12834         * lisp/textmodes/tildify.el (tildify-space-predicates):
12835         * lisp/url/url-tramp.el (url-tramp-protocols):
12836         Fix custom types.
12838 2016-01-12  Glenn Morris  <rgm@gnu.org>
12840         Add some missing version tags.
12842         * lisp/electric.el (electric-quote-comment)
12843         (electric-quote-string, electric-quote-paragraph):
12844         * lisp/epg-config.el (epg-gpgconf-program):
12845         * lisp/rect.el (rectangle-preview):
12846         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
12847         * lisp/emacs-lisp/package.el (package-selected-packages)
12848         (package-hidden-regexps):
12849         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
12850         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
12851         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
12852         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
12853         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
12854         (mml-smime-sign-with-sender, mml2015-always-trust)
12855         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
12856         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
12857         (browse-url-conkeror-arguments):
12858         * lisp/net/newst-reader.el (newsticker-download-logos):
12859         * lisp/progmodes/gud.el (gud-guiler-command-name):
12860         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
12861         * lisp/progmodes/project.el (project-vc):
12862         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
12863         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
12864         (python-shell-completion-native-disabled-interpreters)
12865         (python-shell-completion-native-enable)
12866         (python-shell-completion-native-output-timeout)
12867         (python-shell-completion-native-try-output-timeout):
12868         * lisp/progmodes/xref.el (xref):
12869         * lisp/term/screen.el (xterm-screen-extra-capabilities):
12870         * lisp/term/xterm.el (xterm-max-cut-length):
12871         Add missing version tags.
12873 2016-01-12  Glenn Morris  <rgm@gnu.org>
12875         * test/automated/core-elisp-tests.el
12876         (core-elisp-tests-1-defvar-in-let): Add a custom type.
12878 2016-01-12  Glenn Morris  <rgm@gnu.org>
12880         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
12882         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
12884 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
12886         Merge from gnulib
12888         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
12889         It also updates to the latest version of texinfo.tex.
12890         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
12891         * build-aux/update-copyright, doc/misc/texinfo.tex:
12892         Update from gnulib.
12894 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
12896         Update documentation of 'process-running-child-p'
12898         * doc/lispref/processes.texi (Input to Processes): Document the
12899         changes in return value of 'process-running-child-p'.
12901 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
12903         Update documentation of 'deactivate-mark'.
12905         * doc/lispref/markers.texi (The Mark): Document that
12906         'deactivate-mark' is now buffer-local when set.
12908 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
12910         Update documentation of 'completion-table-dynamic'
12912         * doc/lispref/minibuf.texi (Programmed Completion): Document the
12913         new optional argument to 'completion-table-dynamic'.
12915 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
12917         Document changes in 'read-buffer' and 'read-buffer-function'
12919         * doc/lispref/minibuf.texi (High-Level Completion): Document the
12920         4th argument to 'read-buffer' and 'read-buffer-function'.
12922 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
12924         Fix time-stamp-time-zone bugs introduced in July
12926         This fixes a bug introduced when the July changes to
12927         format-time-string installed, as the changes were not
12928         correctly handled in this module (Bug#22302).
12929         Also, document time stamp time zones.
12930         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
12931         (time-stamp--format): New private function.
12932         (time-stamp-string, time-stamp-string-preprocess)
12933         (time-stamp-do-number): Use it.
12934         * doc/emacs/files.texi (Time Stamps): Mention time zones.
12935         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
12937 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
12939         Make piping to subprocesses more robust on MS-Windows
12941         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
12942         buffer can hold.  Don't return -1 if something has been written to
12943         the pipe.  Zero out 'errno' before calling '_write', to avoid
12944         returning a stale value.  (Bug#22344)
12945         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
12946         * src/w32.c (pipe2): Use it to request a user-defined size for the
12947         pipe being created.
12949         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
12951         * doc/emacs/msdos.texi (Windows Processes): Document
12952         'w32-pipe-buffer-size'.
12954 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
12956         * lisp/emacs-lisp/syntax.el (syntax-ppss-table): New var
12958         (syntax-ppss):
12959         * lisp/font-lock.el (font-lock-fontify-syntactically-region): Use it.
12961 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
12963         lisp/nxml: Use syntax-tables for comments
12965         * lisp/nxml/nxml-mode.el (nxml-set-face): Prepend.
12966         (nxml-mode): Set syntax-ppss-table.
12967         Use sgml-syntax-propertize-function for syntax-propertize-function.
12968         Let font-lock highlight strings and comments.
12969         (nxml-degrade): Don't touch "nxml-inside" property any more.
12970         (nxml-after-change, nxml-after-change1): Remove functions.
12971         (comment): Don't set fontify rule any more.
12972         (nxml-fontify-attribute): Don't highlight the value any more.
12973         (nxml-namespace-attribute-value-delimiter, nxml-namespace-attribute-value)
12974         (nxml-comment-delimiter, nxml-comment-content): Remove faces.
12976         * lisp/nxml/nxml-rap.el (nxml-scan-end): Remove.
12977         (nxml-get-inside, nxml-inside-start, nxml-inside-end): Use syntax-ppss.
12978         (nxml-clear-inside, nxml-set-inside): Remove.
12979         (nxml-scan-after-change): Remove function.
12980         (nxml-scan-prolog, nxml-tokenize-forward): Simplify.
12981         (nxml-ensure-scan-up-to-date): Use syntax-propertize.
12982         (nxml-move-outside-backwards):
12983         * lisp/nxml/nxml-outln.el (nxml-section-tag-backward): Adjust to new
12984         nxml-inside-start behavior.
12986         * lisp/nxml/nxml-util.el (nxml-debug-set-inside)
12987         (nxml-debug-clear-inside): Remove macros.
12989         * lisp/nxml/xmltok.el (xmltok-forward-special): Remove function.
12990         (xmltok-scan-after-comment-open): Simplify.
12992 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
12994         * elisp-mode.el (elisp--font-lock-flush-elisp-buffers): Fix comment
12996 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
12998         * lisp/nxml: Use standard completion; it also works for company-mode
13000         * lisp/nxml/nxml-mode.el (nxml-complete): Obsolete.
13001         (nxml-completion-at-point-function): Remove.
13002         (nxml-mode): Don't set completion-at-point-functions.
13003         * lisp/nxml/rng-nxml.el (rng-nxml-mode-init): Set it here instead.
13004         (rng-completion-at-point): Rename from rng-complete and mark it
13005         non-interactive.  It is now to be used as completion-at-point-function.
13006         (rng-complete-tag, rng-complete-end-tag, rng-complete-attribute-name)
13007         (rng-complete-attribute-value): Don't perform completion, but return
13008         completion data instead.
13009         (rng-complete-qname-function, rng-generate-qname-list): Add a few
13010         arguments, previously passed via dynamic coping.
13011         (rng-strings-to-completion-table): Rename from
13012         rng-strings-to-completion-alist.  Don't return an alist.  Don't both
13013         sorting and uniquifying.
13015         * lisp/nxml/rng-util.el (rng-complete-before-point): Delete function.
13016         (rng-completion-exact-p, rng-quote-string): Delete functions.
13018         * lisp/nxml/rng-valid.el (rng-recover-start-tag-open)
13019         (rng-missing-attributes-message, rng-missing-element-message)
13020         (rng-mark-missing-end-tags): Use explicit ".." in formats rather than
13021         calling rng-quote-string everywhere.
13023 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
13025         Use sgml-electric-tag-pair-mode also in nxml-mode
13027         * lisp/nxml/rng-nxml.el: Require sgml-mode.
13028         (rng-nxml-easy-menu): Add entry for sgml-electric-tag-pair-mode.
13029         (rng-complete-qname-function): Use complete-with-action.
13031         * lisp/textmodes/sgml-mode.el (sgml-electric-tag-pair-before-change-function):
13032         Let-bind forward-sexp-function, since nxml-mode binds it to
13033         something incompatible.
13035         * lisp/nxml/nxml-mode.el: Use setq-local and defvar-local.
13037 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
13039         * xmltok.el: Mark the "sole --" rather than the comment opener
13041         * lisp/nxml/xmltok.el (xmltok-scan-after-comment-open): Put the error
13042         marker on the "sole --" rather than on the comment opener.
13044 2016-01-15  Sam Steingold  <sds@gnu.org>
13046         replace `tramp-compat-split-string' (removed) with `split-string'
13048         (python-shell-tramp-refresh-process-environment)
13049         (python-shell-calculate-pythonpath): use `split-string'
13050         instead of defunct `tramp-compat-split-string'
13052 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
13054         Update nXML to use Emacs's Unicode support, and lexical-binding
13056         * etc/nxml/*.el: Remove obsolete char-name files.
13057         * lisp/nxml/xsd-regexp.el (xsdre-range-list-difference): Remove unused
13058         var `next'.
13059         * lisp/nxml/rng-nxml.el (rng-set-state-after): Don't assume point-min==1.
13060         * lisp/nxml/rng-match.el (rng-update-match-state): Simplify.
13061         * lisp/nxml/nxml-outln.el (nxml-outline-state-transform-exceptions)
13062         (nxml-target-section-pos, nxml-depth-in-target-section)
13063         (nxml-outline-state-transform-alist)
13064         (nxml-outline-display-section-tag-function): Move decl before first use.
13065         * lisp/nxml/nxml-mode.el (nxml-char-name-ignore-case)
13066         (nxml-char-name-alist, nxml-char-name-table)
13067         (nxml-autoload-char-name-set-list, nxml-named-char-history): Remove vars.
13068         (nxml-enable-char-name-set, nxml-disable-char-name-set)
13069         (nxml-char-name-set-enabled-p, nxml-autoload-char-name-set)
13070         (nxml-define-char-name-set, nxml-get-char-name): Remove functions.
13071         (nxml-insert-named-char): Use read-char-by-name instead.
13072         (nxml-char-ref-display-extra): Use get-char-code-property.
13073         * lisp/nxml/nxml-maint.el (nxml-create-unicode-char-name-sets):
13074         Remove function.
13075         * lisp/nxml/nxml-glyph.el, lisp/nxml/nxml-uchnm.el: Remove files.
13077 2016-01-15  Michael Albinus  <michael.albinus@gmx.de>
13079         Add "sg" method to Tramp
13081         * doc/misc/tramp.texi (Inline methods): Add "sg" method.
13082         (Customizing Completion): Add function `tramp-parse-etc-group'.
13084         * lisp/net/tramp-sh.el (tramp-methods) <sg>: Add.  (Bug#22329)
13085         (tramp-completion-function-alist-sg): New defconst.
13086         (top): Completion function for "sg" is
13087         `tramp-completion-function-alist-sg'.
13089         * lisp/net/tramp.el (tramp-completion-function-alist): Adapt docstring.
13090         (tramp-parse-etc-group, tramp-parse-etc-group-group): New defuns.
13092 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
13094         Remove XEmacs compatibility in Tramp
13096         * doc/misc/tramp.texi: Replace flags by their hard coded name.
13097         Remove unused flags and the enclosed alternative text for XEmacs.
13099         * doc/misc/trampver.texi: Use "Tramp" CamelCase.  Rename "emacs"
13100         and "xemacs" flags to "unified" and "separate".  Remove flags
13101         "emacsgw", "emacsname", "emacsdir", "ftppackagename",
13102         "emacsothername", "emacsotherdir" and "emacsotherfilename".
13103         (trampver):
13104         * lisp/net/trampver.el (tramp-version): Set to "2.3.0-pre".
13106         * lisp/net/tramp.el (bkup-backup-directory-info)
13107         (directory-sep-char, ls-lisp-use-insert-directory-program)
13108         (outline-regexp, tramp-backup-directory-alist)
13109         (tramp-default-method, tramp-shell-prompt-pattern, tramp-syntax)
13110         (tramp-file-name-regexp-unified)
13111         (tramp-file-name-regexp-separate)
13112         (tramp-completion-file-name-regexp-unified)
13113         (tramp-completion-file-name-regexp-separate, tramp-chunksize)
13114         (tramp-get-method-parameter, tramp-find-method, tramp-find-user)
13115         (tramp-debug-message, tramp-progress-reporter-update)
13116         (with-tramp-progress-reporter)
13117         (tramp-rfn-eshadow-setup-minibuffer)
13118         (rfn-eshadow-setup-minibuffer-hook, tramp-unload-hook)
13119         (tramp-rfn-eshadow-update-overlay)
13120         (rfn-eshadow-update-overlay-hook, tramp-default-file-modes)
13121         (tramp-file-name-for-operation)
13122         (tramp-completion-file-name-handler)
13123         (tramp-autoload-file-name-handler, tramp-completion-mode-p)
13124         (tramp-handle-directory-files)
13125         (tramp-handle-directory-files-and-attributes)
13126         (tramp-handle-dired-uncache, tramp-handle-find-backup-file-name)
13127         (tramp-handle-insert-file-contents, tramp-handle-load)
13128         (tramp-handle-shell-command)
13129         (tramp-handle-verify-visited-file-modtime)
13130         (tramp-handle-file-notify-valid-p, tramp-accept-process-output)
13131         (tramp-check-for-regexp, tramp-wait-for-regexp)
13132         (tramp-send-string, tramp-mode-string-to-int)
13133         (tramp-get-local-gid, tramp-check-cached-permissions)
13134         (tramp-get-remote-tmpdir, tramp-make-tramp-temp-file)
13135         (auto-save-file-name-transforms)
13136         (tramp-handle-make-auto-save-file-name, tramp-read-passwd)
13137         (tramp-clear-passwd, tramp-time-diff):
13138         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp)
13139         (directory-sep-char, tramp-adb-file-name-handler-alist)
13140         (tramp-adb-parse-device-names)
13141         (tramp-adb-handle-expand-file-name)
13142         (tramp-adb-handle-file-truename, tramp-adb--gnu-switches-to-ash)
13143         (tramp-adb-handle-file-local-copy)
13144         (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
13145         (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
13146         (tramp-adb-handle-shell-command)
13147         (tramp-adb-handle-start-file-process, tramp-adb-get-device)
13148         (tramp-adb-maybe-open-connection):
13149         * lisp/net/tramp-cache.el (tramp-persistency-file-name)
13150         (tramp-cache-print):
13151         * lisp/net/tramp-cmds.el (tramp-cleanup-all-connections)
13152         (tramp-bug, tramp-reporter-dump-variable)
13153         (tramp-load-report-modules, tramp-append-tramp-buffers):
13154         * lisp/net/tramp-compat.el (tramp-compat-funcall)
13155         (tramp-advice-file-expand-wildcards)
13156         (tramp-compat-temporary-file-directory)
13157         (tramp-compat-make-temp-file, tramp-compat-copy-file)
13158         (tramp-compat-delete-directory, )
13159         (tramp-compat-process-running-p):
13160         * lisp/net/tramp-ftp.el (tramp-methods) <ftp>:
13161         (tramp-default-method-alist, tramp-foreign-file-name-handler-alist):
13162         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
13163         (tramp-gvfs-do-copy-or-rename-file, tramp-gvfs-handle-copy-file)
13164         (tramp-gvfs-handle-file-local-copy)
13165         (tramp-gvfs-handle-file-name-all-completions)
13166         (tramp-gvfs-handle-file-notify-add-watch)
13167         (tramp-gvfs-monitor-file-process-filter)
13168         (tramp-gvfs-handle-file-readable-p)
13169         (tramp-gvfs-handle-rename-file, tramp-gvfs-handle-write-region)
13170         (tramp-gvfs-file-name, tramp-gvfs-handler-askquestion)
13171         (tramp-gvfs-maybe-open-connection)
13172         (tramp-gvfs-parse-device-names):
13173         * lisp/net/tramp-gw.el (tramp-gw-aux-proc-sentinel)
13174         (tramp-gw-open-connection, tramp-gw-open-network-stream):
13175         * lisp/net/tramp-sh.el (directory-sep-char)
13176         (tramp-sh-file-name-handler-alist)
13177         (tramp-sh-handle-file-truename)
13178         (tramp-sh-handle-set-visited-file-modtime)
13179         (tramp-sh-handle-verify-visited-file-modtime)
13180         (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
13181         (tramp-sh-handle-file-acl)
13182         (tramp-sh-handle-file-name-all-completions)
13183         (tramp-sh-handle-copy-file, tramp-sh-handle-rename-file)
13184         (tramp-do-copy-or-rename-file-directly)
13185         (tramp-do-copy-or-rename-file-out-of-band)
13186         (dired-compress-file-suffixes, dired-remove-file)
13187         (tramp-sh-handle-dired-compress-file)
13188         (tramp-sh-handle-insert-directory)
13189         (tramp-sh-handle-expand-file-name)
13190         (tramp-sh-handle-start-file-process)
13191         (tramp-sh-handle-process-file, tramp-sh-handle-file-local-copy)
13192         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
13193         (tramp-sh-handle-file-notify-add-watch)
13194         (tramp-sh-gvfs-monitor-dir-process-filter)
13195         (tramp-sh-inotifywait-process-filter, tramp-maybe-send-script)
13196         (tramp-find-executable)
13197         (tramp-open-connection-setup-interactive-shell)
13198         (tramp-find-inline-encoding, tramp-compute-multi-hops)
13199         (tramp-maybe-open-connection, tramp-convert-file-attributes)
13200         (tramp-get-remote-path, tramp-get-remote-touch):
13201         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
13202         (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
13203         (tramp-smb-handle-delete-directory)
13204         (tramp-smb-handle-directory-files, tramp-smb-handle-file-acl)
13205         (tramp-smb-handle-make-directory-internal)
13206         (tramp-smb-handle-process-file, tramp-smb-handle-rename-file)
13207         (tramp-smb-handle-set-file-acl, tramp-smb-handle-set-file-modes)
13208         (tramp-smb-handle-write-region, tramp-smb-get-file-entries)
13209         (tramp-smb-get-cifs-capabilities)
13210         (tramp-smb-maybe-open-connection):
13211         * lisp/net/trampver.el (tramp-repository-get-version):
13212         Remove XEmacs compat code.
13214         * lisp/net/tramp-cmds.el (mml-mode, mml-insert-empty-tag)
13215         (reporter-dump-variable): Declare functions.
13217         * lisp/net/tramp.el (tramp-bkup-backup-directory-info)
13218         (tramp-advice-minibuffer-electric-separator)
13219         (tramp-advice-minibuffer-electric-tilde)
13220         (tramp-handle-unhandled-file-name-directory):
13221         * lisp/net/tramp-compat.el (tramp-compat-with-temp-message)
13222         (tramp-compat-font-lock-add-keywords)
13223         (tramp-compat-load, tramp-compat-number-sequence)
13224         (tramp-compat-split-string, tramp-compat-delete-dups):
13225         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-file-contents-literally):
13226         Remove.
13228         * lisp/net/tramp-sh.el (tramp-methods) <psftp>: This does not work
13229         recursively.
13231 2016-01-14  K. Handa  <handa@gnu.org>
13233         fix previous change of src/ftfont.c (ftfont_shape_by_flt)
13235         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
13236         second glyph only when there are enough glyphs.
13238 2016-01-13  Glenn Morris  <rgm@gnu.org>
13240         * src/buffer.c (Fset_buffer_major_mode): Allow default major-mode,
13242         or its hook, to move point.  (Bug#22348)
13244 2016-01-12  Michael Albinus  <michael.albinus@gmx.de>
13246         Merge missing commit from emacs-25 branch
13248         * test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE, SELECTOR):
13249         New variables.
13250         (check-expensive, check-doit): New targets.
13252         * Makefile.in (check-expensive): New target.
13254         * test/lisp/autorevert-tests.el
13255         (auto-revert-test01-auto-revert-several-files):
13256         * test/lisp/filenotify-tests.el (file-notify--deftest-remote)
13257         (file-notify-test06-many-events):
13258         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
13259         (tramp-test27-start-file-process, tramp-test28-shell-command)
13260         (tramp-test29-vc-registered)
13261         (tramp-test31-special-characters-with-stat)
13262         (tramp-test31-special-characters-with-perl)
13263         (tramp-test31-special-characters-with-ls)
13264         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
13265         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
13266         (tramp-test35-unload): Tag the tests as :expensive-test.
13268 2016-01-12  John Wiegley  <johnw@newartisans.com>
13270         Merge from origin/emacs-25
13272         1f6898d test/automated/vc-hg.el: Support out-of-tree build
13273         3adb56e Minor change in tramp-tests.el
13274         2b535ba ; * etc/NEWS: Update the js.el entry.
13275         76b518c * etc/HELLO: Add Armenian and Mongolian greetings.
13276         b51f1ef Java Mode: Fontify identifiers in the presence of annotations.
13277         36b9539 Avoid an infloop when we run out of memory
13278         2006752 Avoid unnecessary failures of auto-saving after fatal error
13279         eef6784 Simplify HAVE_MODULES use in mark_maybe_pointer
13280         552694a Revert attempt to use 'noexcept' in typedef
13281         6ad0d39 Update documentation of 'indirect-function'
13282         c6a5314 ; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
13283         303141a Update documentation for obsoleting 'syntax-begin-function'
13284         4e6f61c ; * etc/NEWS: Mark documented and not-to-be-documented entries.
13285         e667bbb Document new features if Eshell
13286         9c4e4e0 ; * etc/NEWS: Update EUDC entries.
13287         1089dc9 Handle too long commands in Tramp
13288         684eb58 * .gitattributes: *.cur and *.pif are binary files too.
13289         d2c7fda * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
13290         bd3f53d * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
13291         09b2b8a * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
13292         cca0f93 ; Account for spaces before the filename
13293         c71e1e8 Use short date for 'hg annotate', and output the author
13294         f50027b Spelling fix
13295         c7dff67 ; * etc/NEWS: Fix the Xref entries that got separated.
13296         cc140bc Document user-level functions in project.el
13297         f8208b6 Document the user-level features of the Xref package
13298         b131fb8 * loading.texi: Add `define-type' entry for load-history
13299         db3c2a8 Improve doc strings and prompts in xref.el
13300         f6117ef Allow the use of `font-lock-extend-region-multiline' in CC Mode.
13301         90fd798 Fix coding system for Tramp on OS X.
13302         e985a0e ; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
13303         9dfcbf0 Update 'load-history' docs
13304         207e191 Fix (error ...) error
13305         457738f Correctly analyze brace arguments in templated C++ function declarations.
13306         d57724a * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
13307         2a9532d * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
13308         1a6b084 * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
13309         8be046f Respect fontification region calculated by major mode.  Fixes bug #22316.
13310         4b37cba Improve documentation of Delete Selection mode
13311         a034dd3 Fix two project-find-file issues
13312         30abf29 Clarify doc string of 'dired-current-directory'
13313         e990bb2 Use the face of preceding text for displaying the ellipsis
13314         5810ac3 Suppress Chinese file name test for OSX in tramp-tests.el
13315         eeb710a ; * lisp/startup.el: Sentences end with two spaces.
13316         428b3de * admin/admin.el (set-version): Also handle the NEWS file.
13317         648de81 ; Add NEWS entry for project.el
13318         671862f apropos-library: Skip obvious duplicates; don't error on generics
13319         51668a5 ; Grammar fix
13320         ed41d11 Add project-find-file and project-or-external-find-file
13321         056da45 ; Improve commentary in 'setup_for_ellipsis'
13322         269d008 ; Improve docstring for `inhibit-startup-echo-area-message'
13324 2016-01-12  John Wiegley  <johnw@newartisans.com>
13326         Merge from origin/emacs-25
13328         ce4a052 Add defvar-local to lisp-imenu-generic-expression
13329         a0121bc Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
13330         76fe2d5 * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
13331         1ae088f * lisp/emacs-lisp/autoload.el (autoload-find-destination):
13332         b6b47af Properly encode/decode base64Binary data in SOAP
13333         c632466 Obey coding-system-for-write when writing stdout/stderr in batch
13334         2f32cb5 * doc/misc/efaq.texi (Packages that do not come with Emacs):
13335                 Update the URI of MELPA and marmalade-repo.
13336                 Reported by CHENG Goa <chenggao@royau.me> in
13337                 https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
13338         d2937aa * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
13339         5330c25 * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
13340         7380990 Remove function wrongly on AWK Mode value of context
13341         fontification hook.
13342         d400753 * src/buffer.c: Stick with ASCII in doc string.
13343         221240c Reword transient-mark-mode doc string
13344         977d3ea Update doc string of 'selective-display'
13345         229c3fa Make C++ buffers writeable when writing their initial text
13346                 properties.
13347         f5c762c Additional changes for "make check-expensive"
13348         1729cf3 ; * admin/MAINTAINERS: Remove myself.
13349         33219d3 Apply text properties for <, > in new after-change function
13350                 (C++ Java Modes).
13352 2016-01-12  John Wiegley  <johnw@newartisans.com>
13354         Merge from origin/emacs-25
13356         9fb185a shr-tag-video bug fix
13357         6300655 Minor fixes in tramp-tests.el
13358         50575b1 Ensure redisplay when 'truncate-lines' is set
13359         0d9e80d Fix a doc string of 'transient-mark-mode'
13360         0000ae5 MS-Windows followup to latest gnulib update
13361         4bc5e02 Spelling fix
13362         f1093f7 Do secure signed Bcc handling
13364 2016-01-12  John Wiegley  <johnw@newartisans.com>
13366         Merge from origin/emacs-25
13368         861022f * doc/misc/texinfo.tex: Revert unwanted copyright change.
13369         46e47a5 ; * etc/refcards/ru-refcard.tex (cyear): Update via M-x set-copyright.
13370         71ea138 * lisp/align.el (align): Simplify a lambda
13371         5618a50 * lisp/align.el (align): Fix arg order in call to `align-region'
13372         1f680db Fix compilation next-error in buffers with selective-display
13373         d20a948 * nsm.el (nsm-check-protocol): Fix typo in the message.
13374         1da116f Add SHA1 warnings for high network security settings
13375         e48bacd ; * etc/NEWS: Typo fix.
13377 2016-01-12  John Wiegley  <johnw@newartisans.com>
13379         Merge from origin/emacs-25
13381         43662a2 ; Clarify that xref is still experimental
13382         0a6e6ca ; * admin/release-process: Remove some obsolete records.
13383         c2e9e3d * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
13384         8637f3d (semantic-symref-derive-find-filepatterns): Return a list
13385         0a7ad07 ; Re-arrange xref-related entries in NEWS.
13386         fe903ef Fix xref-find-references on MS-Windows
13387         55a28d8 ; Fixed visual bell artifact problem on NextStep.
13388         d064034 Document new features of tildify-mode
13389         964bea7 Document new features of Whitespace mode
13390         cd68f47 Improve documentation of new Hide-IfDef features
13391         723b8bf Fix regression in font-locking cl-assert and cl-check-type
13393 2016-01-12  John Wiegley  <johnw@newartisans.com>
13395         Merge from origin/emacs-25
13397         ef33bc7 Spelling and grammar fixes
13398         9c3dbab Fix copyright years by hand
13399         0e96320 Update copyright year to 2016
13401 2016-01-12  John Wiegley  <johnw@newartisans.com>
13403         Merge from origin/emacs-25
13405         9ee6ecb lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
13406         526d80c Port chart.el methods to cl-generic.
13407         410bb69 Add nt/INSTALL.W64 build instructions
13408         8f5b524 Add new input method 'programmer-dvorak'
13409         6d11f6e Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
13410         bb83bb1 Fix EWW rendering of long RTL lines
13411         b1a8509 fix  bug#21054
13412         ce5ad12 Clean up cairo printing code
13414 2016-01-12  John Wiegley  <johnw@newartisans.com>
13416         Merge from origin/emacs-25
13418         6ee327d Add handle_user_signal_hook
13419         47580e0 Avoid writing to purespace
13420         0588be7 Remove unused variable
13421         89e7483 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
13422         3b95e9c Use posix_openpt instead of openpty on Darwin
13423         86312ff Document support for ':documentation' in Lisp mode
13424         c930e75b Document new features of TeX mode
13425         7c83d84 Clarify docs of hscroll in RTL text
13426         4c8f8db Fix rendering of HTML pages that use character composition
13427         a8d37ca Avoid some compiler warnings in w32.c
13428         ce106f3de Undo ill-advised change
13429         be0bba4 Unbreak completion in python-mode buffers
13431 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
13433         test/automated/vc-hg.el: Support out-of-tree build
13435         * test/automated/vc-hg.el
13436         (vc-hg-annotate-extract-revision-at-line-with-filename)
13437         (vc-hg-annotate-extract-revision-at-line-with-both):
13438         Don't refer to source-directory.
13439         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
13441 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
13443         Minor change in tramp-tests.el
13445         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
13446         Use `dired-uncache' instead of a Tramp internal function.
13448 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
13450         * etc/HELLO: Add Armenian and Mongolian greetings.
13452         (Bug#22346)
13454 2016-01-11  Alan Mackenzie  <acm@muc.de>
13456         Java Mode: Fontify identifiers in the presence of annotations.
13458         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
13459         Don't move point when the defun fails.
13460         (c-forward-decl-or-cast-1): Correct a usage of match data.
13462         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
13463         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
13464         removed variable.
13466         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
13468 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
13470         Avoid an infloop when we run out of memory
13472         * src/alloc.c (garbage_collect_1): Don't bother saving and
13473         restoring the echo-area message if we are GC'ing after running out
13474         of memory.  This avoids an infloop due to repeated attempts to
13475         allocate memory for the cons cell needed to save the message,
13476         which signals the memory-full error, which attempts to save the
13477         echo-area message, which signals memory-full again, etc.
13479 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
13481         Avoid unnecessary failures of auto-saving after fatal error
13483         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
13484         the benefit of FAT volumes if we are called as part of shutting
13485         down due to a fatal error, which probably means we are trying to
13486         auto-save the session.
13487         * src/lread.c (check_obarray): Don't bother making the obarray
13488         valid if we are shutting down due to a fatal error.  This avoids
13489         interfering with auto-saving the crashed session.
13491 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
13493         Simplify HAVE_MODULES use in mark_maybe_pointer
13495         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
13496         so that later code can use 'if' rather than '#ifdef'.
13497         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
13498         always working.
13500 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
13502         Revert attempt to use 'noexcept' in typedef
13504         This use of 'noexcept' runs afoul of the C++11 standard.
13505         Problem reported by Philipp Stephani in:
13506         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
13507         * src/emacs-module.c (emacs_finalizer_function):
13508         Move this typedef here ...
13509         * src/emacs-module.h: ... from here, and use only the C
13510         version of the typedef.  The typedef is now private since it
13511         is never used in the .h file now and anyway it seemed to be
13512         causing more confusion than it cured.
13513         (make_user_ptr, get_user_finalizer, set_user_finalizer):
13514         Open-code the type instead.
13516 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
13518         Update documentation of 'indirect-function'
13520         * doc/lispref/eval.texi (Function Indirection): Update the
13521         documentation of 'indirect-function'.
13523 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
13525         Update documentation for obsoleting 'syntax-begin-function'
13527         * doc/lispref/syntax.texi (Position Parse): Undocument
13528         'syntax-begin-function' that is now obsolete.
13530 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
13532         Document new features if Eshell
13534         * doc/misc/eshell.texi (Input/Output): Document the new
13535         '#<bufname>' syntax.
13536         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
13537         Disable "Key Index" generation, as there are no @kindex entries in
13538         this manual.
13540 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
13542         Handle too long commands in Tramp
13544         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
13545         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
13546         order to not exceed shell command line limit.
13548         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
13549         (tramp--test-utf8): Include Arabic file name, again.
13551 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
13553         * .gitattributes: *.cur and *.pif are binary files too.
13555 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
13557         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
13559 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
13561         * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
13563         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
13564         within $(...).
13565         * test/indent/shell.sh: Add corresponding test.
13567 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13569         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
13571         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
13572         cast to Lisp_Object.
13574 2016-01-09  Dmitry Gutov  <dgutov@yandex.ru>
13576         Use short date for 'hg annotate', and output the author
13578         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
13579         Change '-d' to '-dq'.  (Bug#21805)
13580         (vc-hg-annotate-switches): Default to "-u" "--follow".
13581         (vc-hg-annotate-re): Update to recognize the short date format
13582         and the optional username.
13583         (vc-hg-annotate-time)
13584         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
13586         * test/automated/vc-hg.el: New file.
13588 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
13590         Spelling fix
13592 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
13594         Document user-level functions in project.el
13596         * lisp/progmodes/project.el (project-find-file)
13597         (project-or-external-find-file): Add doc strings.
13599 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
13601         Document the user-level features of the Xref package
13603         * doc/emacs/maintaining.texi (Maintaining): Add a list of
13604         described features.
13605         (Xref): New section, made out of thoroughly rewritten "Tags"
13606         section.
13607         (Find Identifiers, Looking Up Identifiers, Xref Commands)
13608         (Identifier Search, List Identifiers): New subsections,
13609         incorporating the old tags commands and the new xref commands.
13610         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
13611         Section and subsections demoted to a lower level.
13612         * doc/emacs/search.texi (Search):
13613         * doc/emacs/windows.texi (Pop Up Window):
13614         * doc/emacs/frames.texi (Creating Frames):
13615         * doc/emacs/programs.texi (Imenu, Symbol Completion):
13616         * doc/emacs/building.texi (Grep Searching):
13617         * doc/emacs/dired.texi (Operating on Files):
13618         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
13620 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13622         * loading.texi: Add `define-type' entry for load-history
13624         * doc/lispref/loading.texi (Where Defined): Remove incorrect
13625         cl-defmethod description, and add missing define-type entry.
13627 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
13629         Improve doc strings and prompts in xref.el
13631         * lisp/progmodes/xref.el (xref-backend-functions)
13632         (xref-find-definitions): Doc fixes.
13633         (xref-query-replace): Doc fix.  Improve prompts for arguments.
13635 2016-01-09  Alan Mackenzie  <acm@muc.de>
13637         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
13639         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
13640         `font-lock-extend-regions-wholelines' from
13641         `font-lock-extend-region-functions' rather than setting the latter to
13642         nil.
13644 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
13646         Fix coding system for Tramp on OS X.
13648         * lisp/net/tramp-compat.el: Require ucs-normalize.
13650         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13651         Set coding system to `utf-8-hfs' for Mac OS X.
13653         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
13654         Flush directory properties when needed.
13655         (tramp--test-utf8): Include Chinese file name, again.
13657 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
13659         Update 'load-history' docs
13661         * doc/lispref/loading.texi (Where Defined): Update the list of
13662         forms in 'load-history' by adding the forms created for the
13663         'cl-generic' generics.  (Bug#21422)
13665 2016-01-08  Paul Eggert  <eggert@cs.ucla.edu>
13667         Fix (error ...) error
13669         Problem reported by Glenn Morris in:
13670         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
13671         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
13672         introduced in my Aug 28 change, where I got confused by the
13673         two meanings of (error ...).
13675 2016-01-08  Alan Mackenzie  <acm@muc.de>
13677         Correctly analyze brace arguments in templated C++ function declarations.
13679         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
13680         POS and LIMIT parameters, like the other c-go-list-* functions have.
13682         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
13683         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
13684         followed by template specifiers.
13686 2016-01-08  Glenn Morris  <rgm@gnu.org>
13688         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
13690         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
13692 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
13694         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
13696 2016-01-08  Alan Mackenzie  <acm@muc.de>
13698         Respect fontification region calculated by major mode.  Fixes bug #22316.
13700         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
13701         fontification region has been calculated by a function on
13702         font-lock-extend-after-change-region-function use this region rather than
13703         changing the end position to somewhere else.
13705 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
13707         Improve documentation of Delete Selection mode
13709         * lisp/delsel.el (delete-selection-mode)
13710         (delete-selection-helper): Update and expand the doc strings.
13711         (Bug#22296)
13713         * doc/emacs/mark.texi (Using Region): Document the behavior of
13714         delete commands in Delete Selection mode.  (Bug#22296)
13716         * doc/lispref/markers.texi (The Mark): Document how to add the
13717         support for Delete Selection mode to Lisp programs. (Bug#22296)
13719 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
13721         Fix two project-find-file issues
13723         * lisp/progmodes/project.el (project--value-in-dir):
13724         Temporarily set enable-local-variables to :all.
13725         (project-find-file, project-or-external-find-file):
13726         All autoloads.
13727         (project--find-file-in): Require xref.
13729 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
13731         Clarify doc string of 'dired-current-directory'
13733         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
13734         the return value might not end in a slash when called with the
13735         optional argument non-nil.  (Bug#6273)
13737 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
13739         Use the face of preceding text for displaying the ellipsis
13741         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
13742         text in it->saved_face_id for displaying the ellipsis, and ignore
13743         the face, if any, of the invisible text.  (Bug#22320)
13745 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
13747         Suppress Chinese file name test for OSX in tramp-tests.el
13749         * test/automated/tramp-tests.el (tramp--test-utf8):
13750         Remove instrumentation.  Suppress Chinese file name test for OSX.
13752 2016-01-07  Glenn Morris  <rgm@gnu.org>
13754         * admin/admin.el (set-version): Also handle the NEWS file.
13756 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
13758         apropos-library: Skip obvious duplicates; don't error on generics
13760         * lisp/apropos.el (apropos-library): Skip "was an autoload"
13761         entries, to avoid obvious duplicates.  For each cl-defmethod
13762         entry, take just its function symbol (bug#21422).
13764 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
13766         Add project-find-file and project-or-external-find-file
13768         * lisp/minibuffer.el (completion-category-defaults):
13769         Add `project-file' category.
13771         * lisp/progmodes/project.el (project-find-file)
13772         (project-or-external-find-file): New commands.
13773         (project--find-file-in): New private function.
13775         * lisp/progmodes/xref.el (xref-collect-matches): Use
13776         `expand-file-name' on DIR, to expand the tildes.
13777         (xref--find-ignores-arguments): Extract from
13778         `xref--rgrep-command'.
13780 2016-01-06  Leo Liu  <sdl.web@gmail.com>
13782         Add defvar-local to lisp-imenu-generic-expression
13784         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
13785           defvar-local.
13787 2016-01-06  Leo Liu  <sdl.web@gmail.com>
13789         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
13791         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
13792           Don't declare (indent 1).
13794 2016-01-06  Glenn Morris  <rgm@gnu.org>
13796         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
13798 2016-01-06  Glenn Morris  <rgm@gnu.org>
13800         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
13802         Avoid specifying the length of a time object (it has not been "2"
13803         for some time).
13805 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
13807         Properly encode/decode base64Binary data in SOAP
13809                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
13810                 base64Binary value as utf-8.
13811                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
13813 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
13815         Obey coding-system-for-write when writing stdout/stderr in batch
13817         * src/print.c (printchar_to_stream):
13818         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
13819         a non-nil value, use it to encode output in preference to
13820         locale-coding-system.  See the discussions in
13821         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
13822         for the details.
13824         * doc/lispref/os.texi (Terminal Output): Document how to send
13825         non-ASCII text via 'send-string-to-terminal'.
13826         (Batch Mode): Document how text written to standard streams is
13827         encoded.  Fix inaccuracy regarding which output streams are used
13828         by output functions in batch mode.
13830 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
13832         * doc/misc/efaq.texi (Packages that do not come with Emacs):
13833         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
13834         <chenggao@royau.me> in
13835         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
13837 2016-01-05  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
13839         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
13841         Fix backslash.  (Bug#22224)
13843 2016-01-05  Federico Beffa  <beffa@ieee.org>  (tiny change)
13845         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
13847         Make it actually work.  (Bug#22265)
13849 2016-01-05  Alan Mackenzie  <acm@muc.de>
13851         Remove function wrongly on AWK Mode value of context fontification hook.
13853         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
13854         swap order of entries so that awk's entry isn't superseded by the default.
13856         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
13857         to handle nil value of c-before-context-fontification-functions.
13859 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
13861         * src/buffer.c: Stick with ASCII in doc string.
13863 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
13865         Reword transient-mark-mode doc string
13867         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
13868         The value 'lambda (literally) can be interpreted as (quote lambda),
13869         which is not intended here; we want just the lambda symbol.
13871 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
13873         Update doc string of 'selective-display'
13875         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
13876         using it with the value of 't' is obsolete.  (Bug#1092)
13878 2016-01-05  Alan Mackenzie  <acm@muc.de>
13880         Make C++ buffers writeable when writing their initial text properties.
13882         This is a correction to yesterday's CC Mode patch.
13884         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
13885         c-save-buffer-state around the function rather than a mere `let'.
13887 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
13889         Additional changes for "make check-expensive"
13891         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
13892         Explain make target `check-expensive'.
13894         * etc/NEWS: Mention new make target `check-expensive'.
13896         * test/automated/Makefile.in (check-doit): New target.
13897         (check, check-expensive): Use it.
13899 2016-01-04  Alan Mackenzie  <acm@muc.de>
13901         Apply text properties for <, > in new after-change function (C++ Java Modes).
13903         These are category/syntax-table properties to give < and > paren syntax.
13904         Also apply certain `c-type' text properties to the insides of <..> constructs
13905         to ensure that identifiers contained by them get fontified.  This patch fixes
13906         bug #681.
13908         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
13909         after-change action.
13911         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
13912         change region to include <s and >s which might not be already marked as
13913         parens, rather than just when paren text properties are removed.
13914         (c-restore-<>-properties): New after-change function, which applies text
13915         properties marking < and > with paren syntax.
13917         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
13918         properties are applied to the interiors of <...> constructs, to ensure
13919         fontification of identifiers there.
13921         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
13922         c-restore-<>-properties to this list for C++ and Java.
13924         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
13925         c-before-font-lock-functions, exclude c-restore-<>-properties from the
13926         functions invoked.
13927         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
13928         to allow modification by before-change functions.
13929         (c-after-change): Amend c-new-END here, rather than initializing it and
13930         c-new-BEG.
13932 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
13934         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
13936 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
13938         Introduce check-expensive tests.
13940         * Makefile.in (check-expensive):
13941         * test/automated/Makefile.in (check-expensive): New target.
13943         * test/automated/auto-revert-tests.el
13944         (auto-revert-test01-auto-revert-several-files):
13945         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
13946         * test/automated/tramp-tests.el (tramp-test26-process-file)
13947         (tramp-test27-start-file-process, tramp-test28-shell-command)
13948         (tramp-test29-vc-registered)
13949         (tramp-test31-special-characters-with-stat)
13950         (tramp-test31-special-characters-with-perl)
13951         (tramp-test31-special-characters-with-ls)
13952         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
13953         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
13954         (tramp-test35-unload): Tag the tests as :expensive-test.
13956 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13958         shr-tag-video bug fix
13960         * shr.el (shr-tag-video): Protect against the `poster' being
13961         empty.
13963 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
13965         Minor fixes in tramp-tests.el
13967         * test/automated/tramp-tests.el (tramp-test26-process-file):
13968         Move point properly.
13969         (tramp-test29-vc-registered): Work with relative file names.
13971 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
13973         Ensure redisplay when 'truncate-lines' is set
13975         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
13976         (Bug#22303)
13978 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
13980         Fix a doc string of 'transient-mark-mode'
13982         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
13983         "lambda" in doc string from becoming a link to lambda expressions.
13985 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
13987         MS-Windows followup to latest gnulib update
13989         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
13991 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
13993         Spelling fix
13995 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
13997         Do secure signed Bcc handling
13999         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
14000         (bug#18718).
14002 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
14004         Avoid stdio in SIGINT handler
14006         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
14007         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
14008         * lib/ignore-value.h: New file, from gnulib.
14009         * src/keyboard.c: Include it.
14010         (write_stdout, read_stdin): New functions.
14011         (handle_interrupt): Use them instead of printf and getchar,
14012         and avoid fflush when handling signals.
14014 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
14016         * doc/misc/texinfo.tex: Revert unwanted copyright change.
14018 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14020         * lisp/align.el (align): Simplify a lambda
14022         * lisp/align.el (align): Fix arg order in call to `align-region'
14024 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
14026         Fix compilation next-error in buffers with selective-display
14028         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
14029         function.
14030         (compilation-internal-error-properties)
14031         (compilation-next-error-function, compilation-set-window): Use
14032         it.  (Bug#1092)
14034 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14036         * nsm.el (nsm-check-protocol): Fix typo in the message.
14038 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14040         Add SHA1 warnings for high network security settings
14042         * nsm.el (nsm-check-protocol): When using high security, warn
14043         about SHA1 certificates, which are now believed to be open to
14044         spoofing.
14046 2016-01-02  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
14048         Refactor mml-smime.el, mml1991.el, mml2015.el
14050         (Maybe this is the last merge from Gnus git to Emacs git)
14052         Cf. discussion on ding mailing list, messages in
14053         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
14054         Common code from the three files mml-smime.el, mml1991.el, and
14055         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
14056         to gnus-util.el.
14058         The code is supported by test cases with necessary test keys.
14060         Documentation in message.texi is updated.
14062         * doc/misc/message.texi (Security, Using S/MIME):
14063         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
14064         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
14065         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
14067         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
14068         New functions.
14070         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
14071         (epa--select-keys): Autoload.
14072         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
14073         (mml-secure-openpgp-signers): New user option;
14074         make mml1991-signers and mml2015-signers obsolete aliases to it.
14075         (mml-secure-smime-signers): New user option;
14076         make mml-smime-signers an obsolete alias to it.
14077         (mml-secure-openpgp-encrypt-to-self): New user option;
14078         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
14079         aliases to it.
14080         (mml-secure-smime-encrypt-to-self): New user option;
14081         make mml-smime-encrypt-to-self an obsolete alias to it.
14082         (mml-secure-openpgp-sign-with-sender): New user option;
14083         make mml2015-sign-with-sender an obsolete alias to it.
14084         (mml-secure-smime-sign-with-sender): New user option;
14085         make mml-smime-sign-with-sender an obsolete alias to it.
14086         (mml-secure-openpgp-always-trust): New user option;
14087         make mml2015-always-trust an obsolete alias to it.
14088         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
14089         New user options.
14090         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
14091         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
14092         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
14093         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
14094         (mml-secure-passphrase-callback, mml-secure-check-user-id)
14095         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
14096         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
14097         (mml-secure-fingerprint, mml-secure-filter-keys)
14098         (mml-secure-normalize-cust-name, mml-secure-select-keys)
14099         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
14100         (mml-secure-self-recipients, mml-secure-recipients)
14101         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
14103         * lisp/gnus/mml-smime.el: Require epg;
14104         refactor declaration and autoloading of epg functions.
14105         (mml-smime-use): Doc fix.
14106         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
14107         Obsolete.
14108         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
14109         Use format instead of gnus-format-message.
14110         (mml-smime-epg-secret-key-id-list): Remove variable.
14111         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
14112         (mml-smime-epg-find-usable-secret-key): Remove functions.
14113         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
14115         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
14116         (mml1991-passphrase-cache-expiry): Obsolete.
14117         (mml1991-epg-secret-key-id-list): Remove variable.
14118         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
14119         (mml1991-epg-find-usable-secret-key): Remove functions.
14120         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
14122         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
14123         (mml2015-passphrase-cache-expiry): Obsolete.
14124         (mml2015-epg-secret-key-id-list): Remove variable.
14125         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
14126         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
14127         (mml2015-epg-find-usable-secret-key): Remove functions.
14128         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
14129         (mml2015-epg-encrypt): Refactor.
14131 2016-01-02  Glenn Morris  <rgm@gnu.org>
14133         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
14135         Explicitly ignore case.  (Bug#22262)
14137 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
14139         (semantic-symref-derive-find-filepatterns): Return a list
14141         * lisp/cedet/semantic/symref/grep.el
14142         (semantic-symref-derive-find-filepatterns): Return a list.
14143         (semantic-symref-perform-search): Quote the result here once and for all.
14145 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
14147         Fix xref-find-references on MS-Windows
14149         * lisp/cedet/semantic/symref/grep.el
14150         (semantic-symref-derive-find-filepatterns): Use
14151         'shell-quote-argument' instead of manually quoting in a way that
14152         only works with Posix shells.  (Bug#22289)
14154 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
14156         Document new features of tildify-mode
14158         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
14159         (tildify-mode): Spelling fixes in doc strings.
14161         * etc/NEWS: Reformat the tildify-mode entry.
14163 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
14165         Document new features of Whitespace mode
14167         * doc/emacs/display.texi (Useless Whitespace): Document
14168         'whitespace-toggle-options' and the new 'big-indent' style.
14169         Document 'whitespace-big-indent-regexp'.  Document the Global
14170         Whitespace mode.
14172 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
14174         Improve documentation of new Hide-IfDef features
14176         * etc/NEWS: Expand and reword Hide-IfDef section.
14178 2016-01-02  Leo Liu  <sdl.web@gmail.com>
14180         Fix regression in font-locking cl-assert and cl-check-type
14182         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
14183           el-errs-re.
14185 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
14187         Spelling and grammar fixes
14189 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
14191         Fix copyright years by hand
14193         These are dates that admin/update-copyright did not update, or
14194         updated incorrectly.
14196 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
14198         Update copyright year to 2016
14200         Run admin/update-copyright.
14202 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
14204         Merge from gnulib
14206         This mostly just updates copyright dates of gnulib files.
14207         It also updates to the latest version of texinfo.tex.
14209 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
14211         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
14213 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
14215         Port chart.el methods to cl-generic.
14217         cl-call-next-method cannot be used inside EIEIO's defmethod.
14218         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
14219         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
14220         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
14221         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
14222         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
14223         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
14225 2015-12-31  Brian Burns  <bburns.km@gmail.com>
14227         Add nt/INSTALL.W64 build instructions
14229         * nt/INSTALL.W64: New file.
14230         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
14232 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
14234         Add new input method 'programmer-dvorak'
14236         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
14237         input method.
14239         * etc/NEWS: Mention it.
14241 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
14243         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
14245         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
14246         original M-TAB binding in a buffer-local variable.
14247         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
14248         if that is recorded, when point is in a place where flyspell
14249         should not be active (e.g., because the user turned on
14250         'flyspell-prog-mode').  (Bug#18533)
14252 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
14254         Fix EWW rendering of long RTL lines
14256         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
14257         of the selected window before filling its lines.  (Bug#22250)
14259 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
14261         fix  bug#21054
14263         * ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
14265 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14267         Clean up cairo printing code
14269         * src/gtkutil.c (xg_get_page_setup): Use listn.
14270         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
14271         decode_window_system_frame and FRAME_VISIBLE_P.
14272         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
14273         of Fdisplay.
14274         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
14275         instead of Fdisplay.  Temporarily unblock_input around QUIT.
14277 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14279         Add handle_user_signal_hook
14281         * src/keyboard.h (handle_user_signal_hook): New declaration.
14282         * src/keyboard.c (handle_user_signal_hook): New variable.
14283         (handle_user_signal): Call it.
14285 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14287         Avoid writing to purespace
14289         * src/alloc.c (Fmake_string): Don't write to empty string contents.
14290         (allocate_vector): Don't write to empty vector size.
14291         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
14292         Don't call unnecessary XSETCAR or XSETCDR.
14293         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
14294         write to empty string size_byte.
14296 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14298         Remove unused variable
14300         * lisp/international/mule-cmds.el: Remove unused variable
14301         `mac-system-coding-system'.
14303 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14305         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
14307 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14309         Use posix_openpt instead of openpty on Darwin
14311         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
14312         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
14313         Darwin-specific definitions.  Use posix_openpt instead.
14315 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
14317         Document support for ':documentation' in Lisp mode
14319         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
14320         (lisp-string-after-doc-keyword-p)
14321         (lisp-font-lock-syntactic-face-function): Add doc strings.
14323 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
14325         Document new features of TeX mode
14327         * doc/emacs/text.texi (TeX Print): Document
14328         'tex-print-file-extension'.
14329         * doc/emacs/programs.texi (Misc for Programs): Document support
14330         for Prettify Symbols mode in TeX mode.
14332 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
14334         Clarify docs of hscroll in RTL text
14336         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
14337         meaning of a window's horizontal scroll amount for RTL paragraphs.
14339 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
14341         Fix rendering of HTML pages that use character composition
14343         * src/indent.c (Fvertical_motion): Fix the case when point starts
14344         in the middle of a composition, as in shr-vertical-motion.
14345         (Bug#22250)
14347 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
14349         Avoid some compiler warnings in w32.c
14351         * src/w32.c (codepage_for_filenames, crlf_to_lf)
14352         (ansi_encode_filename, socket_to_fd, sys_write)
14353         (check_windows_init_file): Avoid compiler warnings about
14354         differences in pointer signedness.
14356 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
14358         Undo ill-advised change
14360         * lisp/progmodes/xref.el (xref-collect-matches): Undo
14361         ill-advised change.  The hits come in the order that `find'
14362         produces them in, which isn't alphabetical.
14364 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
14366         Unbreak completion in python-mode buffers
14368         * lisp/progmodes/python.el (python-shell-completion-at-point):
14369         Unbreak in python-mode buffers.
14371 2016-01-09  Andrew Hyatt  <ahyatt@gmail.com>
14373         Adding example replies to bug-triage.
14375         * admin/notes/bug-triage: Added example replies. Also, as requested,
14376           making the process notes into more of a checklist.
14378 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
14380         Rename the notes/admin/triage file to bug-triage.
14382         * CONTRIBUTE: Change reference to the triage file name.
14383         * admin/notes/triage: Rename file to admin/notes/bug-triage.
14385 2016-01-07  Glenn Morris  <rgm@gnu.org>
14387         Allow creation of loaddefs files without timestamps.
14389         * lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
14390         (autoload-generate-file-autoloads, update-directory-autoloads):
14391         If autoload-timestamps is nil, write "t" instead of file timestamp.
14392         (autoload-find-destination, update-directory-autoloads):
14393         If timestamp is "t", use the modtime of the output file instead.
14395 2016-01-06  Glenn Morris  <rgm@gnu.org>
14397         Doc tweaks.
14399         * lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
14400         * lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
14401         (calendar-iso-from-absolute):
14402         * lisp/calendar/cal-tex.el (cal-tex-comment):
14403         * lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
14405 2016-01-06  Glenn Morris  <rgm@gnu.org>
14407         Build tweaks related to tags files.
14409         * lib-src/Makefile.in (tagsfiles): New variable.
14410         (TAGS): Also depend on the source files.  Use our own etags program.
14411         * lisp/Makefile.in (ETAGS): Add EXEEXT.
14412         (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
14413         Remove.
14414         (tagsfiles): New, replacing lisptagsfiles1 etc.
14415         Remove irrelevant source files here rather than in the TAGS rule.
14416         (${ETAGS}): New rule.
14417         (TAGS): Also depend on the etags executable.
14418         * lwlib/Makefile.in (EXEEXT): New, set by configure.
14419         (ETAGS): Add EXEEXT.
14420         (${ETAGS}): New rule.
14421         (ctagsfiles): Use "wildcard".
14422         (TAGS): Also depend on the etags executable.
14423         * nt/Makefile.in (ETAGS, tagsfiles): New variables.
14424         (${ETAGS}): New rule.
14425         (TAGS): Fix dependencies.
14426         * oldXMenu/Makefile.in (EXEEXT): New, set by configure.
14427         (ETAGS): New variable, replacing $TAGS.  Use our own etags program.
14428         Remove "-t" argument.
14429         (${ETAGS}): New rule.
14430         (tagsfiles): New variable.
14431         (TAGS): New rule, with proper dependencies.
14432         * src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
14433         (ctagsfiles1, ctagsfiles2): Use "wildcard".
14434         (ctagsfiles3): Remove.
14435         (TAGS): Depend on etags.
14436         (../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
14437         directories decide if updates are needed.
14439 2016-01-06  Glenn Morris  <rgm@gnu.org>
14441         * lisp/Makefile.in (CAL_SRC): Skip calendar.el.
14443 2016-01-06  Glenn Morris  <rgm@gnu.org>
14445         * test/lisp/emacs-lisp/package-tests.el
14447         (package-test-macro-compilation): Fixup branch merge.
14449 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
14451         Fix fallout from merging emacs-25 branch in test/
14453         * .gitignore: Update for the new place of biditest.txt.
14454         * test/automated/: Directory removed.  All files moved to their
14455         proper places.
14456         * test/etags/: Directory removed.  All files moved to their proper
14457         places.
14458         * test/automated/url-parse-tests.el: File removed; it was an exact
14459         copy of the same file in test/lisp/url/.
14460         * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
14462 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
14464         Spelling fixes.
14466 2016-01-04  Daniel Colascione  <dancol@dancol.org>
14468         Let users disable unsafe signal handling code
14470         * src/keyboard.c (syms_of_keyboard): New user variables
14471         `attempt-stack-overflow-recovery' and
14472         `attempt-orderly-shutdown-on-fatal-signal'.
14473         * src/sysdep.c (stack_overflow): Check
14474         `attempt-stack-overflow-recovery'.
14475         * src/emacs.c (terminate_due_to_signal): Check
14476         `attempt-orderly-shutdown-on-fatal-signal'.
14478 2016-01-03  Michael Albinus  <michael.albinus@gmx.de>
14480         * configure.ac: Add error message for gfile on Nextstep.
14482 2016-01-03  John Wiegley  <johnw@newartisans.com>
14484         Merge branch 'emacs-25-merge'
14486 2016-01-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
14488         Align textually on fix done for emacs-25 branch for bug#21054
14490         * lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
14491         and useless `(if t ...)' in order to align textually on fix done for
14492         emacs-25 branch for bug#21054.
14494 2016-01-02  K. Handa  <handa@gnu.org>
14496         support rendering of wider range of combinging characters by ftfont backend
14498         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
14499         supports rendering of combining characters, call
14500         font-shape-gstring.
14502         * src/font.c (Ffont_get): Handle `combining-capability' property.
14503         (syms_of_font): New symbol ":combining-capability'.
14505         * src/font.h (struct font_driver): New member combining_capability.
14507         * src/ftfont.c: Include "category.h".
14508         (ftfont_driver): Initialize combining_capability to
14509         ftfont_combining_capability.
14510         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
14511         FLT in advance.
14512         (ftfont_combining_capability): New function.
14514 2016-01-01  Andrew Hyatt  <ahyatt@gmail.com>
14516         Add notes on bug triage procedure
14518         * CONTRIBUTE: In section on the issue tracker, point to new triage file.
14519         * admin/notes/triage: New file explaining triage procedure.
14521 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
14523         Correct ses-rename-cell cursor-intangible text prop updating.
14525         There were two problems:
14527         - First ses-rename-cell has to work when called non interactively
14528           (with non-nil CELL argument), so in this case the start pos of
14529           put-text-property cannot be plainly (point), you need a
14530           ses-goto-print call before
14532         - Second, the range itself was computed erronously, only the first
14533           char was affected instead of the full cell width. This was not
14534           noticeable prior to changes (Deprecate `intangible' and
14535           `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
14537         * lisp/ses.el (ses-rename-cell): Correct computation of position range
14538         to which the 'cursor-intangible text property has to be set to cell
14539         new name.
14541 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
14543         Don't fake empty cells value by "" when printing with a lambda.
14545         When using a lambda expression printer function the user should be
14546         free to format differently a really empty cell, ie. containing nil,
14547         from a cell containing an empty string "".
14549         * ses.el (ses-call-printer): Replace `(or value "")' by just `value'
14550         in the case of a lambda expression printer function.
14552         * ses.texi (Printer functions): Add example and description about
14553         lambda expression printer function handling all the possible values,
14554         including unexpected ones.
14556 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
14558         Quick temporary hack to fix curcell refreshing.
14560         The problem was caused by change: 2015-04-13 Deprecate `intangible'
14561         and `point-entered' properties. The problem is that this change has
14562         removed the (setq ses--curcell t) setting in the ses-command-hook
14563         function.
14565         * ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
14566         a condition to call function `ses-set-curcell'. Comment this as a quick
14567         temporary hack to make it work, as I don't know yet whether a definite
14568         correction would be to make the ses-set-curcell at every ses-check-curcell,
14569         or to revert to the previous approach, ie marking ses--curcell as out-of-date
14570         at every potentially cursor motion command.
14572 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14574         Restrictive URL checking tweaks
14576         * lisp/net/eww.el (eww): Check whether the domain is
14577         restrictive instead of the string
14578         (http://македонија.icom.museum is restrictive even if each
14579         part is from a different script).
14581 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14583         New function `puny-highly-restrictive-domain-p'
14585         * lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
14586         (puny-highly-restrictive-domain-p): New function.
14588 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14590         eww build fix (require puny)
14592 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14594         Transform non-restrictive domains to punycode for display
14596         * lisp/net/eww.el (eww): Check whether the domain is Highly
14597         Restrictive in the Unicode IDNA sense.
14599 2015-12-30  John Wiegley  <johnw@newartisans.com>
14601         Merge emacs-25 into master (using imerge)
14603 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
14605         Fix typos in CC Mode manual
14607         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
14608         typos.  (Bug#22267)
14610 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
14612         Avoid assertion violations in compact_font_cache_entry
14614         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
14615         avoid assertion violation in ASIZE.  (Bug#22263)
14617 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
14619         Fix filling text with bidirectional characters in shr.el
14621         * lisp/net/shr.el (shr-insert-document): Bind
14622         bidi-display-reordering to nil while filling lines.  This is
14623         required for when a line includes characters whose bidi
14624         directionality is opposite to the base paragraph direction,
14625         because columns are counted in the logical order.  (Bug#22250)
14627 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
14629         Further Unicode restrictive fixups
14631         * puny.el (puny-highly-restrictive-p): Include the extra
14632         identifier characters from table 3.
14634 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
14636         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
14638 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
14640         Sync with Tramp 2.2.13
14642         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
14644         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
14645         Use `tramp-compat-funcall'.
14647         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
14648         Make `split-string' call compatible with older Emacsen.
14650         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
14652 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
14654         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
14656 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
14658         Mention that tls.el is secure by default, and will fail
14660 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
14662         Make tls.el use trustfiles by default
14664         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
14665         (open-tls-stream): Insert the trustfile by looking at
14666         `gnutls-trustfiles'.
14668 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
14670         Refactor out gnutls-trustfiles
14672         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
14674 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
14676         Remove --insecure from gnutls-cli invocation
14678         * tls.el (tls-program): Default to using secure TLS
14679         connections (bug#19284).
14681 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
14683         Add a new function to say whether a string is restrictive
14685         * puny.el (puny-highly-restrictive-p): New function.
14687 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
14689         Spelling fix
14691 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
14693         Port report-emacs-bug to deterministic builds
14695         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
14696         recent "built on" change to deterministic builds where
14697         emacs-build-system will be nil.  See:
14698         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
14700 2015-12-28  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
14702         Fix URL auth error message
14704         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
14705         message more correct (bug#20069).
14707 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
14709         Mention the new puny.el library
14711 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
14713         IDNA-related fixes for the URL library
14715         * lisp/url/url-http.el (url-http-create-request): IDNA-encode
14716         the Host: header.
14718         * lisp/url/url-util.el (url-encode-url): Don't hex-encode
14719         domain names, but leave them as UTF-8, so that they can be
14720         IDNA-encoded later when contacting the host.
14722 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
14724         IDNA-encode all domain names in `open-network-stream'
14726         * network-stream.el (open-network-stream)
14727         (network-stream-open-plain, network-stream-open-starttls):
14728         IDNA-encode all domain names, if needed.
14730 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
14732         Fix puny-encoding all-non-ASCII domains
14734         * puny.el (puny-encode-string): Fix the all-non-ASCII encoding case.
14736 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
14738         * lisp/net/shr.el (shr-next-link): Don't bug out on adjacent links.
14740 2015-12-28  Tom Tromey  <tom@tromey.com>
14742         set :safe on css-indent-offset
14744         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
14746 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
14748         * eww.el (eww-mode): Remove superfluous bidi reset.
14750 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
14752         Make chunked encoding trailer detection more compliant
14754         * lisp/url/url-http.el
14755         (url-http-chunked-encoding-after-change-function): Make
14756         trailer detection more compliant (bug#16345).
14758 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
14760         Reconnect erc even on server errors
14762         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
14763         reconnect even if a server error has occurred (bug#18527).
14765 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
14767         Fix punycode short circuit logic
14769         * puny.el (puny-encode-domain): Fix short-circuit logic.
14771 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
14773         Fix Bug#10873 in `report-emacs-bug'
14775         * lisp/mail/emacsbug.el (report-emacs-bug): If
14776         `report-emacs-bug-no-explanations' is nil, make sure we can show
14777         mail and warnings buffer on this frame (Bug#10873).
14779 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
14781         IDNA speed up
14783         * puny.el (puny-encode-domain): Make the common non-IDNA case faster
14785 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
14787         Add IDNA domain encode/decode functions
14789         * puny.el (puny-decode-domain): New function.
14790         (puny-encode-domain): Ditto.
14791         (puny-decode-digit): Fix digit decoding error.
14793 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
14795         Rename idna.el to puny.el
14797         * puny.el: Renamed from idna.el to avoid name collisions with
14798         the external idna.el library.
14800 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
14802         Always reset the bidi direction
14804         * eww.el (eww-display-html): Always reset the bidi direction
14805         to `left-to-right' (bug#22257).
14807 2015-12-28  Alan Mackenzie  <acm@muc.de>
14809         Allow line comments ending with escaped NL to be continued to the next line.
14811         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
14813         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
14814         (forw-comment, back-comment): On encountering an end of comment character,
14815         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
14817         * doc/lispref/syntax.texi (Control Parsing): Describe
14818         `comment-end-can-be-escaped'.
14820         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
14822         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
14824 2015-12-28  Katsumi Yamaoka  <yamaoka@jpl.org>
14826         lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
14828         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
14829         Don't use split-string with 4th arg for old Emacsen compatibility.
14831 2015-12-27  Dmitry Gutov  <dgutov@yandex.ru>
14833         Rename project-library-roots to project-external-roots
14835         * lisp/progmodes/project.el (project-library-roots): Rename to
14836         project-external-roots.
14837         (project-library-roots-function): Rename to
14838         project-vc-external-roots-function.  Only use it in the VC
14839         backend, for now.  Update project-external-roots accordingly.
14840         (project-vc-library-roots): Remove.
14841         (project-or-libraries-find-regexp):
14842         Rename to project-or-external-find-regexp.
14844         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
14845         Rename to elisp-load-path-roots.
14847         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
14848         an anonymous function for the default value of
14849         project-vc-external-roots-function.
14851 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
14853         * idna.el (idna-decode-string-internal): Implement decoding.
14855 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
14857         Further IDNA tweaks
14859         (idna-encode-string): Make idna-encode-string safe for
14860         non-ASCII use.
14862 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
14864         Clean up the code slightly
14866 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
14868         Added basic idna encoding support
14870         * lisp/net/idna.el: New file.
14872 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
14874         Disconnection fixes for erc
14876         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
14877         reconnect if the user has disconnected explicitly (bug#4589).
14879 2015-12-27  Thomas Riccardi  <riccardi.thomas@gmail.com>  (tiny change)
14881         Further erc asynch fixes
14883         * lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
14884         erc-server-connect to return even if the connection is not
14885         ready.  Then erc-open and erc-server-reconnect do the
14886         same. (bug#5650).
14888 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
14890         Make erc connect asynchronously
14892         * lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
14893         reconnect asynchronously.
14895         * lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
14897 2015-12-27  Deniz Dogan  <deniz@dogan.se>
14899         Clear erc user list upon disconnection
14901         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
14902         lists upon disconnection.  This prevents invalid channel
14903         user lists when reconnecting (bug#10947).
14905 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
14907         Don't bug out in erc after waking from sleep
14909         * erc-backend.el (erc-server-send-ping): If the server has
14910         closed connection, this may already have been detected and
14911         `erc-server-last-received-time' has been set to nil (bug#13608).
14913 2015-12-27  David Edmondson  <dme@dme.org>
14915         Proxy error in erc with multiple clients
14917         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
14918         generated when multiple IRC clients talk to a single IRC proxy
14919         (bug#19034).
14921 2015-12-27  Dima Kogan  <dima@secretsauce.net>
14923         Ensure that we don't have several timers in erc
14925         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
14926         for existing timers in the alist before adding new ones.  If a
14927         timer already exists, it is cancelled and
14928         overwritten. (bug#19292).
14930 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
14932         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
14933         (bug#18718).
14935 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
14937         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
14938         at the start of the buffer, not at the end (bug#20496).
14940 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
14942         * lisp/net/eww.el (eww-setup-buffer): Restore left-to-right defaults.
14944 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
14946         Don't join erc channels doubly
14948         * erc-join.el (erc-autojoin-channels): Don't join channels
14949         more than once (if you have several nicks) (bug#20695).
14951 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
14953         Avoid leaving "ghost" of mouse pointer on MS-Windows
14955         * src/w32term.c (frame_set_mouse_pixel_position):
14956         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
14957         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
14958         * src/w32term.c (frame_set_mouse_pixel_position): Include
14959         w32common.h.
14961 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
14963         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
14965 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
14967         Identify unsafe combinations of Bcc and encryption
14969         * lisp/gnus/gnus-util.el (gnus-subsetp): New function
14970         * lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
14971         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
14973 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
14975         Fix auth source lookups from erc with port numbers
14977         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
14978         numbers (bug#20541).
14980 2015-12-27  Fran Litterio  <flitterio@gmail.com>
14982         Run erc-kill-channel-hook always on exit
14984         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
14985         when erc-kill-queries-on-quit is set (bug#21187).
14987 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
14989         Spelling fix
14991         * test/automated/url-parse-tests.el:
14992         (url-generic-parse-url/same-document-reference):
14993         Rename from url-generic-parse-url/same-decument-reference.
14995 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
14997         Reword initial *scratch* for brevity, appearance
14999         * lisp/startup.el (initial-scratch-message):
15000         Reword to avoid apostrophes, and to make it shorter.
15001         See the thread starting in:
15002         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
15004 2015-12-26  Leo Liu  <sdl.web@gmail.com>
15006         Add ert-deftest to lisp-mode.el
15008         * lisp-mode.el (lisp-imenu-generic-expression,
15009           lisp-el-font-lock-keywords-1): Add ert-deftest.
15011 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
15013         Mark imap changes as not needing doc changes
15015         * imap.el (imap-ssl-open): Remove
15017 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
15019         Use built-in encryption in imap.el
15021         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
15022         (imap-starttls-open): Use open-network-stream instead of starttls.el.
15023         (imap-tls-open): Use open-network-stream instead of tls.el.
15025 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
15027         Don't try using /bin/sh in artist.el on MS-Windows
15029         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
15030         New function.
15031         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
15032         (Bug#20167)
15034 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
15036         Always define gmalloc etc. in src/gmalloc.c
15038         This is a work-around to prevent the compiler from using semantic
15039         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
15040         with -O2 replaces most of calloc's definition by a call to calloc;
15041         see Bug#22085.
15042         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
15043         (aligned_alloc, free): Do not undef.  Instead, define these as
15044         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
15046 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
15048         Fix documentation of browse-url browser-related functions
15050         * lisp/net/browse-url.el (browse-url)
15051         (browse-url-default-browser, browse-url-default-windows-browser)
15052         (browse-url-default-macosx-browser, browse-url-chromium)
15053         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
15054         and NEW-WINDOW arguments in these functions.  (Bug#19421)
15056 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
15058         Propagate Bug#14412 fix to backtrace_eval_unrewind
15060         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
15061         becomes accurate again. This shouldn’t affect behavior.
15062         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
15064 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
15066         Don't produce non-ASCII characters in *scratch*
15068         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
15069         avoid producing non-ASCII characters in the *scratch* buffer's
15070         commentary.
15072 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
15074         Document changes in 'compare-windows'
15076         * lisp/vc/compare-w.el (compare-windows-removed)
15077         (compare-windows-added): Doc fix.
15079         * doc/emacs/files.texi (Comparing Files): Document the changes in
15080         window selection by 'compare-windows'.
15082 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
15084         Document 'vc-annotate-background-mode'
15086         * doc/emacs/maintaining.texi (Old Revisions): Document
15087         'vc-annotate-background-mode'.
15089 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
15091         Document 'vc-region-history'
15093         * doc/emacs/maintaining.texi (VC Change Log): Document
15094         'vc-region-history'.
15096 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
15098         Improve documentation of 'vc-push'
15100         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
15101         improve the documentation of 'vc-push'.
15103         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
15105 2015-12-26  Alain Schneble  <a.s@realize.ch>
15107         Include the tests for the URL parsing fixes
15109 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
15111         Document 'url-user-agent'.
15113         * lisp/url/url-http.el (url-user-agent): Move from here...
15114         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
15115         keep all the URL defcustoms in one place, and also have it defined
15116         whenever the URL library is loaded.
15118         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
15120 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
15122         Document protocols supported by URL library via Tramp
15124         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
15125         supported via Tramp.
15126         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
15127         Tramp.
15129 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
15131         Document changes in Shell-script mode
15133         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
15134         the 'sh-shell' file-local variable.
15135         (top level): Add an auto-load form to avoid byte-compiler warning
15136         about 'comint-send-string'.
15138 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
15140         Fix documentation of 'ses-define-local-printer'
15142         * doc/misc/ses.texi (Printer functions): Fix whitespace between
15143         sentences and punctuation.  Add an index entry for
15144         'ses-define-local-printer'.
15146 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
15148         Document 'ert-summarize-tests-batch-and-exit'
15150         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
15151         'ert-summarize-tests-batch-and-exit'.
15153 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
15155         Avoid assertion violation in unbind_to
15157         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
15158         if we get here with an object that is not a symbol.  (Bug#14412)
15160 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
15162         Don't treat /foo/bar:mumble as ange-ftp address
15163         * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
15164         only in the first component.  (bug#5362)
15166 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
15168         Make sure *scratch* etc. use forward slashes in its default-directory
15170         * lisp/startup.el (normal-top-level): On MS-Windows, convert
15171         backslashes to forward slashes while decoding default-directory
15172         of the initially-created buffers.
15174 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
15176         Restore info about the build host in bug reports
15178         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
15179         which Emacs was built.  This is important information for
15180         investigating bug reports reported by users who don't build their
15181         Emacs.
15183 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
15185         Fix bootstrap broken by changes related to OS X file-name encoding
15187         * lisp/international/ucs-normalize.el (eval-when-compile): Make
15188         sure char-code-property-alist includes elements that allow access
15189         to 'decomposition' and 'canonical-combining-class' Unicode
15190         properties, as compiling ucs-normalize.el requires that.
15191         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
15192         only of charprop.el was already loaded.
15194         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
15195         New order-only dependency.
15197 2015-12-25  Leo Liu  <sdl.web@gmail.com>
15199         * lisp/ido.el (ido-add-virtual-buffers-to-list):
15200         Use bookmark-get-filename.
15202 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
15204         Make tramp-test29-vc-registered more robust
15206         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
15207         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
15208         Remove instrumentation.
15210 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15212         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
15214 2015-12-23  Katsumi Yamaoka  <yamaoka@jpl.org>
15216         Fix `gnus-union' so as to behave like `cl-union'
15218         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
15219         Make gnus-union use `equal' to compare items in lists.
15221         * lisp/gnus/gnus-util.el (gnus-union):
15222         Make it behave like cl-union partially.
15224 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
15226         Fix dired.c typo with ptrdiff_t vs Lisp_Object
15228         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
15229         an integer type, fixing a problem introduced in the recent fix for
15230         Bug#22169.
15232 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
15234         Document default process sentinel more prominently
15236         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
15237         defaults for process filter and sentinel.  Provide cross-references.
15238         (Process Information): Provide cross-references to where filters
15239         and sentinels are described.
15240         (Filter Functions): Add an index entry for "default filter".
15241         (Sentinels): Add a few status messages not documented previously.
15242         Resolve the "killed" confusion.  Document and describe the default
15243         sentinel.  (Bug#22220)
15245 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
15247         Fix file-name completion on OS X
15249         * src/dired.c (file_name_completion): Reject false matches due to
15250         file-name-coding-systems that decompose characters when encoding
15251         file names, by comparing decoded file names as well.  (Bug#22169)
15252         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
15254         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
15255         non-nil 'decomposed-characters' property.
15257 2015-12-23  Anders Lindgren  <andlind@gmail.com>
15259         File-name completion of non-ASCII characters on OS X (bug#22169)
15261         The coding system `utf-8-nfd', locally defined in ns-win.el,
15262         didn't provide a :pre-write-conversion method, causing file name
15263         completion of non-ASCII characters to fail.  Solved by using the
15264         `utf-8-hfs' coding system provided by `ucs-normalize'.
15266         * lisp/loadup.el: Load international/ucs-normalize (when building
15267         for ns).
15269         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
15270         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
15271         as the file name coding system.
15273         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
15275 2015-12-22  Tom Tromey  <tom@tromey.com>
15277         Fix bug #18588 by making bug-reference-bug-regexp more lenient
15279         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
15280         "bug NNNN".  (Bug #18588)
15282 2015-12-22  Tom Tromey  <tom@tromey.com>
15284         add some cl-* aliases to lisp-mode imenu
15286         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
15287         cl-defgeneric, and cl-defmethod.
15289 2015-12-22  Tom Tromey  <tom@tromey.com>
15291         Make a variable buffer-local
15293         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
15294         font-lock-syntax-table buffer-local.  (Bug #21627)
15296 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
15298         Fix decoding of text in URLs retrieved by EWW
15300         * lisp/net/eww.el (eww-render): Pass 'charset' to
15301         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
15302         non-nil, to set 'buffer-file-coding-system' of the buffer where we
15303         show the URL.
15304         (eww-display-html, eww-display-raw): Decode the text correctly,
15305         using the charset found in the headers, and defaulting to UTF-8.
15306         If the user told us to use a specific encoding, override the
15307         charset from the headers.  (Bug#22222)
15309 2015-12-22  Alan Mackenzie  <acm@muc.de>
15311         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
15313         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
15314         variable `tmp'.
15315         After a failed search for a matching ">", restore point before continuing.
15317 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
15319         Instrument Tramp tests
15321         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
15322         (tramp--test-utf8): Instrument tests.
15324 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
15326         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
15328         * lisp/simple.el (display-message-or-buffer): Call
15329         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
15330         (Bug#22221).
15332 2015-12-21  Juri Linkov  <juri@linkov.net>
15334         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
15336         (save-places-to-alist, save-place-dired-hook):
15337         Check for dired-subdir-alist.  (Bug#19851)
15339 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
15341         Add FIXME comment re stack overflow and modules
15343 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
15345         Revert some recent emacs-module commentary
15347         Most of the recently-added commentary was incorrect, due to the
15348         possibility of stack overflow.
15350 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
15352         Spelling fix: prefer "cooperate" to "co-operate"
15354 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
15356         Port undo fixes to -fno-common
15358         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
15359         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
15360         (buffer_before_last_command_or_undo):
15361         Declare in keyboard.h, and define in keyboard.c,
15362         instead of assuming the traditional Unix relaxed ref-def linkage.
15364 2015-12-20  Philipp Stephani  <phst@google.com>
15366         Improve commentary for emacs-module.c
15368         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
15369         * src/emacs-module.c (module_non_local_exit_get): Document that we
15370         cannot use the current implementation.
15371         (module_is_not_nil, module_eq): Document assumptions about EQ and
15372         NILP.
15374 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
15376         Suppress test on Mac OS X
15378         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
15379         (tramp--test-utf8): Use it.
15381 2015-12-20  Alan Mackenzie  <acm@muc.de>
15383         Merge branch 'scratch/follow' into emacs-25
15385         This allows Isearch, etc., to work well when Follow Mode is active.
15387 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
15389         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option):
15390         Improve check.
15392 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
15394         Fix last commit
15396         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
15397         with numeric argument.
15399 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
15401         Document new features of Rmail
15403         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
15404         Document new behavior of 'd' and 'C-d' with numeric argument.
15405         (Rmail Display): Document the rendering of HTML MIME parts.
15407 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
15409         Improve documentation of new cl-lib functions
15411         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
15412         Fix wording.
15414 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
15416         Document the new feature of 'minibuffer-with-setup-hook'
15418         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
15419         added to `minibuffer-setup-hook'.
15421 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
15423         Document new features of Font Lock
15425         * doc/lispref/modes.texi (Other Font Lock Variables): Document
15426         'font-lock-flush-function' and 'font-lock-ensure-function'.
15427         (Font Lock Basics): Document the basic fontification functions
15428         referenced in "Other Font Lock Variables".
15430         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
15432 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
15434         Document new features of Rectangle mode
15436         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
15437         rectangle-mark-mode.
15439 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
15441         Manual followup to last change
15443         * doc/lispref/display.texi (Displaying Messages): Sync with the
15444         doc string.  (Bug#22210)
15446 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
15448         Clarify doc string of 'display-message-or-buffer'
15450         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
15451         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
15453 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
15455         * doc/emacs/emacs.texi (Top): Update top-level menus.
15457         * doc/lispref/elisp.texi (Top): Update top-level menus.
15459 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
15461         Document how to avoid file-local variables that aren't
15463         * doc/emacs/custom.texi (Specifying File Variables): Describe how
15464         to prevent Emacs from interpreting unrelated text as file-local
15465         variables.  (Bug#22166)
15467 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
15469         Fix a typo in eterm-color's termcap entry
15471         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
15472         entry.  (Bug#22184)
15474 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
15476         Allow 'browse-url-emacs' visit non-existent URLs
15478         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
15479         signal an error if VISIT is non-nil, to more faithfully emulate
15480         the behavior of 'insert-file-contents'.  (Bug#22160)
15482 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
15484         Remove SunOS 4.x cruft
15486         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
15487         * lib-src/pop.c [sun]: Remove no-longer-needed include.
15488         * lwlib/xlwmenu.c (SUNSO41): Remove.
15490 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
15492         Merge from gnulib
15494         This mostly commentary fixes.
15495         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
15496         * lib/gnulib.mk: Regenerate with new gnulib-tool.
15498 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
15500         Minor fixes in Tramp
15502         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
15503         Reorder ls arguments.
15505         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
15507 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
15509         Make tramp a built-in package
15511         * lisp/finder.el (finder-compile-keywords): Update
15512         `package--builtins' also when Version: keyword is available.
15514         * lisp/net/trampver.el: Add Version: keyword.
15515         (tramp-version): Change it to "2.2.13.25.1", in order to be
15516         compatible with `version-to-list'.
15518 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
15520         * etc/tutorials/TUTORIAL.it: Update and fix typos.  (Bug#22187)
15522 2015-12-18  Alan Mackenzie  <acm@muc.de>
15524         Rename `recenter-group' to `recenter-window-group'
15526         * doc/lispref/windows.texi (Textual Scrolling)
15527         * lisp/window.el (top level, recenter-group)
15528         * lisp/follow.el (follow-mode)
15529         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
15530         `recenter-window-group' and `recenter-group-function' to
15531         `recenter-window-group-function'.
15533 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
15535         Fix vertical-motion in tabulated-list mode
15537         * src/indent.c (Fvertical_motion): When moving from line beginning
15538         to point under line truncation, assume overshoot by one line only
15539         if point actually lies beyond the window's right margin.
15540         (Bug#22194)
15542 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
15544         Don't have help functions call x-display-pixel-width/-height on ttys
15546         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
15547         Don't call x-display-pixel-width/-height on ttys.
15549 2015-12-17  Dmitry Gutov  <dgutov@yandex.ru>
15551         Use 'hg id' in vc-hg-previous-revision
15553         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
15554         Use 'hg id' to retrieve it (bug#22032).
15556 2015-12-17  Alan Mackenzie  <acm@muc.de>
15558         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
15560 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
15562         Fix a typo in the Emacs manual
15564         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
15565         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
15567 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
15569         Fix parsing netrc entries with ports
15571         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
15572         make a list out of 't'.  (Bug#22188)
15574         * test/automated/auth-source-tests.el
15575         (auth-source-test-netrc-parse-entry): New test.
15577 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
15579         Fix typo in Doug Lea malloc configure log
15581         * configure.ac (emacs_cv_var_doug_lea_malloc):
15582         Fix typo that confused the log output of 'configure'.
15584 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
15586         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
15588 2015-12-16  Alan Mackenzie  <acm@muc.de>
15590         * etc/NEWS: Move entry on pcase to correct section
15592         (Accidentally omitted from previous commit)
15594 2015-12-16  Alan Mackenzie  <acm@muc.de>
15596         Add documentation for changes to Show Paren mode.
15598         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
15600         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
15601         options, including the new show-paren-when-point-inside-paren and
15602         show-paren-when-point-in-periphery.
15604         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
15605         Move an entry on pcase to the Lisp Changes section.
15607 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
15609         Document Eldoc changes
15611         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
15613 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
15615         Fix invocation of Python and Guile interpreters from gdb-mi
15617         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
15618         commands for interactive Python and Guile interpreters.
15619         (gdb-send): Recognize various ways of exiting from Python and
15620         Guile interpreters and returning to GDB.  For details, see
15621         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
15622         and http://stackoverflow.com/questions/31514741.
15624 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
15626         Remove attempt to use C11 threads
15628         C11 threads are not needed for Emacs now, and their use is causing
15629         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
15630         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
15631         * configure.ac: Do not check for C11 threads. Remove unnecessary
15632         fiddling with CPPFLAGS when configuring pthreads.
15633         * src/emacs-module.c (main_thread, check_main_thread)
15634         (module_init): Do not worry about C11 threads.
15636 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
15638         Set utf8 encoding with stty in Tramp
15640         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
15641         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
15642         encoding with stty.
15644 2015-12-15  Alan Mackenzie  <acm@muc.de>
15646         Tidy up documentation associated with window groups.
15648         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
15649         Groups".  Correct example function to `window-group-start'.
15650         (Window Start and End, Textual scrolling): Point to the new anchor.  State
15651         that (most of) the args in window group functions have the same meaning as for
15652         the corresponding window primitives.
15654         * doc/lispref/positions.texi (Screen Lines).  Same as above.
15656 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
15658         Complete last commit
15660         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
15661         Move uname check up.  Handle Mac OS X eol encoding.
15663 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
15665         Handle Mac OS X eol encoding in Tramp
15667         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
15668         Handle Mac OS X eol encoding.
15670 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15672         Fix variable name typo in compute_tip_xy
15674         * src/w32fns.c (compute_tip_xy):
15675         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
15676         when `right' is integer.
15678 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>  (tiny change)
15680         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
15682 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
15684         Revert "Fix rx matcher overflow without limiting"
15686         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
15688 2015-12-14  Alan Mackenzie  <acm@muc.de>
15690         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
15692         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
15693         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
15695 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
15697         Fix rx matcher overflow without limiting
15699         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
15700         change to the regexp without imposing a limit on the length of the
15701         options.
15703 2015-12-14  Alan Mackenzie  <acm@muc.de>
15705         Enhance ispell-skip-region-alist by generating part of it at runtime.
15707         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
15708         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
15709         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
15710         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
15711         Include the result of ispell--make-filename-or-URL-re in regexps.
15713 2015-12-14  Glenn Morris  <rgm@gnu.org>
15715         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
15717 2015-12-14  Alan Mackenzie  <acm@muc.de>
15719         Replace GROUP argument in six window primitives by new functions.
15721         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
15722         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
15723         from description of six window functions.  Add in description of new functions
15724         window-group-start, window-group-end, set-window-group-start,
15725         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
15726         together with the six variables indirecting to the pertinent group
15727         functions.
15729         * src/window.c
15730         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
15731         applies to these two files, which added the GROUP argument to six window
15732         primitives.
15734         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
15735         functions.
15737         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
15738         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
15739         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
15740         to window primitives (e.g. window-start) with a GROUP argument by calls to
15741         new functions (e.g. window-group-start).
15743         * lisp/ispell.el (ispell-command-loop): Replace call to
15744         pos-visible-in-window-p with pos-visible-in-window-group-p.
15746         * lisp/window.el (window-group-start, window-group-end)
15747         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
15748         (selected-window-group, move-to-window-group-line): New functions.
15749         (window-group-start-function, window-group-end-function)
15750         (set-window-group-start-function, recenter-group-function)
15751         (pos-visible-in-window-group-p-function, selected-window-group-function)
15752         (move-to-window-group-line-function): New variables.
15754 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
15756         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
15758 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
15760         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
15762 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
15764         Improve regex to not trigger stack overflow
15766         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
15767         order not to trigger a stack overflow in regex matcher with unbalanced
15768         brackets (bug#22146).
15770 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
15772         Fix visiting files with raw-text
15774         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
15775         when some stuff was actually read.  (Bug#22162)
15777 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
15779         Fix regex matching keyval labels
15781         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
15782         matching keyval labels.
15784 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
15786         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
15788         ... in case of Tramp.  (Bug#20821)
15790 2015-12-12  Paul Eggert  <eggert@cs.ucla.edu>
15792         Fix performance regression with gcc -O0
15794         This fixes the smaller performance hit that I noted in:
15795         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
15796         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
15797         * src/puresize.h (puresize_h_PURE_P)
15798         (puresize_h_CHECK_IMPURE):
15799         New macros, with the old contents of the functions.
15800         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
15801         * src/puresize.h (PURE_P, CHECK_IMPURE):
15802         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
15803         * src/conf_post.h (ATTRIBUTE_UNUSED):
15804         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
15806 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
15808         * lisp/emacs-lisp/package.el (package-unpack): Security check
15810         Check that we received the package we were offered.
15812 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
15814         * lisp/emacs-lisp/package.el (package--compile): Don't activate
15816         `package-unpack' takes care of all activations now (other than
15817         `package-initialize).  `package--compile' now only compiles.
15819 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
15821         Document the new bindings of <UP> and <DOWN> in the minibuffer
15823         * doc/emacs/mini.texi (Minibuffer History): Describe the new
15824         bindings of <UP> and <DOWN> in the minibuffer.
15826 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
15828         Document new features of Ido
15830         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
15832 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
15834         Fix frame height calculations with added menu bar on Windows (Bug#22105)
15836         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
15837         when simultaneously specifying multiple parameters for
15838         `modify-frame-parameters' that all may change the frame's size.
15839         * src/w32fns.c (x_set_menu_bar_lines): Don't set
15840         windows_or_buffers_changed here.
15841         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
15842         with third argument false.
15843         * src/w32menu.c (set_frame_menubar): Set
15844         windows_or_buffers_changed here.
15845         * src/w32term.c (x_set_window_size): Determine third argument of
15846         AdjustWindowRect from whether the frame has a menu bar and not
15847         from whether it wants one.
15849 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
15851         Document the change in interactive shell mode
15853         * doc/emacs/misc.texi (Interactive Shell): Document that the
15854         '*shell*' buffer by default displays in a new window.
15856 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
15858         Document new features of package.el
15860         * doc/emacs/package.texi (Package Menu): Document the 'external'
15861         status and the new menu commands.
15862         (Package Installation): Document archive priorities.
15864         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
15865         (package-menu-hide-low-priority): Doc fix.
15867 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
15869         Update and document new features of xterm support
15871         * doc/emacs/frames.texi (Text-Only Mouse): Document that
15872         track-mouse is supported by newer xterm versions.
15874 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
15876         Document new features of Prettify Mode
15878         * doc/emacs/programs.texi (Misc for Programs): Document
15879         'prettify-symbols-compose-predicate' and
15880         'prettify-symbols-unprettify-at-point'.
15882         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
15883         (prettify-symbols-default-compose-p)
15884         (prettify-symbols-compose-predicate)
15885         (prettify-symbols--compose-symbol): Doc fixes.
15887 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
15889         Document multi-mode indentation facilities
15891         * doc/lispref/text.texi (Mode-Specific Indent): Document
15892         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
15894         * lisp/progmodes/prog-mode.el (prog-indentation-context)
15895         (prog-widen): Doc fixes.
15897 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
15899         Document 'vc-refresh-state'
15901         * doc/emacs/maintaining.texi (Version Control): Document
15902         'vc-refresh-state'.
15904         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
15906 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
15908         Fix echo for "C-u"
15910         * src/keyboard.c (command_loop_1): Undo last change.  It caused
15911         duplicate echo of C-u.  (Bug#22107)
15913 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
15915         Avoid errors when creating files under SVN in new directory
15917         * lisp/vc/vc-svn.el (vc-svn-registered): Use
15918         file-accessible-directory-p, to avoid cd'ing to a non-existing
15919         directory, which signals an error on some systems.  (Bug#21984)
15920         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
15921         Use declare-function to avoid byte-compiler warnings.
15923 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
15925         Improve Lua support in etags
15927         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
15928         "function".
15930         * etc/NEWS: Mention improved Lua support by 'etags'.
15932         * test/etags/lua-src/test.lua (test): Add tests for indented
15933         function definitions.
15934         * test/etags/ETAGS.good_1:
15935         * test/etags/ETAGS.good_2:
15936         * test/etags/ETAGS.good_3:
15937         * test/etags/ETAGS.good_4:
15938         * test/etags/ETAGS.good_5:
15939         * test/etags/ETAGS.good_6:
15940         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
15942 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
15944         Fix 'this-command-keys' wrt prefix argument
15946         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
15947         was part of this-command-keys, but not of this-single-command-keys.
15948         (Bug#22107)
15950         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
15951         commentary about the function's return value.
15953 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
15955         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
15957 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
15959         Improve and document Ruby support in 'etags'
15961         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
15962         (Ruby_functions): Support "module" and overloaded operators.
15963         (Ruby_help): Mention "module".
15965         * test/etags/ruby-src/test.rb:
15966         * test/etags/ruby-src/test1.ruby: New files.
15967         * test/etags/Makefile (RBSRC): New tests.
15968         (SRCS): Add ${RBSRC}.
15969         * test/etags/ETAGS.good_1:
15970         * test/etags/ETAGS.good_2:
15971         * test/etags/ETAGS.good_3:
15972         * test/etags/ETAGS.good_4:
15973         * test/etags/ETAGS.good_5:
15974         * test/etags/ETAGS.good_6:
15975         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
15977         * doc/man/etags.1: Mention Ruby support.
15978         * etc/NEWS: Mention Ruby support.
15980 2015-12-11  Xi Lu  <lx@shellcodes.org>
15982         Initial support for Ruby in 'etags'
15984         * lib-src/etags.c <Ruby_suffixes>: New variable.
15985         (lang_names): Add an entry for Ruby.
15986         (Ruby_functions): New function.  (Bug#22116)
15988 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
15990         Clarify documentation of 'modify-frame-parameters'
15992         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
15993         PARMs" mean for 'modify-frame-parameters'.
15995         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
15996         PARMs" mean for this function.  (Bug#22104)
15998 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
16000         Fix setting buffer unibyte when reading from a device
16002         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
16003         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
16005 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
16007         Clarify documentation of 'values'
16009         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
16010         updated by any evaluation commands in 'lisp-interaction-mode'.
16011         (Bug#22056)
16013 2015-12-11  Anders Lindgren  <andlind@gmail.com>
16015         Fixed subversion vc error when opening file in new directory (bug#21984).
16017         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
16019 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
16021         Yet another fix for when point ends up in invisible text
16023         * src/xdisp.c (redisplay_window): When someone forced
16024         window-start, and honoring that failed to show the cursor, try
16025         moving out of invisible text, before falling back to the middle of
16026         the window.  (Bug#22098)
16028 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
16030         Fix error in Tramp perl script for cygwin
16032         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
16033         error if file doesn't exist.
16035 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16037         Remove font workaround for limited outdated versions
16039         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
16040         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
16042 2015-12-09  Anders Lindgren  <andlind@gmail.com>
16044         Don't add "." to load path (bug#21104)
16046         When configured with --enable-locallisppath=no, which is the
16047         default for OS X, the load-path incorrectly was populated with ".".
16049         * src/lread.c (init_lread): Don't call `decode_env_path' when
16050         PATH_SITELOADSEARCH is empty.
16052 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
16054         * lisp/emacs-lisp/package.el (package--with-response-buffer):
16056         Search for the blank-line in the right buffer.
16058 2015-12-08  Glenn Morris  <rgm@gnu.org>
16060         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
16061         for recent change.
16063 2015-12-08  Glenn Morris  <rgm@gnu.org>
16065         Fix some display-warning usage.
16067         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
16068         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
16069         * lisp/calendar/holidays.el (calendar-holiday-list):
16070         * lisp/mail/rmailout.el (rmail-output-read-file-name):
16071         Fix display-warning usage.
16073 2015-12-07  Glenn Morris  <rgm@gnu.org>
16075         * lisp/calendar/cal-html.el: Require diary-lib.
16077         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
16079 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16081         Add Obsolete-since header to eudcb-ph.el
16083         * eudcb-ph.el: Add Obsolete-since header.
16085 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
16087         Spelling fixes
16089         * doc/misc/calc.texi (Predefined Units): Use the bland modern
16090         scientific style for spelling the units “ampere” and
16091         “angstrom” rather than the older style “Ampere” and
16092         “Ångstrom”.  The latter spelling was wrong anyway (it should
16093         have been “Ångström”).
16094         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
16095         Fix misspelling of ‘atom’ in code.
16097 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
16099         Improve documentation of kill commands
16101         * lisp/simple.el (region-extract-function, delete-backward-char)
16102         (delete-forward-char, kill-region, copy-region-as-kill)
16103         (kill-ring-save): Better document the optional argument REGION in
16104         the doc strings.  Mention in the doc strings that text put in the
16105         kill-ring can be filtered by 'filter-buffer-substring'.
16107         * doc/lispref/text.texi (Kill Functions): Mention that functions
16108         described in this subsection can filter text they put in the
16109         kill-ring.  Add a cross-reference to "Buffer Contents" and an
16110         index entry.  Document the optional argument 'region' and its
16111         effect.
16112         (Bug#21315)
16114 2015-12-07  Alan Mackenzie  <acm@muc.de>
16116         Further progress making Isearch, Ispell, Replace work with Follow Mode.
16118         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
16119         no longer exists.  Add follow-post-command-hook to  three special purpose
16120         hooks at setup, and remove them at tear down.
16122         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
16123         isearch-lazy-highlight-new-loop.
16124         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
16125         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
16126         it.
16127         (isearch-lazy-highlight-maybe-new-loop): function removed.
16129         * lisp/replace.el: (replace-update-post-hook): New hook variable.
16130         (perform-replace): Add second (nil) argument to looking-back.  Invoke
16131         replace-update-post-hook before calling replace-highlight.
16133         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
16134         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
16135         call of pos-visible-in-window-p.
16136         (ispell-display-buffer): Place *Choices* window at the top of the last window
16137         in a window group.
16139 2015-12-07  Alan Mackenzie  <acm@muc.de>
16141         Amend doc of `mapconcat': it can take sequences, not merely strings.
16143         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
16144         to say that SEPARATOR and the results from FUNCTION may be any character
16145         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
16147 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
16149         Fix an utf8 problem for Tramp on BSD
16151         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
16152         Make lax check for utf8.
16153         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
16155 2015-12-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16157         Make eudcb-ph.el obsolete
16159         * doc/misc/eudc.texi: Bump version to 1.40.0.
16160         Remove PH/QI sections and mentions.
16161         * lisp/obsolete/eudcb-ph.el: Make obsolete.
16162         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
16163         (eudc-ph-bbdb-conversion-alist): Make obsolete.
16164         * etc/NEWS: Mention this.  (Bug#21191)
16166 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
16168         Remove overenthusiastic eassert
16170         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
16171         previous change.  It breaks on MS-Windows --with-wide-int.
16172         Problem reported by Eli Zaretskii in:
16173         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
16175 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
16177         Pacify gcc -Wparentheses
16179         * src/xdisp.c (row_containing_pos): Reparenthesize.
16181 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
16183         Port mod-test to 32-bit Emacs --without-wide-int
16185         * modules/mod-test/test.el (mod-test-sum-test):
16186         Bring back the 2**29 tests, but port them to 32-bit Emacs
16187         --without-wide-int.
16189 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
16191         Fix minor Tramp problems found on BSD
16193         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
16194         trailing slash.  Quote apostrophes.
16195         (tramp-sh-handle-file-truename): Do not append trailing slash in
16196         the "ls" case.
16197         (tramp-get-ls-command-with-w-option): New defun.
16198         (tramp-do-file-attributes-with-ls)
16199         (tramp-do-directory-files-and-attributes-with-stat): Use it.
16201         * test/automated/tramp-tests.el
16202         (tramp-test31-special-characters-with-perl)
16203         (tramp-test31-special-characters-with-ls)
16204         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
16205         Suppress also readlink.
16207 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
16209         Fix cursor display when invisible text is at line beginning
16211         * src/xdisp.c (redisplay_window): When scrolling fails to show
16212         point, prefer using the desired matrix if possible for finding the
16213         fallback glyph row for displaying the cursor.  (Bug#22098)
16214         (row_containing_pos): Exit the loop as soon as we hit the first
16215         disabled glyph row.  Otherwise we risk accessing garbled data and
16216         departing to the no-no land.
16218 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
16220         Improve module interface when WIDE_EMACS_INT
16222         * src/emacs-module.c (plain_values): New constant.
16223         (module_nil): Now a constant.
16224         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
16225         (syms_of_module): Use if, not #ifdef, so that both sides are
16226         checked at compile-time, and so that GCC doesn’t complain
16227         about an unused var in the typical case.  Also, depend on
16228         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
16229         that WIDE_EMACS_INT implies !USE_LSB_TAG.
16230         (value_to_lisp_bits, lisp_to_value_bits): New functions.
16231         Sign-extend integers rather than zero-extending them, as small
16232         negative integers are more likely.
16233         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
16234         functions.
16235         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
16236         (mark_modules): Remove.  All uses removed.
16237         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
16238         to GCALIGNMENT.
16239         (syms_of_module): Check that module_nil converts to Qnil.
16240         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
16241         we prefer signed to unsigned when either will do.
16242         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
16243         a bit better for emacs-module.c.
16245 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
16247         Port mod-test to x86-64 GNU/Linux running 32-bit
16249         * modules/mod-test/test.el (mod-test-sum-test):
16250         Don’t attempt to match descriptions to operating systems.
16251         It didn’t work on Fedora x86-64 running a 32-bit executable,
16252         and it’s not worth the trouble anyway.
16253         Port to 32-bit platforms by removing an assumption about
16254         fixnum widths.
16256 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
16258         Fix auto-revert-tests.el when filenotify isn't used
16260         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
16261         Make it working also when filenotify isn't used.
16263 2015-12-05  Juri Linkov  <juri@linkov.net>
16265         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
16267         Let-bind isearch-regexp-function to nil.  (Bug#22097)
16269 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
16271         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
16273         (package--with-response-buffer): NOERROR and ERROR-FORM only
16274         handle connection errors.
16275         (bad-signature): New error type.
16276         (package--check-signature-content): Use it.
16277         (package--check-signature): Properly distinguish connection errors
16278         from bad-signature errors.  Do the check for
16279         `package-check-signature' `allow-unsigned' here instead of forcing
16280         the callbacks to do it.  Add a new argument, UNWIND.
16281         (package--download-one-archive, package-install-from-archive):
16282         Update usage of `package--check-signature'.
16284 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
16286         Fix Bug#22092.
16288         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
16289           Clean up inconsistent line endings. (Bug#22092)
16290           (icalendar--clean-up-line-endings): New.
16291         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
16292           for Bug#22092.
16294 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
16296         Document 'bookmark-set-no-overwrite'
16298         * doc/emacs/regs.texi (Bookmarks): Document the new command
16299         'bookmark-set-no-overwrite' and its keybinding.
16301 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
16303         Document new binding of 'mouse-buffer-menu'
16305         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
16306         now also on C-F10.
16308 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
16310         Initial documentation of dynamic modules
16312         * doc/lispref/loading.texi (Dynamic Modules): New section with
16313         initial documentation for dynamic modules.
16314         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
16315         detailed menu
16317         * etc/NEWS: Fix typos in dynamic modules' entry.
16319 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
16321         Remove copyright statements from trivial test files
16323 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
16325         Add "Preliminaries" section to etc/DEBUG
16327         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
16328         Most of the content was suggested by Phillip Lord
16329         <phillip.lord@russet.org.uk>.  Remove the section about debugging
16330         with the Visual Studio, as building Emacs with the Microsoft
16331         compilers is no longer supported.  Minor fixes in some other
16332         sections.
16334 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
16336         Improve parsing of version strings
16338         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
16339         (version-to-list): More helpful error messages.
16340         (version-to-list): ".5" is valid (update docstring).  Make
16341         "22.8X3" invalid, as the doc string says.
16343         * test/automated/subr-tests.el (ert-test-version-parsing): New
16344         tests for version string processing.
16346 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
16348         Fix documentation of 'undo' changes
16350         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
16351         English conventions for spelling and whitespace between sentences.
16353         * etc/NEWS: Fix wording and spelling of undo-related entries.
16354         Mark them as documented.
16356 2015-12-04  Glenn Morris  <rgm@gnu.org>
16358         * lisp/net/net-utils.el: Small improvements.
16360         (net-utils--executable-find-sbin): New function.
16361         (ifconfig-program): Check sbin directories.
16362         Fallback to "ip".  (Bug#22091)
16363         (ifconfig-program-options): Check the actual program in use.
16364         (arp-program): Check sbin directories.
16366 2015-12-04  Arash Esbati  <esbati@gmx.de>  (tiny change)
16368         Fix wrong-type-argument integer-or-marker-p nil error
16370         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
16371         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
16373 2015-12-04  Alan Mackenzie  <acm@muc.de>
16375         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
16377         Merge necessitated by a rebase operation.
16379 2015-12-04  Alan Mackenzie  <acm@muc.de>
16381         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
16383 2015-12-04  Alan Mackenzie  <acm@muc.de>
16385         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
16387         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
16388         Windows" and new @defun selected-window-group.
16389         (Window Start and End): Describe new &optional parameter GROUP and
16390         ...-group-function for window-start, window-end, set-window-start, and
16391         pos-visible-in-window-p.
16392         (Textual Scrolling) Describe the same for recenter.
16393         doc/lispref/positions.texi (Screen Lines): Describe the same for
16394         move-to-window-line.
16396         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
16397         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
16398         new optional parameter "group".  At the beginning of each, check whether the
16399         corresponding ...-group-function is set to a function, and if so execute this
16400         function in place of the normal processing.
16401         (syms_of_window): Define symbols for the six new variables below.
16402         (window-start-group-function, window-end-group-function)
16403         (set-window-start-group-function, recenter-group-function)
16404         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
16405         New permanent local buffer local variables.
16406         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
16407         Fpos_visible_in_window_p.
16409         lisp/window.el (selected-window-group-function): New permanent local buffer
16410         local variable.
16411         (selected-window-group): New function.
16413         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
16414         enable, kill them at mode disable.  Add/remove follow-after-change to/from
16415         after-change-functions.
16416         (follow-start-end-invalid): New variable.
16417         (follow-redisplay): Manipulate follow-start-end-invalid.
16418         (follow-after-change, follow-window-start, follow-window-end)
16419         (follow-set-window-start, follow-pos-visible-in-window-p)
16420         (follow-move-to-window-line, follow-sit-for): New functions.
16422         lisp/isearch.el (isearch-call-message): New macro.
16423         (isearch-update, with-isearch-suspended, isearch-del-char)
16424         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
16425         (with-isearch-suspended): Rearrange code such that isearch-call-message is
16426         invoked before point is moved.
16427         (isearch-message): Add comment about where point must be at function call.
16428         (isearch-search): Remove call to isearch-message.
16429         (isearch-lazy-highlight-window-group): New variable.
16430         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
16431         the battery of tests to ...
16432         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
16433         Note: (sit-for 0) is still called.
16434         (isearch-lazy-highlight-update): Check membership of
16435         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
16436         property.
16437         (isearch-update, isearch-done, isearch-string-out-of-window)
16438         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
16439         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
16440         (isearch-lazy-highlight-update): Call the six amended primitives (see
16441         src/window.c above) with the new `group' argument set to t, to cooperate
16442         with Follow Mode.
16444 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
16446         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
16448         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
16449         (ert--explain-format-atom, ert--explain-equal-rec)
16450         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
16451         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
16453 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
16455         * lisp/character-fold.el: Remove special case-folding support
16457         (character-fold-to-regexp): Remove special code for
16458         case-folding.  Char-fold search still respects the
16459         `case-fold-search' variable (i.e., f matches F).  This only
16460         removes the code that was added to ensure that f also matched
16461         all chars that F matched.  For instance, after this commit, f
16462         no longer matches 𝔽.
16464         This was necessary because the logic created a regexp with
16465         2^(length of the string) redundant paths.  So, when a very
16466         long string "almost" matched, Emacs took a very long time to
16467         figure out that it didn't.  This became particularly relevant
16468         because isearch's lazy-highlight does a search bounded by (1-
16469         match-end) (which, in most circumstances, is a search that
16470         almost matches).  A recipe for this can be found in bug#22090.
16472 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
16474         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
16475         Fixes (bug#21701)
16477 2015-12-04  Daiki Ueno  <ueno@gnu.org>
16479         lisp/gnus/qp.el: Don't replace "from " at bol
16481         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
16482         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
16484 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
16486         Externalize some symbols in undo-auto
16488          * doc/lispref/text.texi: Update symbols.
16489          * lisp/simple.el (undo-auto--amalgamate,
16490            undo-auto--current-boundary-timer): Make symbols public.
16491          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
16492            updated symbol.
16494 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
16496         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
16498 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
16500         Some error message improvements in tramp-sh.el
16502         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
16503         Suppress error messages for "mesg" and "biff" calls.
16504         (tramp-get-remote-path): Ignore errors when expanding
16505         `tramp-own-remote-path'.  Raise a warning instead.
16507 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
16509         Document 'nacl' value for 'system-type'
16511         * doc/lispref/os.texi (System Environment): Document the 'nacl'
16512         value of 'system-type'.
16514 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
16516         Document 'window-max-chars-per-line'
16518         * doc/lispref/windows.texi (Window Sizes): Document
16519         'window-max-chars-per-line'.
16521 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
16523         Fix some file headers for the purpose of `package--builtins'
16525         * lisp/emacs-lisp/cl-preloaded.el
16526         * lisp/emacs-lisp/eieio-compat.el
16527         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
16529         * lisp/ielm.el: Fix summary line.
16531 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
16533         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
16535         Reload any previously loaded package files before compiling
16536         the package (also reload the same files after compiling).
16537         This ensures that we have the most recent definitions during
16538         compilation, and avoids generating bad elc files when a macro
16539         changes and it is used in a different file from the one it's
16540         defined in.
16542 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
16544         * lisp/emacs-lisp/package.el: Refactor package activation code
16546         (package-activate): Move code that activates dependencies into
16547         package-activate-1.
16548         (package--load-files-for-activation): New function.
16549         (package-activate-1): Add code for (optionally) activating
16550         dependencies, and move file-loading code into
16551         `package--load-files-for-activation'.
16553 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
16555         Document new font-related functionality
16557         * doc/lispref/display.texi (Low-Level Font): Document
16558         'default-font-width', 'default-font-height', 'window-font-width',
16559         and 'window-font-height'.
16561         * etc/NEWS: Move entries for 'default-font-width',
16562         'default-font-height', 'window-font-width', and 'window-font-height'
16563         to their place and mark them documented.
16565 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
16567         Fix documentation and implementation of 'directory-name-p'
16569         * lisp/files.el (directory-name-p): Modify to recognize
16570         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
16571         accordingly.  Use '=', not char-equal, for comparison, as
16572         letter-case cannot possibly be an issue here.
16574         * doc/lispref/files.texi (Directory Names): Move the documentation
16575         of directory-name-p here from "Relative File Names".  Update the
16576         description per the changes in implementation.
16578         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
16579         place and mark it documented.
16581 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
16583         Minor copyedit in Emacs manual
16585         * doc/emacs/search.texi (Lax Search): Make wording about character
16586         folding by default less definitive.  (Bug#22043)
16588 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
16590         More emacs-module.c fixes for wide ints
16592         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
16593         unsigned data types to manipulate pointers, to avoid sign
16594         extension coming after us with a vengeance.
16596         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
16597         Emacs with wide ints that verify integer values near the critical
16598         value that requires us to switch to a cons cell.
16600 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
16602         Fix bug#22069 in cl-generic.el
16604         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
16605         not run thru `format'.
16607 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
16609         APPEND etags--xref-backend to xref-backend-functions
16611         * lisp/progmodes/xref.el (xref-backend-functions):
16612         Use APPEND when adding the default element
16613         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
16615 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
16617         More accurate documentation of lax whitespace matching
16619         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
16620         (word-search-backward, word-search-forward)
16621         (word-search-backward-lax, word-search-forward-lax): Mention in
16622         doc strings that toggling lax whitespace matching has no effect on
16623         these commands.
16625         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
16626         lax whitespace matching has no effect on these commands.
16628 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
16630         Fix emacs-module.c for wide ints
16632         * src/emacs-module.c (lisp_to_value): Compare the produced value
16633         with the original Lisp object, not with the one potentially
16634         converted into a Lisp_Cons.  Fixes assertion violations when
16635         working with integers larger than fit into a 32-bit value.
16637         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
16638         large integers, to test --with-wide-int.
16640 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
16642         Document 'directory-files-recursively'
16644         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
16645         the argument MATCH to REGEXP, to be more explicit about its form.
16647         * doc/lispref/files.texi (Contents of Directories): Improve the
16648         documentation of 'directory-files-recursively'.  Add
16649         cross-references.
16651         * etc/NEWS: Move the entry for 'directory-files-recursively' to
16652         its place and mark it documented.
16654 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
16656         Document 'inhibit-read-only' property
16658         * doc/lispref/text.texi (Special Properties): Describe the new
16659         'inhibit-read-only' text property.  Add cross-reference to where
16660         read-only buffers are described.
16661         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
16662         'inhibit-read-only' property exempts text from being read-only.
16663         Add cross-reference to "Special Properties".
16665         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
16666         its place and mark it documented.
16668 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
16670         * lisp/emacs-lisp/package.el: Update header comments
16672 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
16674         * lisp/character-fold.el: Add back multi-char matching
16676         (character-fold-to-regexp): Uncomment recently commented code
16677         and make the algorithm "dummer" by not checking every possible
16678         combination.  This will miss some possible matches, but it
16679         greatly reduces regexp size.
16681         * test/automated/character-fold-tests.el
16682         (character-fold--test-fold-to-regexp): Comment out test of
16683         functionality no longer supported.
16685 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
16687         * doc/emacs/ack.texi (Acknowledgments): Update.
16689 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
16691         Check `file-remote-p' over absolute files names in files.el
16693         * lisp/files.el (directory-files-recursively)
16694         (get-free-disk-space): Check `file-remote-p' over absolute files names.
16696 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
16698                 * src/lread.c (syms_of_lread): Doc fix.
16700 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
16702         Don't mistake certain JS method calls for keywords
16704         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
16705         Braceless keyword can't come after a period (bug#22063).
16707 2015-11-30  David Reitter  <david.reitter@gmail.com>
16709         Read frame_title_format from buffer-local variable for NS port
16711         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
16712         icon-title-format variables from buffer in appropriate window.
16713         (Bug#22048)
16715 2015-11-30  Juri Linkov  <juri@linkov.net>
16717         * lisp/replace.el (occur-engine): Count matches in empty lines.
16719         (Bug#22062)
16721 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
16723         * src/emacs-module.h: Fix finalizer typedef for C++11
16725         C++11 standard doesn't allow exception-specification in typedef.
16726         The workaround is to declare a dummy function prototype and use
16727         decltype on it.
16729 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
16731         Fix last change
16733         * src/emacs-module.c (lisp_to_value, value_to_lisp)
16734         [WIDE_EMACS_INT]: Avoid compiler warnings.
16736 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
16738         Rely on conservative stack scanning to find "emacs_value"s
16740         * src/emacs-module.c (struct emacs_value_tag)
16741         (struct emacs_value_frame, struct emacs_value_storage): Remove.
16742         (value_frame_size): Remove constant.
16743         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
16744         (lisp_to_value): Remove first arg.
16745         (module_nil): New constant.
16746         Use it instead of NULL when returning an emacs_value.
16747         (module_make_function): Adjust to new calling convention of
16748         Qinternal_module_call.
16749         (DEFUN): Receive args in an array rather than a list.
16750         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
16751         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
16752         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
16753         Adjust to new type of non_local_exit info.
16754         (ltv_mark) [WIDE_EMACS_INT]: New constant.
16755         (value_to_lisp, lisp_to_value): Rewrite.
16756         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
16757         (allocate_emacs_value): Remove function.
16758         (mark_modules): Gut it.
16759         (initialize_environment): Don't initialize storage any more.
16760         Keep the actual env object on Vmodule_environments.
16761         (finalize_environment): Don't finalize storage any more.
16762         (syms_of_module): Initialize ltv_mark and module_nil.
16764         * src/emacs-module.h (emacs_value): Make it more clear that this type
16765         is really opaque, including the fact that NULL may not be valid.
16767         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
16768         Don't assume that NULL is a valid emacs_value.
16770 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
16772         Yet another doc improvement for search commands
16774         * doc/emacs/search.texi (Word Search, Symbol Search)
16775         (Regexp Search): Document commands that don't support lax
16776         whitespace matching or character folding.
16777         (Nonincremental Search): Mention the search commands that can be
16778         invoked from the menu bar.
16780         * lisp/isearch.el (isearch-define-mode-toggle-word)
16781         (isearch-define-mode-toggle-symbol)
16782         (isearch-define-mode-toggle-character-fold): Note in the doc
16783         string that turning these on exits the regexp mode.
16784         (isearch-forward-regexp, isearch-forward-word)
16785         (isearch-forward-symbol, isearch-backward-regexp)
16786         (word-search-backward, word-search-forward)
16787         (word-search-backward-lax, word-search-forward-lax): State in the
16788         doc string which commands don't support character folding and/or
16789         lax-whitespace matching.
16791 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
16793         Run `window-size-change-functions' also when reading from minibuffer
16795         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
16796         also when reading from minibuffer.
16798 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
16800         Fix scrambling of html-rendered item buffers
16802         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
16803           scrambling of contents by wrapping call to html-renderer in
16804           save-selected-window.
16806 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
16808         Fix font typo in previous doc fix.
16810 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
16812         A bit more security doc, esp. file local vars
16814         * doc/emacs/emacs.texi (Top):
16815         * doc/emacs/misc.texi (Miscellaneous Commands):
16816         Refer to new Host Security section.
16817         (Host Security): New section.
16818         * doc/lispref/os.texi (Security Considerations):
16819         Mention file local variables.
16821 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
16823         * lisp/character-fold.el: Comment out branching code
16825         (character-fold-to-regexp): Comment out code that uses multi-char
16826         table.  The branching caused by this induces absurdly long regexps,
16827         up to 10k chars for as little as 25 input characters.
16829 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
16831         Spelling and grammar fixes
16833 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
16835         Make lisp-completion-at-point a wrapper instead of an alias
16837         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
16838         Turn into an obsolete wrapper around elisp-completion-at-point
16839         (bug#20455).
16841 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
16843         * lisp/isearch.el (isearch-search-fun-default): Nicer error
16845         message when the search fails.
16847 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
16849         Update menu-bar-goto-uses-etags-p for the current xref API
16851         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
16852         xref-backend-functions, instead of now-nonexistent
16853         xref-find-function.
16855 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
16857         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
16859 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
16861         * lisp/menu-bar.el: Use folding in searches
16863         (nonincremental-search-forward): Use `isearch-search-fun-default'
16864         to determine the search function.
16865         (nonincremental-search-backward)
16866         (nonincremental-repeat-search-forward)
16867         (nonincremental-repeat-search-backward): Use it.
16869 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
16871         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
16873 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
16875         * lisp/character-fold.el (character-fold-to-regexp): Be careful
16877         not to return huge regexps.
16879 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
16881         Improve documentation of string-collate-* functions
16883         * doc/lispref/strings.texi (Text Comparison): Improve wording and
16884         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
16886         * etc/NEWS: Move the entry of 'string-collate-equalp' and
16887         'string-collate-lessp' to "Lisp Changes" section and mark it as
16888         documented.
16890 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
16892         Document truncate-string-ellipsis
16894         * doc/lispref/display.texi (Size of Displayed Text): Document
16895         'truncate-string-ellipsis'.
16897         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
16898         (truncate-string-to-width): Mention in the doc string that the
16899         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
16901         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
16902         Changes" section.
16904 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
16906         Fix confusion wrt character folding in the Emacs manual
16908         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
16909         Document that invoking search-forward/backward and
16910         re-search-forward/backward supports only case folding, but not the
16911         rest of the lax-search features.  Reported by Mike Kupfer
16912         <m.kupfer@acm.org>.
16914 2015-11-29  Ken Brown  <kbrown@cornell.edu>
16916         Update mod-test-sum-test
16918         * modules/mod-test/test.el (mod-test-sum-test): Update to
16919         accommodate the lack of dladdr on Cygwin.
16921 2015-11-29  Alan Mackenzie  <acm@muc.de>
16923         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
16925         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
16926         to `funcall', (i) Output an error message; (ii) Generate code to signal a
16927         `wrong-number-of-arguments' error.
16929 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
16931         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
16933 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16935         * lisp/character-fold.el (character-fold-to-regexp)
16937         Warn about using long strings.
16939         * test/automated/character-fold-tests.el
16940         (character-fold--test-lax-whitespace)
16941         (character-fold--test-consistency): Reduce string size for tests.
16943 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
16945         Document renaming of x-select-enable-* variables
16947         * doc/emacs/killing.texi (Clipboard): Rename
16948         x-select-enable-clipboard to select-enable-clipboard and
16949         x-select-enable-primary to select-enable-primary.  Update index
16950         entries.
16952         * etc/NEWS: Mark entry as documented.
16954 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
16956         Document the shorthand hints displayed by M-x
16958         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
16959         suggest-key-bindings.  Document the shorthand hints for commands
16960         that have no key bindings.  Document that M-x completion ignores
16961         obsolete commands.
16963         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
16964         documented.
16966 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
16968         Update docs of character folding
16970         * doc/emacs/search.texi (Lax Search): Update the description of
16971         character folding for the latest changes.
16973 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16975         * lisp/character-fold.el: Also play nice with case-folding
16977         (character-fold-to-regexp): Take `case-fold-search' into account.
16979 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16981         * lisp/character-fold.el: Add support for multi-char matches
16983         (character-fold-table): Now has an extra-slot. This is a second
16984         char-table that holds multi-character matches.  See docstring for
16985         details.
16986         (character-fold-to-regexp): Can build branching regexps when a
16987         character's entry the extra slot of `character-fold-table' matches the
16988         characters that succeed it.
16990 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16992         * lisp/character-fold.el: Code simplifications
16994         (character-fold-table): Reduce the scope of a variable.
16995         (character-fold-to-regexp): Change logic to work directly on the
16996         input string.  It's a little easier to understand, probably
16997         faster, and sets us up for implementing multi-char matches.
16999         * test/automated/character-fold-tests.el
17000         (character-fold--test-fold-to-regexp): New test.
17002 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
17004         Document changes in "C-h l"
17006         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
17008         * etc/NEWS: mark "C-h l" changes as documented.
17010 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
17012         Finalize documentation of 'custom-prompt-customize-unsaved-options'
17014         * doc/emacs/custom.texi (Saving Customizations): Index the new
17015         function 'custom-prompt-customize-unsaved-options'.
17017         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
17018         is useful.
17020 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
17022         Document 'comment-line'
17024         * doc/emacs/programs.texi (Comment Commands): Document
17025         'comment-line'.
17027         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
17029 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
17031         Document new checkdoc features
17033         * doc/lispref/tips.texi (Tips, Library Headers): Document the
17034         keyword-checking features of checkdoc and the commands
17035         'checkdoc-file' and 'checkdoc-current-buffer'.
17037         * etc/NEWS: Move the checkdoc-related entries to their own
17038         section.
17040 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
17042         Simplify the prologue of emacs-module.c functions
17044         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
17045         (module_make_global_ref)
17046         (module_free_global_ref, module_make_function, module_funcall)
17047         (module_intern, module_type_of, module_extract_integer)
17048         (module_make_integer, module_extract_float, module_make_float)
17049         (module_copy_string_contents, module_make_string)
17050         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
17051         (module_get_user_finalizer, module_set_user_finalizer)
17052         (module_vec_set, module_vec_get, module_vec_size): Use new helper
17053         macro MODULE_FUNCTION_BEGIN.
17055 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
17057         Don't reject module calls with no arguments
17059         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
17061 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
17063         Make module-call be visible from Lisp
17065         * src/emacs-module.c (module_make_function): Use internal--module-call.
17066         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
17067         checks.
17068         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
17069         defsubr internal--module-call.
17071 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
17073         Add etags tests for the recent Lua-related bugfix
17075         * test/etags/lua-src/test.lua: New file, tests the issues raised
17076         by bug#21934.
17077         * test/etags/Makefile (LUASRC): Add test.lua.
17078         * test/etags/ETAGS.good_1:
17079         * test/etags/ETAGS.good_2:
17080         * test/etags/ETAGS.good_3:
17081         * test/etags/ETAGS.good_4:
17082         * test/etags/ETAGS.good_5:
17083         * test/etags/ETAGS.good_6:
17084         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
17085         regression fix, resolved around 25 May 2015, required changes to
17086         the "good" ETAGS files.
17088 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
17090         Fix Lua tags when a function name includes '.' or ':'
17092         * lib-src/etags.c (Lua_functions): Add a tag for the last element
17093         of a function name after a dot or a colon.  (Bug#21934)
17095 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
17097         Improve documentation of search and replace commands
17099         * doc/emacs/search.texi (Replacement and Lax Matches): Document
17100         which commands are affected by 'replace-character-fold'.
17101         (Lax Search): Add a cross reference to "Replacement and Lax
17102         Matches".  Improve wording.  Fix lost extra whitespace.
17103         (Search Customizations): Improve wording.  (Bug#22036)
17104         See also comments in
17105         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
17107         * lisp/replace.el (query-replace, query-replace-regexp)
17108         (query-replace-regexp-eval, replace-string, replace-regexp):
17109         Mention 'replace-character-fold' in the doc strings.
17111 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
17113         Fix minor problems found by static checking
17115         * src/undo.c (prepare_record): Add proper prototype for C.
17117 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
17119         * src/emacs-module.c (struct env_storage): Delete
17121         (struct emacs_runtime_private): Keep an emacs_env instead.
17122         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
17123         (initialize_environment): Split the arg in two.  Adjust all callers.
17124         Only store the private part in Vmodule_environments.
17125         (finalize_environment): Change the arg to only be the private env.
17126         Adjust all callers.
17128 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
17130         Improve documentation of 'replace-character-fold'
17132         * lisp/replace.el (replace-character-fold): Clarify which commands
17133         are affected by this variable.
17135 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
17137         Autoload etags when using its xref backend
17139         * lisp/progmodes/xref.el (xref--etags-backend):
17140         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
17141         (Bug#22026)
17143 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
17145         * lisp/character-fold.el: Allow complex chars to match their decomposition
17147         (character-fold-table): When a character's decomposition does not
17148         involve a formatting tag (i.e., if it has an "exact" description via
17149         other characters), then this character is allowed to match the
17150         decomposition.
17152 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
17154         * lisp/character-fold.el: More descriptive variable names
17156         (character-fold-table): Rename a lot of the lexical variables to
17157         make the code easier to read.
17159 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
17161         * lisp/isearch.el: Ensure we still support `isearch-new-word'
17163         (isearch-new-regexp-function): Define variable.
17164         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
17166 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
17168         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
17170 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
17172         * test/lisp/abbrev-tests.el: Define more tests
17174         (abbrev-table-name-test, kill-all-abbrevs-test)
17175         (clear-abbrev-table-test): New tests.
17177 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
17179         Add module tests for wrong-type-argument
17181         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
17182         wrong-type-argument.
17184 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
17186         Improve handling of signals and 'throw' in modules
17188         * src/emacs-module.c: Add commentary explaining how to write
17189         functions in this file.
17190         (module_make_global_ref, module_free_global_ref)
17191         (module_non_local_exit_signal, module_non_local_exit_throw)
17192         (module_make_function, module_funcall, module_intern)
17193         (module_type_of, module_is_not_nil, module_eq)
17194         (module_extract_integer, module_make_integer)
17195         (module_extract_float, module_make_float)
17196         (module_copy_string_contents, module_make_string)
17197         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
17198         (module_get_user_finalizer, module_set_user_finalizer)
17199         (module_vec_set, module_vec_get, module_vec_size)
17200         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
17201         Do nothing and return with failure indication immediately, if some
17202         previous module call signaled an error or wants to throw.  See
17203         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
17204         for the relevant discussions.
17206 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
17208         Add ':version' tag to 'checkdoc-package-keywords-flag'
17210         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
17211         Add a ':version' tag.
17213 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
17215         Improve documentation of 'eval-buffer' and 'eval-region'
17217         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
17219         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
17220         "accessible portion of buffer".
17222 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
17224         Unbreak the Cygwin w32 build
17226         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
17227         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
17229 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
17231         Improve commentary in character-fold.el
17233         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
17234         description from commit log message to comments.  (Bug#22019)
17236 2015-11-26  Alan Mackenzie  <acm@muc.de>
17238         Byte Compiler: generate code to adjust stack count after call to `signal'.
17240         Corrects change from earlier today.
17242         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
17243         `byte-compile--for-effect' as argument to `byte-compile-form'.
17245 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
17247         Improve commentary of prepare_to_modify_buffer_1
17249         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
17250         that this function runs Lisp.  Suggested by Richard Stallman
17251         <rms@gnu.org>.
17253 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
17255         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
17257 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
17259         Fix regression after merge.
17261          * src/undo.c (prepare_record): Remove call to run_undoable_change.
17263 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
17265         After delete, record point location in undo.
17267         Addresses Bug #21968.
17269                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
17270                 better support intercalating calls.
17271                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
17272                 point and current buffer before each command.
17273                 * src/undo.c (record_point): Now only record the point.
17274                 * src/undo.c (prepare_record): Functionality removed form
17275                 record_point.
17276                 * src/undo.c (record_delete): Check if point needs recording.
17277                 * src/undo.c (undo-boundary): Record value of point before each
17278                 boundary.
17279                 * test/automated/simple-test.el: New tests.
17281         Conflicts:
17282                 src/undo.c
17284 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
17286         Fix compiler warnings in w32.c
17288         * src/w32.c (sys_socket): In case of error, use -1 as return
17289         value, not INVALID_SOCKET, which causes compiler warnings.
17290         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
17291         to the appropriate function signature, to avoid compiler errors.
17292         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
17294 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
17296         Check if the file exists on disk before producing the revert diff
17298         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
17299         exists on disk (bug#20558).
17301 2015-11-26  Alan Mackenzie  <acm@muc.de>
17303         Byte compiler: on setq with an odd number of arguments, generate a `signal'
17305         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
17306         it has an odd number of arguments, to allow bytecomp to handle the error.
17308         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
17309         odd number of arguments, generate a `signal' instead of the normal code.
17311 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
17313         Use find-tag-default for xref-backend-identifier-at-point
17315         * lisp/progmodes/etags.el (find-tag-tag)
17316         (tags-completion-at-point-function): Extract common code as
17317         find-tag--default.
17318         (xref-backend-identifier-at-point): Define in terms of the new
17319         function.
17321 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
17323         * src/undo.c (record_property_change): Remove now-unused local.
17325 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
17327         run_undoable_changes now called from insdel.
17329         The original calls from inside undo.c are not always at a safe position
17330         to call lisp, as they originate in varied positions within insdel.c.
17331         Calling them directly from prepare_to_modify_buffer_1 ensures that they
17332         are always run at the same point.
17334          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
17335          and symbol used.
17336          * src/insdel.c (run_undoable_changes): Add function and symbol.
17338 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
17340         Improve and update documentation of search commands
17342         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
17343         all references changed.  Move the description of lax-whitespace
17344         here.  Add description of the new character folding features and
17345         additional customizable options.
17346         (Isearch Yank): Move before "Error in Search".
17347         (Basic Isearch): Improve wording.  Add index entries.  Add short
17348         description of how to abandon search, making this subsection a
17349         complete introduction to search basics.
17350         (Repeat Isearch): Add index entries.  Describe additional
17351         customizable options.  Describe mouse clicks.
17352         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
17353         area.  Describe more customizable options.
17354         (Error in Isearch): Add index entries.
17355         (Special Isearch): Move actual description of some isearch
17356         commands to other sections, leaving here just the summary of the
17357         commands.  Add command that toggles character folding.  Describe
17358         commands, like "C-h C-h", that were previously omitted for some
17359         reason.
17360         (Not Exiting Isearch): Describe search-exit-option.  Add index
17361         entries.
17362         (Word Search): Describe eww-search-word and eww-search-prefix.
17363         (Symbol Search): Add index entries.
17364         (Regexp Search): Describe regexp-search-ring-max.
17365         (Replacement and Lax Matches): Renamed from "Replacement and
17366         Case"; all references changed.  Describe lax-whitespace matching
17367         in replace commands and related options.  Describe character
17368         folding in replace commands and related options.
17369         (Query Replace): Describe query-replace-from-to-separator and the
17370         new history features.  Add index entries for highlighted text.
17371         Describe query-replace-skip-read-only.  Describe more keys
17372         accepted by query-replace.
17373         (Other Repeating Search): More index entries for Occur.  Describe
17374         list-matching-lines-default-context-lines.
17375         (Search Customizations): New section, documents customizable
17376         options that were not documented until now.
17377         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
17378         "Character Folding".
17380         * etc/NEWS: Move search- and replace-related entries to a single
17381         parent section.
17383         * lisp/replace.el (query-replace-show-replacement): Doc fix.
17384         * lisp/isearch.el (search-nonincremental-instead)
17385         (isearch-hide-immediately): Doc fixes.
17387 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
17389         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
17391         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
17392         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
17393         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
17395 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
17397         Fix module_format_fun_env when dynlib_addr fails
17399         * src/emacs-module.c (module_format_fun_env):
17400         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
17401         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
17403 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
17405         Disambiguate variable help a bit better
17407         * lisp/help-fns.el (describe-variable): Quote the
17408         variable’s value if it is a symbol other than t or nil.
17409         See: T.V Raman in:
17410         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
17412 2015-11-24  Dmitry Gutov  <dgutov@yandex.ru>
17414         Pass SVN commit message through log-edit-extract-headers
17416         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
17417         log-edit-extract-headers (bug#18954).
17419 2015-11-24  Alan Mackenzie  <acm@muc.de>
17421         CC Mode: Eliminate compiler warning messages.
17423         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
17424         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
17425         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
17426         (c-awk-set-syntax-table-properties): Clarify comments about
17427         `font-lock-syntactic-keywords'.
17429         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
17430         of this before the real (interpreted) one, to satisfy the byte compiler.
17432 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
17434         Extend the test suite for json.el
17436         * lisp/json.el (json-plist-p): Clarify docstring.
17438         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
17439         macro.
17440         (test-json-join, test-json-alist-p)
17441         (test-json-plist-p, test-json-advance, test-json-peek)
17442         (test-json-pop, test-json-skip-whitespace)
17443         (test-json-read-keyword, test-json-encode-keyword)
17444         (test-json-read-number, test-json-encode-number)
17445         (test-json-read-escaped-char, test-json-read-string)
17446         (test-json-encode-string, test-json-encode-key)
17447         (test-json-new-object, test-json-add-to-object)
17448         (test-json-read-object, test-json-encode-list)
17449         (test-json-read-array, test-json-encode-array)
17450         (test-json-read, test-json-read-from-string)
17451         (test-json-encode): New tests.
17452         (json-read-simple-alist): Merged into `test-json-read-object'.
17453         (json-encode-string-with-special-chars): Merged into
17454         `test-json-encode-string'.
17455         (json-read-string-with-special-chars): Split into
17456         `test-json-encode-string' and `test-json-read-from-string'.
17458 2015-11-24  Anders Lindgren  <andlind@gmail.com>
17460         Fixed bug#18283: Enable applescript in NextStep.
17462         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
17464 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
17466         Allow completion on dynamic module files in load-library
17468         * lisp/files.el (load-library): Bind completion-ignored-extensions
17469         to nil, to allow completion on dynamic modules typed as file
17470         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
17472 2015-11-24  Alan Mackenzie  <acm@muc.de>
17474         CC Mode: eliminate almost all byte compilation warnings
17476         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
17477         (cc-require): Remove the crude hack that saved and restored
17478         byte-compile-noruntime-functions.
17479         (cc-conditional-require, cc-conditional-require-after-load): New macros.
17481         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
17482         cc-fix.el using the new macros in cc-bytecomp.el.
17484         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
17485         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
17486         forms to remove the superflous quotes.
17488 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
17490         Add one more mod-test test
17492         * modules/mod-test/test.el (mod-test-sum-test): Test the error
17493         signaled when the function is invoked with a wrong number of
17494         arguments.
17496 2015-11-24  Philipp Stephani  <phst@google.com>
17498         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
17500 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
17502         Implement dynlib_addr for MS-Windows
17504         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
17505         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
17506         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
17507         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
17508         if undefined.
17509         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
17510         zero.
17511         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
17512         the full file name of the module for a given address.
17514 2015-11-24  Alan Mackenzie  <acm@muc.de>
17516         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
17518 2015-11-24  Alan Mackenzie  <acm@muc.de>
17520         Squashed commit of the following:
17522         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
17523         Author: Alan Mackenzie <acm@muc.de>
17524         Date:   Tue Nov 24 16:50:09 2015 +0000
17526             Byte compile: minor amendments.
17528             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
17529             add a comment to explain the binding of variables around a subsidiary
17530             compilation.
17531             (byte-compile-new-defuns): Amend the doc string.
17533         commit c537bfed1dda1593d218956ff00c6105a3ff0316
17534         Author: Alan Mackenzie <acm@muc.de>
17535         Date:   Sat Nov 21 18:43:57 2015 +0000
17537             Byte compiler: fix spurious warnings "might not be defined at runtime".
17539             Also initialize byte-compile-noruntime-functions between runs.
17541             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
17542             (byte-compile-initial-macro-environment): For eval-when-compile: bind
17543             byte-compile-unresolved-functions and byte-compile-new-defuns around
17544             byte-compile-top-level, to prevent spurious entries being made.
17545             (byte-compile-warn-about-unresolved-functions): Check whether function is
17546             in byte-compile-new-defuns before emitting a warning about it.
17547             (byte-compile-from-buffer): Initialize new variable and
17548             byte-compile-noruntime-functions to nil.
17549             (byte-compile-file-form-require): record all new functions defined by a
17550             `require' in byte-compile-new-defuns.
17551             (byte-compile-file-form-defmumble): record the new alias in
17552             byte-compile-new-defuns.
17554 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
17556         Fix crash at startup related to GC of font entities
17558         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
17559         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
17560         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
17561         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
17562         Don't ifdef away font cache compaction on NT_GUI, as the problems
17563         which led to that seem to have been solved.
17564         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
17565         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
17566         cousins.  (Bug#21999)
17568 2015-11-24  Alan Mackenzie  <acm@muc.de>
17570         Byte compile: Output an error, not a warning, for odd number of args to setq
17572         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
17574 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
17576         Fix kbd_buffer iteration loop in readable_events
17578         * src/keyboard.c (readable_events): Wrap the event pointer back to the
17579         start of the kbd_buffer array inside the top of the loop instead of
17580         right before checking the loop condition, since kbd_fetch_ptr and
17581         kbd_store_ptr point past the end of the array to mean that element 0
17582         is next. (bug#21935)
17584 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
17586         Improve text-quoting-style doc again
17588         * doc/lispref/help.texi (Keys in Documentation):
17589         Omit overkill discussion of ‘setq’.  Mention Emacs versions
17590         where ‘grave’ style was standard.
17592 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
17594         Improve text-quoting-style doc
17596 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
17598         Simplify module_make_function
17600         * src/emacs-module.c (module_make_function):
17601         Simplify by calling build_unibyte_string.
17603 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
17605         Port better to FreeBSD’s dlfunc vs dlsym
17607         This avoids warnings when converting between void * and
17608         function pointers, which strict C11 does not allow.
17609         * configure.ac (dlfunc): Check for existence.
17610         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
17611         (dynlib_func): New function.
17612         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
17613         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
17614         dynlib_sym, for function pointers.
17616 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
17618         Simplify use of emacs_finalizer_function type
17620         * src/emacs-module.h (emacs_finalizer_function):
17621         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
17622         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
17624 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
17626         module_format_fun_env fixes
17628         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
17629         * src/emacs-module.c (module_format_fun_env):
17630         Convert path and sym to UTF-8.
17631         Don’t use VLAs, as the C11 standard says they’re optional,
17632         and anyway they can cause core dumps with large allocations.
17633         Use exprintf rather than snprintf, as exprintf handles arbitrarily
17634         long strings.  Simplify the code a bit.
17636 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
17638         Don't use package-user-dir in elisp-library-roots if it's not bound
17640         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
17641         use package-user-dir if it's not bound (bug#19759).
17643 2015-11-23  Anders Lindgren  <andlind@gmail.com>
17645         New visible-bell for NextStep (OS X El Capitan compatible).
17647         Instead of inverting a rectangle in the middle of the frame, use
17648         the standard NextStep image "caution", represented using an
17649         warning sign with an exclamation mark.  (Bug#21662)
17651         Implemented based on a suggestion drafted by Mustafa Kocaturk.
17653         * src/nsterm.m (EmacsBell): New class for managing the caution
17654         image.  Support multiple active bells, the image is removed once
17655         all bells have timed out.
17656         (ns_timeout): Removed, no longer used.
17657         (ns_ring_bell): Reimplemented to use EmacsBell.
17659 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
17661         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
17663         (remove-function): Ditto. (Bug#20376)
17665 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
17667         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
17669 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
17671         Improve how non-ASCII strings are accepted from modules
17673         * src/emacs-module.c (module_make_function, module_make_string):
17674         Build a unibyte Lisp string and then decode it by UTF-8, instead
17675         of building a multibyte string without decoding.  This is more
17676         tolerant to deviations from UTF-8.
17678 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
17680         Port recent module changes to pickier compilers
17682         * src/emacs-module.c (module_make_function)
17683         (module_make_string): Add casts to fix pointer signedness issues.
17685 2015-11-23  Philipp Stephani  <phst@google.com>
17687         Fix how strings are accepted from modules
17689         * emacs-module.c (module_make_function, module_make_string): Use
17690         make_multibyte_string.
17691         (module_copy_string_contents): Encode before reading the byte
17692         size.  Return false if and only if an error occurred.
17694 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
17696         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
17698 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
17700         Add the tamil-dvorak input method
17702         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
17704         * etc/NEWS: Mention the new input method.
17706 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
17708         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
17710         * src/frame.c (adjust_frame_size): Don't set
17711         FRAME_WINDOW_SIZES_CHANGED here ...
17712         * src/window.c (resize_frame_windows): ... but here, as suggested
17713         by Stefan Monnier.  Also remove some dead code along the way.
17715 2015-11-23  Alan Mackenzie  <acm@muc.de>
17717         * /etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
17719 2015-11-23  Alan Mackenzie  <acm@muc.de>
17721         Signal an error when `setf' gets an odd number of arguments.
17723         * lisp/emacs-lisp/gv.el (setf): Amend.
17725 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
17727         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
17729 2015-11-23  Alan Mackenzie  <acm@muc.de>
17731         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
17733 2015-11-23  Alan Mackenzie  <acm@muc.de>
17735         Expunge occurrences of `setq' with an odd number of arguments.
17737         * lisp/apropos.el (apropos-documentation):
17738         * lisp/obsolete/complete.el (PC-include-file-all-completions):
17739         * lisp/progmodes/compile.el (compilation-goto-locus):
17740         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
17741         Insert missing nil at end of `setq' forms.
17743         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
17744         erroneous trailing variable name from a setq, thus allowing a compilation
17745         properly to track functions not defined at runtime.
17747 2015-11-23  John Wiegley  <johnw@newartisans.com>
17749         Add a note about a questionable use of bool in xdisp.c
17751 2015-11-23  Alan Mackenzie  <acm@muc.de>
17753         Issue a warning from the byte compiler on a malformed `setq' form.
17755         Partly fixes bug#20241.
17756         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
17757         `setq' form with an odd number of arguments is compiled.
17759 2015-11-23  Alan Mackenzie  <acm@muc.de>
17761         Don't let cconv_convert insert a nil argument into a `setq' form.
17763         Fixes bug#21983.
17764         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
17765         argument into a `setq' when there're an odd number of args.  This enables the
17766         byte compiler to issue a message in this case.
17768 2015-11-23  Alan Mackenzie  <acm@muc.de>
17770         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
17772         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
17773         (syms_of_eval): Add a DEFSYM for Qsetq.
17775 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
17777         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
17779         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
17781 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17783         Add EUDC BBDB 3 entry in NEWS
17785         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
17787 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17789         Improve EUDC to BBDB 3 export
17791         * eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
17792         entry to single item.  Add company conversion.
17793         * eudc-export.el (eudc-bbdbify-company): New function.
17794         (bbdb-parse-phone): Declare function.
17795         (eudc-bbdbify-phone): Add BBDB 3 support.
17796         (Bug#21971)
17798 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17800         Add BBDB 3 support for EUDC export
17802         * eudc.el: Add bbdb-version defvar.
17803         (eudc--using-bbdb-3-or-newer-p): New function.
17804         * eudc-export.el (eudc-create-bbdb-record): Add support for
17805         bbdb-create-internal argument list changes introduced in BBDB 3.
17806         * eudcb-bbdb.el: Remove bbdb-version defvar.
17807         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
17808         (Bug#21971)
17810 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
17812         Allow loading modules by 'load-file'
17814         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
17815         2nd arg, to avoid the "binding stack not balanced" error.
17816         (syms_of_lread) <module-file-suffix>: New Lisp variable.
17818         * lisp/files.el (module-file-suffix): Declare.
17819         (load-file): Remove 'module-file-suffix' from
17820         'completion-ignored-extensions', to allow completion on modules.
17822         * etc/NEWS: Mention 'module-file-suffix'.
17824 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
17826         Fix unoptimized builds
17828         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
17829         builds.
17831 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
17833         Work around the asynchronous-empty-diff problem
17835         * lisp/vc/vc-rcs.el (vc-rcs-diff):
17836         * lisp/vc/vc-mtn.el (vc-mtn-diff):
17837         * lisp/vc/vc-hg.el (vc-hg-diff):
17838         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
17839         do a synchronous process call (bug#21969).
17841 2015-11-21  Karl Fogel  <kfogel@red-bean.com>
17843         Finish excising electric indent from `open-line'
17845         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
17847         * test/automated/simple-test.el (open-line-indent, open-line-hook):
17848           Adjust accordingly.
17850         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
17851         (git commit c59353896) started.  It turns out that having INTERACTIVE
17852         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
17853         still had the electric indent behavior, as `post-self-insert-hook'
17854         normally contains `electric-indent-post-self-insert-function' ever
17855         since `electric-indent-mode' has been on by default.  Tracing the code
17856         change in `open-line' is mildly twisty, because Artur Malabarba's
17857         earliest two commits of 24 Oct 2015 first removed the `interactive'
17858         form entirely (git commit 6939896e2) and then restored it with the new
17859         extra "p" already added (git commit bd4f04f86), such that there is no
17860         single-commit diff in which one sees the second "p" appear.  Thus this
17861         change is effectively a reversion of parts of each of those commits.
17863         This could close bug#21884, at least until further discussion.
17865 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
17867         Adhere closer to the "implicit tag name" definition
17869         * lisp/progmodes/etags.el (etags-tags-completion-table):
17870         Adhere closer to the "implicit tag name" definition.  Simplify
17871         the regexp.  Search for the explicit tag name first, and when
17872         not found, search locally for the implicit one.  (Bug#21934)
17874 2015-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
17876         Unrevert most of regexp reentrancy abort patch
17878         The problem was in:
17879           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
17880         which is hence not unreverted.
17881         The rest is:
17882         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
17883         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
17884         All callers in regex.c changed back to the _FAST versions.
17886         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
17887         propertization in backward-sexp.
17889 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
17891         Revert regexp reentrancy abort patch
17893         Although the patch does fix Bug#21688 and prevents a core dump,
17894         it also makes the message-mode-propertize test fail; see:
17895         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
17896         Perhaps someone else can come up with a better fix some day.
17897         * src/syntax.c (update_syntax_table_forward):
17898         Propertize even when truncated.
17899         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
17900         (UPDATE_SYNTAX_TABLE_FAST): Remove.
17901         All callers changed back to the non-_FAST versions.
17903 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
17905         Add a few safety checks when ENABLE_CHECKING
17907         This was motivated by the recent addition of module code,
17908         which added some ENABLE_CHECKING-enabled checks that are
17909         useful elsewhere too.
17910         * src/alloc.c (compact_font_cache_entry):
17911         * src/fns.c (sweep_weak_table):
17912         * src/lread.c (oblookup):
17913         Use gc_asize rather than doing it by hand.
17914         * src/emacs-module.c (module_make_global_ref)
17915         (module_free_global_ref, module_vec_size):
17916         Omit assertions that lisp.h now checks.
17917         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
17918         check that the result is nonnegative.  Use eassume, as this
17919         info can help a bit when optimizing production code.
17920         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
17921         to be consistent with the USE_LSB_TAG case.
17922         (gc_asize): New function, when ASIZE is needed in the gc.
17923         (gc_aset): Use it.
17924         (HASH_TABLE_P): Move definition up, so that it can be used ...
17925         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
17927 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
17929         Simplify recording of main thread's ID on MS-Windows
17931         * src/w32term.c (w32_initialize):
17932         * src/w32console.c (initialize_w32_display):
17933         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
17934         ID independently for each type of session (GUI, TTY, batch).
17935         * src/w32term.c (w32_init_main_thread): New function, records the
17936         main thread's thread ID.
17937         * src/w32term.h: Add prototype for w32_init_main_thread.
17938         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
17940         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
17941         main_thread, for consistency with other threading libraries.  All
17942         users changed.  Include w32term.h.
17943         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
17944         make sure the main thread is alive, as we hold a handle on it
17945         opened by w32_init_main_thread.
17946         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
17947         w32_init_main_thread, instead of calling the requisite APIs once
17948         more.
17950 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
17952         Call 'window-size-change-functions' for mini-windows
17954         * src/window.c (grow_mini_window, shrink_mini_window): Set the
17955         frame's 'window_sizes_changed' flag.
17956         * src/xdisp.c (redisplay_internal): Call the hooks on
17957         'window-size-change-functions' if the call to 'echo_area_display'
17958         sets the frame's 'window_sizes_changed' flag.
17959         (syms_of_xdisp) <window-size-change-functions>:
17960         Update doc string to indicate the mini-window resizes trigger a
17961         call to the hooks, and don't promise that will happen "before
17962         redisplay".  (Bug#19576, Bug#21333)
17964         * doc/lispref/windows.texi (Window Hooks): Update the description
17965         of 'window-size-change-functions'.
17967 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
17969         Improve documentation of dynamic modules
17971         * src/fns.c (Frequire): Doc fix to include the dynamic module
17972         support.
17973         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
17974         dynamic module support.
17975         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
17976         wrt the MUST-SUFFIX argument.
17978         * etc/NEWS: Expand documentation of dynamically loaded modules.
17980 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
17982         Initial documentation for dynamic modules
17984         * etc/NEWS: Mention the new support for dynamically loaded modules.
17986 2015-11-20  Dmitry Gutov  <dgutov@yandex.ru>
17988         Add xref--etags-backend to xref-backing-functions using add-hook
17990         * lisp/progmodes/xref.el (xref-backend-functions): Move the
17991         default value into a separate `add-hook' call (bug#21964).
17993         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
17994         Don't declare the xref-backend-functions variable.
17995         It doesn't make any difference.
17997 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
17999         Fix double-decrement bug when freeing global refs
18001         * src/emacs-module.c (module_free_global_ref): Add a FIXME
18002         comment about error reporting.  Fix a recently-introduced typo
18003         that double-decremented the refcount.
18005 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
18007         Declare emacs_module_init in the module API
18009         * src/emacs-module.h (emacs_module_init): New decl.
18010         Without it, GCC might complain about a module that defines
18011         emacs_module_init without using it.  This also checks the
18012         API better.
18014 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
18016         Fix module test to use ptrdiff_t nargs too
18018         * modules/mod-test/mod-test.c (Fmod_test_return_t)
18019         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
18020         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
18021         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
18022         (Fmod_test_userptr_get, Fmod_test_vector_fill)
18023         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
18024         (finalizer): Remove; no longer used.
18026 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
18028         Fix reindent-introduced typo in module code
18030         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
18031         introduced while reindenting the code earlier, and add a
18032         comment explaining the unusual use of do-while here.
18034 2015-11-20  Anders Lindgren  <andlind@gmail.com>
18036         Fixed bug#19576: `write-file' saves wrong buffer.
18038         If a function on the hook `window-size-change-functions' doesn't
18039         restore the current buffer, functions that save and restore the
18040         current window configuration (like `y-or-no-p') could silently
18041         change the current buffer.  When `write-file' asked the user
18042         confirmation to overwrite a file, `y-or-no-p' changed the current
18043         buffer, and the wrong buffer was saved to the file.
18045         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
18046         using the `norecord' parameter.
18047         (follow-window-size-change): Restore current buffer. Call
18048         `select-frame' using the `norecord' parameter. Cleanup.
18050 2015-11-20  John Wiegley  <johnw@newartisans.com>
18052         Correct a documentation error in frames.texi
18054 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
18056         * lisp/cedet/mode-local.el: Delete obsolete comment
18058 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
18060         Module function arg counts are ptrdiff_t, not int
18062         * src/emacs-module.c (struct module_fun_env)
18063         (module_make_function, module_funcall, Fmodule_call):
18064         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
18065         Use ptrdiff_t, not int, for arg counts.
18066         * src/emacs-module.c (module_make_function): Don’t bother
18067         checking arity against MOST_POSITIVE_FIXNUM, as that’s
18068         unnecessary here.  Make the checking clearer by negating it.
18069         (module_make_function, Fmodule_call): No need to use xzalloc
18070         since the storage doesn’t need to be cleared.
18071         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
18072         for it, and many implementations are buggy with large VLAs anyway.
18073         Use SAFE_ALLOCA_LISP instead.
18074         (module_vec_set): Don’t crash if i < 0.
18075         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
18076         (module_vec_set, module_vec_get): Do fixnum checks only when
18077         i is out of array bounds, for efficiency in the usual case.
18078         (Fmodule_load): Simplify fixnum range check.
18079         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
18080         integer overflow in array allocation size.
18082 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
18084         Minor improvements in module test
18086         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
18087         about missing prototype of malloc.
18088         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
18089         compiler warnings.
18091 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
18093         Improve MS-Windows implementation in dynlib.c
18095         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
18096         No need to include windows.h, as w32.h already does that.
18097         <dynlib_last_err>: New static variable.
18098         (dynlib_reset_last_error): New function.
18099         (dynlib_open): Convert forward slashes to backslashes.  Convert
18100         file names from UTF-8 to either UTF-16 or the current ANSI
18101         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
18102         argument is NULL, return a handle to the main module, like
18103         'dlopen' does.  Record the error, if any, for use by dynlib_error.
18104         (dynlib_sym): Check the handle for validity. Record the error, if
18105         any, for use by dynlib_error.
18106         (dynlib_error): Call w32_strerror to produce the error string, and
18107         zero out the last error code, like dlerror does.
18108         (dynlib_close): Check the handle for validity.  Record the error,
18109         if any, for use by dynlib_error.  Don't call FreeLibrary with a
18110         handle for the main module.
18111         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
18113 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
18115         Include-file tweaks for modules
18117         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
18118         * src/dynlib.h: Do not include config.h.
18119         It’s every .c file’s responsibility to include config.h first.
18120         * src/emacs-module.c: Include emacs-module.h immediately after
18121         config.h, to test that emacs-module.h doesn’t depend on
18122         include files other than config.h.
18124 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
18126         Simplify push_handler and profile its malloc
18128         * src/lisp.h (PUSH_HANDLER): Remove.
18129         All callers changed to use push_handler directly.
18130         * src/eval.c (internal_condition_case)
18131         (internal_condition_case_1, internal_condition_case_2)
18132         (internal_condition_case_n):
18133         Use same pattern as for other invokers of push_handler.
18134         (push_handler, push_handler_nosignal): Use call-by-value
18135         instead of call-by-reference.  All uses changed.
18136         (push_handler): Simplify by rewriting in terms of
18137         push_handler_nosignal.
18138         (push_handler_nosignal): Profile any newly allocated memory.
18140 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
18142         * src/emacs-module.h: Include stddef.h, not stdlib.h.
18144 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
18146         Discover repository version in linked worktrees (bug#21930)
18148         * lisp/version.el (emacs-repository--version-git-1): Do not assume
18149         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
18150         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
18151         is nil too.
18153 2015-11-19  Juri Linkov  <juri@linkov.net>
18155         * lisp/replace.el (occur-regexp-descr): New function.
18156         (occur-1, occur-engine): Use it.
18158         * lisp/isearch.el (isearch-occur): Propertize regexp with
18159         isearch-string and isearch-regexp-function-descr for
18160         occur-regexp-descr to display the correct description
18161         message in the header (bug#21176, bug#21180).
18163 2015-11-19  Karl Fogel  <kfogel@red-bean.com>
18165         Revert `open-line' electric-indent sensitivity
18167         * lisp/simple.el (open-line): Remove electric indent code.
18168           (electric-indent-just-newline): Don't declare.
18170         * test/automated/simple-test.el (open-line-indent): Adjust test.
18172         This partly reverts Artur Malabarba's change that added electric
18173         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
18174         commit bd4f04f86), and adjusts a new test he added right afterwards
18175         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
18176         However, the new INTERACTIVE argument to `open-line', which he also
18177         added in the first commit, is not reverted here.
18179         See the thread "Questioning the new behavior of `open-line'." on the
18180         Emacs Devel mailing list, and in particular this message:
18182           From: Artur Malabarba
18183           Subject: Re: Questioning the new behavior of `open-line'.
18184           To: Karl Fogel
18185           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
18186           Date: Wed, 18 Nov 2015 21:03:58 +0000
18187           Message-ID: \
18188             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
18190           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
18192 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
18194         Omit unnecessary clear in Fmodule_load
18196         * src/emacs-module.c (Fmodule_load):
18197         Simplify and avoid unnecessary initialization of priv member to 0.
18199         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
18201 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
18203         Prefer signed integer types in module code
18205         Generally speaking, at the C level the Emacs source code prefers
18206         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
18207         partly to avoid the usual signedness confusion when comparing values.
18208         Change the module API to follow this convention.
18209         Use ‘int’ for small values that can’t exceed INT_MAX.
18210         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
18211         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
18212         (Fmod_test_vector_eq):
18213         * src/emacs-module.c (struct emacs_value_frame)
18214         (module_make_global_ref, module_free_global_ref)
18215         (module_copy_string_contents, module_make_string)
18216         (module_vec_set, module_vec_get, module_vec_size):
18217         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
18218         * src/lread.c (suffix_p):
18219         Prefer signed to unsigned integer types.
18221 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
18223         Omit ‘const’ on locals
18225         Remove ‘const’ qualifier from locals that were newly added.
18226         We don’t normally bother declaring locals with ‘const’ even
18227         though they are not modified, for the same reason we don’t
18228         bother declaring them with ‘register’ even though their
18229         addresses are not taken; the advantage in compile-time
18230         checking isn’t worth the loss of readability.
18231         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
18232         (Fmod_test_vector_fill, Fmod_test_vector_eq):
18233         * src/emacs-module.c (MODULE_SETJMP_1)
18234         (module_make_global_ref, module_free_global_ref)
18235         (module_non_local_exit_get, module_make_function)
18236         (module_extract_integer, module_extract_float)
18237         (module_get_user_ptr, module_set_user_ptr)
18238         (module_get_user_finalizer, module_set_user_finalizer)
18239         (module_vec_get, Fmodule_call)
18240         (module_non_local_exit_signal_1)
18241         (module_non_local_exit_throw_1, lisp_to_value)
18242         (finalize_storage, allocate_emacs_value, mark_modules)
18243         (module_handle_signal, module_handle_throw)
18244         (module_format_fun_env):
18245         * src/eval.c (push_handler, push_handler_nosignal)
18246         (init_handler):
18247         * src/lread.c (suffix_p):
18248         Omit unnecessary ‘const’.
18250 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
18252         Prefer intmax_t to int64_t in module code
18254         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
18255         * src/emacs-module.c (module_extract_integer)
18256         (module_make_integer):
18257         * src/emacs-module.h (struct emacs_env_25):
18258         Prefer intmax_t to int64_t.  This doesn’t change the generated
18259         code on any of the machines Emacs currently ports to, but it’s
18260         at least in theory more future-proof as C99 doesn’t guarantee
18261         that int64_t exists.
18263 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
18265         Rename module.c to emacs-module.c, etc.
18267         * src/emacs-module.c: Rename from src/module.c.
18268         * src/emacs-module.h: Rename from src/module.h.
18269         All uses changed.
18271 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
18273         Fix minor module problems found by static checking
18275         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
18276         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
18277         * src/module.c (Fmodule_load): Fix pointer signedness bug.
18278         (Fmodule_call): Tell GCC that the default case is unreachable.
18280 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
18282         Style fixes for indenting etc. in module code
18284         This is mostly indenting and spacing changes.  Also, remove
18285         some unnecessary static decls instead of bothering to reindent them.
18286         * src/module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
18287         as most other Emacs files do for this sort of thing.
18289 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
18291         Minor improvements in modules testing Makefile
18293         * modules/mod-test/Makefile (EMACS, SO): New variables.
18294         (CFLAGS): When SO = dll, don't use -fPIC.
18295         (check): New target, runs the test.
18297 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
18299         * .gitignore: Add "*.dll".
18301 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
18303         Migrate modules/.gitignore into .gitignore
18305         * .gitignore: Add former contents of modules/.gitignore.
18306         * modules/.gitignore: Remove.
18308 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
18310         Add copyright notices to module code
18312         Put them in the usual format for GNU Emacs copyright notices.
18314 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
18316         Rename emacs_module.h to module.h
18318         * src/module.h: Rename from src/emacs_module.h.
18319         All uses changed.
18321 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
18323         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
18325         * src/lread.c (Fload): Remove unused variable `size'
18327 2015-11-19  Alan Mackenzie  <acm@muc.de>
18329         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
18331 2015-11-18  Dmitry Gutov  <dgutov@yandex.ru>
18333         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
18335         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
18336         vc-parent-buffer over log-view-mode fallback (bug#21955).
18338 2015-11-18  Alan Mackenzie  <acm@muc.de>
18340         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
18342 2015-11-18  Ken Brown  <kbrown@cornell.edu>
18344         * configure.ac (LIBMODULES): Don’t define on Cygwin
18346 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
18348         Fix MS-Windows build --with-modules
18350         * src/module.c: Reformat copyright commentary.
18351         (module_vec_get): Use explicit cast to size_t to avoid compiler
18352         warning in 32-bit builds.
18353         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
18354         Compare thread IDs directly, as GetThreadId is not available
18355         before Windows Vista.
18356         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
18357         without using APIs and constants not available on XP and older
18358         systems.  Obtain and store the thread ID as well.
18360 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
18361             Philipp Stephani  <phst@google.com>
18363         Add dynamic module test and helper script
18365         Add 'modhelp.py' script (python2) to automate module testing and
18366         module generation.
18368         To build and test all modules in the modules/ dir
18369           $ ./modhelp.py test
18371         To generate a module from template code (good starting point)
18372           $ ./modhelp init mynewtestmodule
18374         See the script -h option for more documentation.
18376         * modules/modhelp.py: New module helper script.
18377         * modules/mod-test/Makefile: New file. Makefile for the test module.
18378         * modules/mod-test/mod-test.c: New file. Test module source file.
18379         * modules/mod-test/test.el: New file. ert test suite for the test module.
18380         * modules/.gitignore: New file. Local .gitignore file.
18382 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
18384         Make 'Fload' look for modules
18386         'Fload' can now load dynamic modules. This also makes 'require' work.
18388         * src/lread.c:
18389           (suffix_p): New function.
18390           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
18391           with a module suffix.
18392           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
18394 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
18395             Philipp Stephani  <phst@google.com>
18397         Add dynamic module module support
18399         * configure.ac: Add '--with-modules' option.  Conditionally add
18400           dynlib.o and module.o to the list of objects.  Add any system
18401           specific flags to the linker flags to support dynamic libraries.
18402         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
18403           attributes.
18404         * src/Makefile.in: Conditionally add module objects and linker flags.
18405         * src/alloc.c (garbage_collect_1): protect module local values from
18406           GC.
18407         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
18408         * src/emacs_module.h: New header file included by modules.  Public
18409           module API.
18410         * src/module.c: New module implementation file.
18412 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
18414         Add new User Pointer (User_Ptr) type
18416         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
18417         (XUSER_PTR): New User_Ptr accessor.
18418         * src/alloc.c (make_user_ptr): New function.
18419         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
18420         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
18421         (Fuser-ptrp): New user pointer type predicate function.
18422         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
18423         subr.
18424         * src/print.c (print_object): Add printer for User_Ptr type.
18426 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
18427             Philipp Stephani  <phst@google.com>
18429         Add portable layer for dynamic loading
18431         * src/dynlib.h: New file.
18432         * src/dynlib.c: New file.
18434 2015-11-18  Philipp Stephani  <phst@google.com>
18436         Add catch-all & no-signal version of PUSH_HANDLER
18438         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
18439         a new "catch-all" handler type.
18441         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
18442           functions.
18443         * src/fns.c (hash_remove_from_table): Expose function public.
18444         * src/lisp.h: New handler type, define macro to push_handler call.
18446 2015-11-18  Ken Brown  <kbrown@cornell.edu>
18448         Silence byte-compiler warning
18450         * lisp/server.el (server-process-filter): Silence byte-compiler
18451         warning.
18453 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
18455         Quote symbols in docstrings using `'
18457         Be more systematic about quoting symbols `like-this' rather than
18458         `like-this or 'like-this' in docstrings.  This follows up Artur
18459         Malabarba's email in:
18460         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
18462 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
18464         Fix savegames in dunnet
18466         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
18467           of separate implementation.
18469 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
18471         * lisp/emacs-lisp/package.el (package--with-response-buffer):
18473         Ensure we're at the start of the buffer before searching for
18474         the end of headers.
18476 2015-11-17  Xue Fuqiao  <xfq.free@gmail.com>
18478         * admin/release-process: Improve wording.
18480 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
18482         Fix docstring quoting problems with ‘ '’
18484         Problem reported by Artur Malabarba in:
18485         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
18486         Most of these fixes are to documentation; many involve fixing
18487         longstanding quoting glitches that are independent of the
18488         recent substitute-command-keys changes.  The changes to code are:
18489         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
18490         (describe-mode-local-overload):
18491         Substitute docstrings before displaying them.
18492         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
18493         Quote the generated docstring for later substitution.
18495 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
18497         Improve configure --help text for wide ints
18499         * configure.ac (wide-int): Clarify user-level advantages and
18500         disadvantages.
18502 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
18504         Improve doc string
18506         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
18508 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
18510         eval_sub followed dangling pointer when debugging
18512         Problem reported by Pip Cet (Bug#21245).
18513         This bug could occur in eval_sub if the C compiler reused
18514         storage associated with the ‘argvals’ local after ‘argvals’
18515         went out of scope, and if the Elisp debugger stopped on Elisp
18516         function exit and accessed ‘argvals’.  It could also occur if
18517         a variadic function was called with so many arguments (over
18518         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
18519         SAFE_FREE freed the arguments, then the memory manager used
18520         the storage for other purposes, then the debugger accessed the
18521         arguments.
18522         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
18523         function body.  Simplify local decls.
18524         When allocating args via SAFE_ALLOCA, call
18525         debugger before invoking SAFE_FREE, as the debugger needs
18526         access to the args.
18527         (eval_sub, apply_lambda): Rework to avoid need for
18528         set_backtrace_debug_on_exit hack.  This is cleaner,
18529         and should work better with buggy custom debuggers.
18531 2015-11-16  Daiki Ueno  <ueno@gnu.org>
18533         * lisp/image-mode.el: Support encrypted file
18535         (image-toggle-display-image): Read content from the buffer instead
18536         of the file, if the buffer holds a decrypted data.  (Bug#21870)
18538 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
18540         ELF unexec: align section header
18542         This ports the recent unexelf.c changes to Fedora x86-64
18543         when configured with GCC’s -fsanitize=undefined option.
18544         * src/unexelf.c (unexec): Align new_data2_size to a multiple
18545         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
18546         pointer aligned appropriately for its type.
18548 2015-11-16  Andreas Schwab  <schwab@linux-m68k.org>
18550         Do more checks on bytecode objects (Bug#21929)
18552         * src/eval.c (funcall_lambda): Check size of compiled function
18553         object.
18554         (Ffetch_bytecode): Likewise.
18556 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
18558         pcase.el: Fix edebugging of backquoted cons patterns
18560         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
18561         cons patterns. (Bug#21920)
18563 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
18565         Improve fix for regex reentrancy abort
18567         Suggested by Stefan Monnier (Bug#21688).
18568         * src/syntax.c (update_syntax_table_forward):
18569         Remove recently-added PROPERTIZE arg, and assume it is true.
18570         All callers changed.
18571         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
18572         Invoke update_syntax_table directly.
18574 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
18576         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
18578         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
18580         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
18582 2015-11-15  Vasily Korytov  <vasily.korytov@yahoo.com>
18584         Recognize .rbw and .pyw files (bug#18753)
18586         * lisp/progmodes/python.el (auto-mode-alist):
18587         Recognize .pyw files.
18589         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
18590         Recognize .rbw files.
18592 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
18594         Fix ruby-mode auto-mode-alist entry
18596         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
18597         around the extensions (bug#21257).
18599 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
18601         Fix etags completion near eob
18603         * lisp/progmodes/etags.el (tags-completion-at-point-function):
18604         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
18606 2015-11-15  Alan Mackenzie  <acm@muc.de>
18608         De-pessimize detection of C++ member initialization lists.
18610         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
18611         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
18612         is only called when a construct "looks right" rather than continually.
18613         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
18615 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
18617         Improve a few doc strings, comments
18619         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
18620         * lisp/cedet/ede/locate.el (ede-locate-base):
18621         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
18622         * src/fns.c (Fdelq): Improve doc string.
18624         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
18626 2015-11-15  Anders Lindgren  <andlind@gmail.com>
18628         Enhance NSTRACE (trace output for NextStep).
18630         Trace can be disabled for groups of functions. By default, event
18631         functions and functions that generate lots of output are disabled.
18633         Trace output of Objective-C functions now use the "[ClassName
18634         parameter:]" form.
18636         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
18637         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
18638         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
18639         controlling in which function groups trace should be active.
18640         (NSTRACE_WHEN): Support for silencing a function, this also
18641         silencing all called functions.
18642         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
18643         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
18644         print the full screen state in NSTRACE functions.
18646         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
18647         can be accessed from multiple threads.
18648         (nstrace_enabled_global): New variable, when FALSE, trace is
18649         silenced.
18650         (nstrace_restore_global_trace_state): New function, used to
18651         restore `nstrace_enabled_global' at end of block.
18652         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
18653         ([EmacsWindow setFrame:display:animation:])
18654         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
18655         and call corresponding super function.
18656         (Many functions): Add or enhance trace output.
18658         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
18660         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
18662         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
18663         and call corresponding super function.
18665 2015-11-15  Anders Lindgren  <andlind@gmail.com>
18667         Fixed a toolbar related issue on OS X.
18669         Earlier, when toggling the tool-bar in a maximized frame, the
18670         frame size didn't match the number of text lines, leaving an
18671         unused area at the bottom of the frame.
18673         * nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
18674         fullscreen modes when tool bar is disabled.
18676 2015-11-15  Anders Lindgren  <andlind@gmail.com>
18678         Fixed OS X 10.6.8 build issue (bug#21862).
18680         * src/nsterm.h (EmacsView): Add missing declarations.
18681         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
18682         the standard method but without the notification parameter.
18683         Intended to be used for direct calls.
18684         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
18685         version of `windowDidBecomeKey'. Made the notification method call
18686         the non-notification method instead of the vice versa.
18687         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
18688         needed.
18690 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
18692         * lisp/faces.el (faces--attribute-at-point): Fix an issue
18694         Previous code would signal an error when the face at point was
18695         a manually built list of attributes such as '(:foregroud "white").
18697         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
18699 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
18701         Fix regex abort when it tries to reenter itself
18703         Problem reported by Ken Raeburn.
18704         Solution suggested by Stefan Monnier (Bug#21688).
18705         * src/regex.c (re_match_2_internal):
18706         Use new _FAST functions to avoid regex code reentering itself.
18707         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
18708         All callers changed.
18709         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
18710         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
18712 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
18714         Improve Ruby 1.9-style keyword keys highlighting
18716         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
18717         Handle required keyword arguments (bug#21367).
18718         And highlight the colon together with the name.
18720 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
18722         Unify the absolutely equal xref-backend-references implementations
18724         * lisp/progmodes/elisp-mode.el (xref-backend-references):
18725         Remove.
18727         * lisp/progmodes/etags.el (xref-backend-references):
18728         Remove.
18730         * lisp/progmodes/xref.el (xref-backend-references):
18731         Define the default implementation.
18733 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
18735         Update project-find-regexp for the new xref API
18737         * lisp/progmodes/project.el (project--read-regexp):
18738         Update to use the new xref API methods.
18740         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
18742 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
18744         Fix replacing a match with a shorter string
18746         In effect, partially reverting fe973fc.
18748         * lisp/progmodes/xref.el (xref-query-replace): Store the end
18749         of each match as a marker again, instead of length.
18750         (xref--query-replace-1): Update accordingly.
18752 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
18754         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
18756         Signal user-errors instead.
18758 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
18760         Document 'describe-symbol'
18762         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
18763         (Name Help): Document "C-h o" and describe-symbol.
18765         * lisp/help-fns.el (describe-symbol): Doc fix.
18767 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
18769         Change test name to avoid spellcheck issue.
18771 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
18773         Avoid signaling an error in 'describe-symbol'
18775         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
18776         exists as a function/variable/face/etc., but is undocumented.
18778         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
18779         test.
18781 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
18783         * INSTALL (--with-cairo): Document this new configure option.
18785 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
18787         Document that GNU Make >= 3.81 is required to build Emacs
18789         * doc/lispref/internals.texi (Building Emacs): Document that GNU
18790         Make 3.81 or later is now required.
18792 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
18794         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
18796 2015-11-13  l3thal  <kwhite@gnu.org>
18798         Merge branch 'erc-async-reconnect' into emacs-25
18800         Reconnect asynchronously.
18802 2015-11-11  Alan Mackenzie  <acm@muc.de>
18804         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
18806         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
18807         Windows" and new @defun selected-window-group.
18808         (Window Start and End): Describe new &optional parameter GROUP and
18809         ...-group-function for window-start, window-end, set-window-start, and
18810         pos-visible-in-window-p.
18811         (Textual Scrolling) Describe the same for recenter.
18812         doc/lispref/positions.texi (Screen Lines): Describe the same for
18813         move-to-window-line.
18815         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
18816         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
18817         new optional parameter "group".  At the beginning of each, check whether the
18818         corresponding ...-group-function is set to a function, and if so execute this
18819         function in place of the normal processing.
18820         (syms_of_window): Define symbols for the six new variables below.
18821         (window-start-group-function, window-end-group-function)
18822         (set-window-start-group-function, recenter-group-function)
18823         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
18824         New permanent local buffer local variables.
18825         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
18826         Fpos_visible_in_window_p.
18828         lisp/window.el (selected-window-group-function): New permanent local buffer
18829         local variable.
18830         (selected-window-group): New function.
18832         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
18833         enable, kill them at mode disable.  Add/remove follow-after-change to/from
18834         after-change-functions.
18835         (follow-start-end-invalid): New variable.
18836         (follow-redisplay): Manipulate follow-start-end-invalid.
18837         (follow-after-change, follow-window-start, follow-window-end)
18838         (follow-set-window-start, follow-pos-visible-in-window-p)
18839         (follow-move-to-window-line, follow-sit-for): New functions.
18841         lisp/isearch.el (isearch-call-message): New macro.
18842         (isearch-update, with-isearch-suspended, isearch-del-char)
18843         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
18844         (with-isearch-suspended): Rearrange code such that isearch-call-message is
18845         invoked before point is moved.
18846         (isearch-message): Add comment about where point must be at function call.
18847         (isearch-search): Remove call to isearch-message.
18848         (isearch-lazy-highlight-window-group): New variable.
18849         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
18850         the battery of tests to ...
18851         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
18852         Note: (sit-for 0) is still called.
18853         (isearch-lazy-highlight-update): Check membership of
18854         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
18855         property.
18856         (isearch-update, isearch-done, isearch-string-out-of-window)
18857         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
18858         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
18859         (isearch-lazy-highlight-update): Call the six amended primitives (see
18860         src/window.c above) with the new `group' argument set to t, to cooperate
18861         with Follow Mode.
18863 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
18865         * shr.el (shr-descend): Allow using lambdas in external functions.
18867 2015-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
18869         * admin/gitmerge.el: Tweaks that seemed necessary
18871         * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
18872         (gitmerge-maybe-resume): Provide explicit empty commit message.
18874 2015-12-25  Łukasz Stelmach  <stlman@poczta.fm>  (tiny change)
18876         Use a different port for TLS erc
18878         * lisp/erc/erc.el (erc-default-port-tls): New variable
18879         (bug#19497).
18880         * lisp/erc/erc.el (erc-tls): Use it.
18882 2015-12-25  Alain Schneble  <a.s@realize.ch>
18884         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
18886         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
18887         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
18888         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
18889         information in URL-struct.
18890         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
18891         path and query into nil path and query, respectively.
18892         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
18893         empty path into an absolute ("/") path.
18894         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
18895         fragment-only URIs. Do not just return them unchanged.
18896         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
18897         reference URI should not drop the last segment.
18899 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
18901         Let url use default file modes when copying files
18903         * lisp/url/url-handlers.el (url-copy-file): Use default file
18904         modes when copying files (bug#11400).
18906 2015-12-25  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
18908         Doc fix for url-http
18910         * lisp/url/url-http.el (url-http): Document better return values
18911           (bug#13187) (tiny change)
18913 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
18915         * eww.el (eww-display-html): Support <button> tags (bug#20485).
18917 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
18919         Made ffap-url-p a defun instead of a defsubst
18921         * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
18922         since there doesn't seem to be much of a reason for it to be a
18923         defsubst (bug#18203).
18925 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
18927         Add a command to view files in the browser to dired
18929         * lisp/dired.el (dired-mode-map): Add the `W' command
18930         (bug#18810).
18932 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
18934         Allow http://user:pass@foo/ URLs again
18936         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
18937         user/passwords in URLs (bug#19046).
18939 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
18941         * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
18943 2015-12-25  Samer Masterson  <samer@samertm.com>
18945         Autoload url-insert-buffer-contents
18947         * lisp/url/url-handlers.el: Add autoload cookie so that
18948         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
18950 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
18952         Allow toggling colors in eww
18954         * doc/misc/eww.texi (Basics): Mention "C".
18956         * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
18958         * lisp/net/shr.el (shr-use-colors): New variable.
18959         (shr-colorize-region): Use it.
18961 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
18963         Follow meta refresh tags in eww
18965         * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
18967 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
18969         More eww file name coding fixes
18971         * eww.el (eww-decode-url-file-name): Use the base coding
18972         system to check for encodability.
18974 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
18976         Always save eww history
18978         * eww.el (eww-setup-buffer): Always save history, even when
18979         called from outside the eww buffer (bug#19638).
18981 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
18983         Default web pages to right-to-left
18985         * eww.el (eww-mode): Most web pages are left-to-right, so make
18986         that the default (bug#19801).
18988         * shr.el (shr-tag-html): Respect "dir" attributes
18989         (left-to-right, right-to-left).
18991 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
18993         Make toggling checkboxes work again
18995         * eww.el (eww-update-field): Make toggling checkboxes work
18996         again (bug#21881).
18998 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
19000         Don't store cookies with empty names
19002         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
19003         cookies with empty names (bug#21936).
19005 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
19007         * shr.el (shr-descend): Stop rendering before we run out of
19008         specpdl room (bug#22117).
19010 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
19012         Use cl-reduce, not reduce.
19014 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
19016         Allow several <tbody> tags in shr
19018         * shr.el (shr-table-body): New function to find the real body
19019         of a table.
19020         (shr-tag-table): Use it to render several <tbody> tags in a
19021         table (bug#22170).
19023 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
19025         Make prettier unique file names in eww
19027         (eww-make-unique-file-name): Make unique file names by making
19028         files like foo(2).jpg instead of foo(1)(2).jpg.
19030 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
19032         Decode hex-encoded URLs before using them as file names
19034         * eww.el (eww-decode-url-file-name): New function.
19035         (eww-download-callback): Use it to decode file names before
19036         saving them.
19038 2015-12-24  Ashish SHUKLA  <ashish.is@lostca.se>  (tiny change)
19040         * doc/misc/emacs-gnutls.texi (Help For Users): Document FreeBSD bundle.
19041         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
19043 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
19045         Allow overriding shr functions from eww
19047         * eww.el (eww-display-html): Allow overriding elements in
19048         `shr-external-rendering-functions'.
19050 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
19052         Ignore invalid SVG images
19054         * shr.el (shr-tag-svg): Ignore SVG images that have no width
19055         or height, because these can't be displayed by ImageMagick,
19056         anyway.
19058 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
19060         shr table rendering fix
19062         * shr.el (shr-tag-table): Allow rendering body-less tables
19063         that have headers.
19065 2015-12-22  Sam Steingold  <sds@gnu.org>
19067         clipboard should still work even if interprogram-* is disabled
19069         (clipboard-yank): When `interprogram-cut-function' is nil,
19070         bind it to `gui-selection-value' - the default value.
19071         (clipboard-kill-region, clipboard-kill-ring-save): When
19072         `interprogram-paste-function' is nil, bind it to `gui-select-text' -
19073         the default value.
19075 2015-12-18  Phillip Lord  <phillip.lord@russet.org.uk>
19077         Fix bootstrap issue with dired-loaddefs
19079         * lisp/dired.el: Autoloads for secondary files loaded optionally.
19081 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
19083         dired generate autoloads to non-versioned file.
19085         * lisp/dired.el: Remove autoloads.
19086         * lisp/Makefile.in: Add dired to autogenel.
19087         * lisp/dired-aux.el,lisp/dired-x.el: Update file local.
19088         * test/lisp/dired-tests.el: Add new test.
19090 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
19092         eieio generate autoloads to non-versioned file.
19094         * lisp/Makefile.in: eieio-loaddefs add to autogenel.
19095         * lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
19096           Remove autoloads.
19097         * lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
19098           lisp/emacs-lisp/eieio-opt.el: Update file local.
19099         * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
19101 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
19103         htmlfontify generate autoload to non-versioned file.
19105         * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
19106         * lisp/hfy-cmap.el: Update file local.
19107         * lisp/htmlfontify.el: Remove autoloads, add require.
19108         * test/lisp/htmlfontify-tests.el: Test autoload functionality.
19110 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
19112         ibuffer generate autoloads to non-versioned file.
19114         * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
19115         * lisp/ibuf-ext.el: Update file local.
19116         * lisp/ibuffer.el: Remove autoloads and add a require.
19117         * test/lisp/ibuffer-tests.el: Test that autoload is working.
19119 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
19121         rmail generate autoloads to non-versioned file.
19123         * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
19124         * lisp/mail/rmail.el: Remove autoloads, add require.
19125         * lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
19126           lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
19127           lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
19128           lisp/mail/undigest.el: Update file-local.
19129         * test/lisp/mail/rmail-tests.el:
19131 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
19133         Add autoload-force target.
19135         * lisp/Makefile.in (autoload-force): New target.
19137 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
19139         ps-print generate autoloads to non versioned file.
19141         * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
19142         * lisp/ps-print.el: Remove autoloads.
19143         * lisp/ps-mule.el: Update file-local.
19144         * test/lisp/ps-print-tests.el: Test autoload functionality.
19146 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
19148         reftex generate autoloads to non versioned file.
19150         * lisp/Makefile.in: Add reftex-loaddefs to autogen files
19151         * lisp/textmodes/reftex.el: Remove autoloads.
19152         * lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
19153           lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
19154           lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
19155           lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
19156           lisp/textmodes/reftex-toc.el: Update autoload file-local.
19157         * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
19158           function.
19160 2015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
19162         * lisp/calculator.el (calculator-define-key): Undo last change
19164         Make map argument mandatory instead (bug#22106).
19165         (calculator-add-operators): Pass the argument that's not optional any more.
19167 2015-12-03  Glenn Morris  <rgm@gnu.org>
19169         * Makefile.in: Avoid duplication.
19171         (have-tests): New rule.
19172         (check, check-maybe): Use it.
19174 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
19176         make check unconditional, check-maybe top-level.
19178          * Makefile.in: Add check-maybe target.
19179          * test/Makefile.in: Restore unconditional behavior to make check.
19181 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
19183         Tests now support out-of-source-build.
19185          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
19186            about current working directory.
19188 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
19190         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
19192 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
19194         Improve documentation and clean up.
19196          * test/Makefile.in: Improve documentation, use EMACS variable
19197            correctly, and clean up makefile rules.
19199 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
19201         Update file headers for name change.
19203          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
19205 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
19207         Test files renamed to new scheme.
19209          * (finalizer-tests.el): Now renamed alloc-tests.el
19210          * (zlib-tests.el): Now renamed decompress-tests.el.
19212 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
19214         Tests now depend on source files
19216          * test/Makefile.in: Include dependences from tests to source files.
19217          * test/make-test-deps.emacs-lisp: New file
19218          * .gitignore: Ignore generated make include file
19220 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
19222         * lisp/progmodes/which-func.el: Improve disabling the mode
19224         Use lexical-binding.
19225         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
19226         (which-func, which-func-format): Remove redundant :group arg.
19227         (which-func-try-to-enable): New function.
19228         (which-func-ff-hook, which-function-mode): Use it.
19229         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
19230         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
19232 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
19234         * lisp/calculator.el (calculator-define-key): Silence warning
19236         ...about unknown calculator-mode-map.
19238 2015-11-29  Eli Barzilay  <eli@barzilay.org>
19240         * lisp/calculator.el: more improvements and bugfixes.
19242         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
19243           effect anyway.)
19245         - Simplify `calculator-number-to-string' by throwing most of the work
19246           onto `number-to-string', leaving just some tweaks for decimal inputs.
19247           This leads to some minor changes, for example, pasting "1x1" in hex
19248           mode would warn that "x" is ignored and result in "11" (and it wasn't
19249           done in decimal mode), whereas now it just ignores everything from the
19250           "x" and on and result in a "1" just like in decimal input mode.  Also,
19251           overflows are left for `number-to-string' to deal with.
19253         - `calculator-paste' is very simple as a result.
19255         - Extend the simplified `calculator-paste': with a prefix argument it
19256           pastes a string as if the characters were entered.  This can be used
19257           to reduce expressions, but note that it's a simple literal operation,
19258           so precedence can be messed, a number can be paster while entering a
19259           number, spaces and newlines matter, etc.
19261         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
19262           operator.
19264         - Fix a bug in `calculator-put-value': avoid grouping in the display
19265           that is used to construct `calculator-curnum'.  This would trigger
19266           when pasting or getting a value from a register in some radix mode
19267           with a large enough value.  Another fix: make the output radix equal
19268           the input one, otherwise numbers could be converted twice.
19270 2015-11-29  Eli Barzilay  <eli@barzilay.org>
19272         * lisp/calculator.el: Re-do key bindings.
19274         Use a helper function that arranges a parent keymap that binds alternate
19275         case keys so if some letter key is unbound and it's un/shifted version
19276         is, it will get used.  This makes the global-map trickery unnecessary.
19278         Also switch to passing strings that name keys through `kbd'.
19280 2015-11-29  Eli Barzilay  <eli@barzilay.org>
19282         * lisp/calculator.el: improve radix modes
19284         Fix prompt for some input radix with decimal output (eg, "BD" instead of
19285         the incorrect "B="); also, some minor docstring tweaks for these.
19287 2015-11-29  Eli Barzilay  <eli@barzilay.org>
19289         * lisp/calculator.el: better reading of register names
19291         Use `register-read-with-preview' with a dynamically bound
19292         `register-alist' and a proper preview function to read register names.
19294 2015-11-29  Eli Barzilay  <eli@barzilay.org>
19296         * lisp/calculator.el: General improvements
19298         Use things like `when', `unless', and `push'.
19300         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
19301         non-electric mode.
19303 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
19305         Fix a problem with gfilenotify in filenotify-tests.el
19307         * test/lisp/filenotify-tests.el
19308         (file-notify--test-expected-events): Remove.
19309         (file-notify--test-cleanup): Do not set that variable.
19310         (file-notify--test-with-events): EVENTS can also be a list of lists.
19311         (file-notify-test02-events, file-notify-test04-file-validity):
19312         Adapt expected result.
19314 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
19316         * .gitignore: Adjust to changes in 'test' directory structure.
19318 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
19320         Fix test/manual/etags/Makefile
19322         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
19323         changes in 'test' directory structure.
19325 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
19327         Exclude resource dirs from search for tests.
19329         * test/Makefile.in: Test file locations are now found with find
19330           rather than using finds native functions.
19332 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
19334         Add test targets without directory names.
19336          * (test/Makefile.in): Extend test_template to add two targets for each
19337            file.
19339 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
19341         * lisp/emacs-lisp/package.el: Require url-handlers
19343 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
19345         Move elisp-mode-tests to new function names.
19347          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
19348          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
19350 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
19352         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
19354 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
19356         Merge branch 'feature/standard-test-location'
19358 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
19360         * lisp/emacs-lisp/eieio.el: Add some default implementations
19362         (standard-class): Mark it obsolete.
19363         (slot-missing): Give it a default implementation.
19364         (destructor): Simplify and mark it obsolete.
19365         (object-print): Give it a default implementation.
19366         (eieio-change-class): Rename from change-class.
19367         (change-class): Redefine as obsolete alias.
19369 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19371         Some final fixes in file notification before merging with master
19373         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
19374         (file-notify-callback): Improve check for `stopped' event.  Call
19375         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
19376         (file-notify-add-watch): In case FILE is not a directory, call the
19377         file monitor for the kqueue backend.  Otherwise, call the
19378         directory monitor for the upper directory.
19380         * src/inotify.c (inotifyevent_to_event): Extract file name from
19381         watch_object if the event doesn't provide it.
19382         (Finotify_add_watch): Add file name to watch_object.
19384         * test/automated/file-notify-tests.el (file-notify--test-timeout):
19385         Use different timeouts for different libraries.
19386         (file-notify--test-with-events): Suppress lock files.  Flush
19387         outstanding events before running the body.
19388         (file-notify-test02-events, file-notify-test04-file-validity): Do
19389         not skip cygwin tests.  Add additional test for file creation.
19390         Adapt expected result for different backends.
19391         (file-notify-test03-autorevert): Some of the tests don't work for
19392         w32notify.
19393         (file-notify-test06-many-events): Rename into both directions.
19395 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19397         Rework file notifications, kqueue has problems with directory monitors
19399         * lisp/filenotify.el (file-notify-add-watch): Call the native
19400         add-watch function on the file, not on the dir.
19402         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
19403         about already deleted entries.
19405         * test/automated/auto-revert-tests.el
19406         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
19407         since this deletes the target file first.
19409         * test/automated/file-notify-tests.el (file-notify--test-event-test):
19410         Make stronger checks.
19411         (file-notify-test01-add-watch, file-notify-test02-events)
19412         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
19413         Rewrite in order to call file monitors but directory monitors.
19414         (file-notify-test06-many-events): Ler rename work in both directions.
19416 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19418         Continue with pending events
19420         * src/kqueue.c (pending_events): Remove global variable.
19421         (kqueue_compare_dir_list): Create `write' event for not used
19422         pending events.
19423         (globals_of_kqueue): Remove initialization of pending_events.
19425 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19427         Improve loops in file-notify-test06-many-events
19429         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
19430         Use `read-event' pauses for the `write-file' loops; otherwise
19431         events are lost in inotify and gfilenotify cases.
19433 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19435         Handle more complex rename operation in kqueue
19437         * src/kqueue.c (pending_events): New variable.
19438         (kqueue_compare_dir_list): Handle more complex rename operation.
19439         (globals_of_kqueue): Initialize pending_events.
19441         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
19442         Adapt expected events in the `rename-file' case.
19443         (file-notify-test06-many-events-remote): Declare.
19445 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
19447         New test with a larger number of events
19449         * test/automated/file-notify-tests.el (file-notify--test-with-events):
19450         Make timeout heuristically depend on the number of events.
19452         (file-notify-test06-many-events): Use it for new test.
19454 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19456         Further fixes for kqueue
19458         * lisp/filenotify.el (file-notify-callback): Raise also event if
19459         directory name matches.
19460         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
19462         * src/kqueue.c (kqueue_generate_event): Use watch_object as
19463         argument instead of ident.  Remove callback argument.  Adapt
19464         callees.  Check actions whether they are monitored flags.
19466         * test/automated/file-notify-tests.el (file-notify--test-library):
19467         New defun.
19468         (file-notify-test00-availability, file-notify-test02-events)
19469         (file-notify-test04-file-validity)
19470         (file-notify-test05-dir-validity): Use it.
19471         (file-notify-test02-events, file-notify-test04-file-validity): Add
19472         `read-event' calls between different file actions, in order to
19473         give the backends a chance to rais an event.  Needed especially
19474         for kqueue.  In case of deleting a directory, there are two
19475         `deleted' events.
19477 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19479         Code cleanup of kqueue.c
19481         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
19482         (kqueue_compare_dir_list): Do not loop when calling
19483         directory_files_internal.  Remove checks for "." and "..", this is
19484         done in kqueue_directory_listing now.
19485         (Fkqueue_add_watch): Check for proper emacs_open flags.
19487 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19489         Doc changes for kqueue
19491         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
19492         Fix some glitches in the example.
19494 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19496         Finish implementation in kqueue.c
19498         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
19499         Simplify access to list.
19500         (kqueue_compare_dir_list): Simplify access to list.  Raise
19501         `delete' event if directory does not exist any longer.  Otherwise,
19502         wait until directory contents has changed.  Fix error in check.
19504 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19506         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
19508 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19510         More work on kqueue
19512         * lisp/filenotify.el (file-notify-callback): Handle also the
19513         `rename' event from kqueue.
19514         (file-notify-add-watch): Do not register an entry twice.
19516         * src/kqueue.c (kqueue_directory_listing): New function.
19517         (kqueue_generate_event): New argument FILE1.  Adapt callees.
19518         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
19520 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19522         Implement directory events
19524         * lisp/filenotify.el (file-notify-handle-event)
19525         (file-notify-callback): Remove traces.
19527         * src/kqueue.c: Include <sys/time.h>.
19528         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
19529         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
19530         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
19531         Compute initial directory listing.  Close file descriptor in case
19532         of errors.
19533         (syms_of_kqueue): Declare Qcreate.
19535 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
19537         Build fixes for kqueue support
19539         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
19540         flag.
19542         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
19543         kqueue on *BSD.
19545 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19547         Continue kqueue implementation
19549         * lisp/filenotify.el (file-notify-handle-event)
19550         (file-notify-callback): Enable trace messages.
19552         * src/kqueue.c: Include also <sys/types.h>.
19553         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
19554         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
19555         (syms_of_kqueue): Add them.
19557 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19559         Work on kqueue
19561         * lisp/filenotify.el (file-notify--library)
19562         (file-notify-descriptors, file-notify-callback)
19563         (file-notify-add-watch, file-notify-rm-watch)
19564         (file-notify-valid-p): Add kqueue support.
19566         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
19568 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
19570         Add kqueue support
19572         * configure.ac (--with-file-notification): Add kqueue.
19573         (top): Remove special test for "${HAVE_NS}" and
19574         ${with_file_notification}, this is handled inside gfilenotify
19575         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
19576         instead of library specific variables.
19578         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
19580         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
19582         * src/kqueue.c: New file.
19584         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
19586 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
19588         Update elisp-mode-tests for changed file location.
19590          * test/lisp/progmodes/elisp-mode-tests.el:
19592 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
19594         Exclude manual tests from Makefile
19596          * test/Makefile.in:
19598 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
19600         Move package test files to new directory.
19602          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
19603          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
19605 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
19607         Restore delete Makefiles and fix .gitignore.
19609          * .gitignore: Update Makefiles to changed locations
19610          * test/lisp/progmodes/flymake-resources/Makefile,
19611            test/manual/etags/Makefile,
19612            test/manual/etags/make-src/Makefile,
19613            test/manual/indent/Makefile: Restored and moved to new location.
19615 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
19617         Test infrastructure: updates after directory move
19619          * (test/Makefile.in): Support directories several levels deep.
19620          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
19621          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
19623 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
19625         Rename all test files to reflect source layout.
19627          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
19628            test directory moves.
19629          * test/file-organisation.org: New file.
19630          * test/automated/Makefile.in
19631            test/automated/data/decompress/foo.gz
19632            test/automated/data/epg/pubkey.asc
19633            test/automated/data/epg/seckey.asc
19634            test/automated/data/files-bug18141.el.gz
19635            test/automated/data/flymake/test.c
19636            test/automated/data/flymake/test.pl
19637            test/automated/data/package/archive-contents
19638            test/automated/data/package/key.pub
19639            test/automated/data/package/key.sec
19640            test/automated/data/package/multi-file-0.2.3.tar
19641            test/automated/data/package/multi-file-readme.txt
19642            test/automated/data/package/newer-versions/archive-contents
19643            test/automated/data/package/newer-versions/new-pkg-1.0.el
19644            test/automated/data/package/newer-versions/simple-single-1.4.el
19645            test/automated/data/package/package-test-server.py
19646            test/automated/data/package/signed/archive-contents
19647            test/automated/data/package/signed/archive-contents.sig
19648            test/automated/data/package/signed/signed-bad-1.0.el
19649            test/automated/data/package/signed/signed-bad-1.0.el.sig
19650            test/automated/data/package/signed/signed-good-1.0.el
19651            test/automated/data/package/signed/signed-good-1.0.el.sig
19652            test/automated/data/package/simple-depend-1.0.el
19653            test/automated/data/package/simple-single-1.3.el
19654            test/automated/data/package/simple-single-readme.txt
19655            test/automated/data/package/simple-two-depend-1.1.el
19656            test/automated/abbrev-tests.el
19657            test/automated/auto-revert-tests.el
19658            test/automated/calc-tests.el
19659            test/automated/icalendar-tests.el
19660            test/automated/character-fold-tests.el
19661            test/automated/comint-testsuite.el
19662            test/automated/descr-text-test.el
19663            test/automated/electric-tests.el
19664            test/automated/cl-generic-tests.el
19665            test/automated/cl-lib-tests.el
19666            test/automated/eieio-test-methodinvoke.el
19667            test/automated/eieio-test-persist.el
19668            test/automated/eieio-tests.el
19669            test/automated/ert-tests.el
19670            test/automated/ert-x-tests.el
19671            test/automated/generator-tests.el
19672            test/automated/let-alist.el
19673            test/automated/map-tests.el
19674            test/automated/advice-tests.el
19675            test/automated/package-test.el
19676            test/automated/pcase-tests.el
19677            test/automated/regexp-tests.el
19678            test/automated/seq-tests.el
19679            test/automated/subr-x-tests.el
19680            test/automated/tabulated-list-test.el
19681            test/automated/thunk-tests.el
19682            test/automated/timer-tests.el
19683            test/automated/epg-tests.el
19684            test/automated/eshell.el
19685            test/automated/faces-tests.el
19686            test/automated/file-notify-tests.el
19687            test/automated/auth-source-tests.el
19688            test/automated/gnus-tests.el
19689            test/automated/message-mode-tests.el
19690            test/automated/help-fns.el
19691            test/automated/imenu-test.el
19692            test/automated/info-xref.el
19693            test/automated/mule-util.el
19694            test/automated/isearch-tests.el
19695            test/automated/json-tests.el
19696            test/automated/bytecomp-tests.el
19697            test/automated/coding-tests.el
19698            test/automated/core-elisp-tests.el
19699            test/automated/decoder-tests.el
19700            test/automated/files.el
19701            test/automated/font-parse-tests.el
19702            test/automated/lexbind-tests.el
19703            test/automated/occur-tests.el
19704            test/automated/process-tests.el
19705            test/automated/syntax-tests.el
19706            test/automated/textprop-tests.el
19707            test/automated/undo-tests.el
19708            test/automated/man-tests.el
19709            test/automated/completion-tests.el
19710            test/automated/dbus-tests.el
19711            test/automated/newsticker-tests.el
19712            test/automated/sasl-scram-rfc-tests.el
19713            test/automated/tramp-tests.el
19714            test/automated/obarray-tests.el
19715            test/automated/compile-tests.el
19716            test/automated/elisp-mode-tests.el
19717            test/automated/f90.el
19718            test/automated/flymake-tests.el
19719            test/automated/python-tests.el
19720            test/automated/ruby-mode-tests.el
19721            test/automated/subword-tests.el
19722            test/automated/replace-tests.el
19723            test/automated/simple-test.el
19724            test/automated/sort-tests.el
19725            test/automated/subr-tests.el
19726            test/automated/reftex-tests.el
19727            test/automated/sgml-mode-tests.el
19728            test/automated/tildify-tests.el
19729            test/automated/thingatpt.el
19730            test/automated/url-future-tests.el
19731            test/automated/url-util-tests.el
19732            test/automated/add-log-tests.el
19733            test/automated/vc-bzr.el
19734            test/automated/vc-tests.el
19735            test/automated/xml-parse-tests.el
19736            test/BidiCharacterTest.txt
19737            test/biditest.el
19738            test/cedet/cedet-utests.el
19739            test/cedet/ede-tests.el
19740            test/cedet/semantic-ia-utest.el
19741            test/cedet/semantic-tests.el
19742            test/cedet/semantic-utest-c.el
19743            test/cedet/semantic-utest.el
19744            test/cedet/srecode-tests.el
19745            test/cedet/tests/test.c
19746            test/cedet/tests/test.el
19747            test/cedet/tests/test.make
19748            test/cedet/tests/testdoublens.cpp
19749            test/cedet/tests/testdoublens.hpp
19750            test/cedet/tests/testfriends.cpp
19751            test/cedet/tests/testjavacomp.java
19752            test/cedet/tests/testnsp.cpp
19753            test/cedet/tests/testpolymorph.cpp
19754            test/cedet/tests/testspp.c
19755            test/cedet/tests/testsppcomplete.c
19756            test/cedet/tests/testsppreplace.c
19757            test/cedet/tests/testsppreplaced.c
19758            test/cedet/tests/testsubclass.cpp
19759            test/cedet/tests/testsubclass.hh
19760            test/cedet/tests/testtypedefs.cpp
19761            test/cedet/tests/testvarnames.c
19762            test/etags/CTAGS.good
19763            test/etags/ETAGS.good_1
19764            test/etags/ETAGS.good_2
19765            test/etags/ETAGS.good_3
19766            test/etags/ETAGS.good_4
19767            test/etags/ETAGS.good_5
19768            test/etags/ETAGS.good_6
19769            test/etags/a-src/empty.zz
19770            test/etags/a-src/empty.zz.gz
19771            test/etags/ada-src/2ataspri.adb
19772            test/etags/ada-src/2ataspri.ads
19773            test/etags/ada-src/etags-test-for.ada
19774            test/etags/ada-src/waroquiers.ada
19775            test/etags/c-src/a/b/b.c
19776            test/etags/c-src/abbrev.c
19777            test/etags/c-src/c.c
19778            test/etags/c-src/dostorture.c
19779            test/etags/c-src/emacs/src/gmalloc.c
19780            test/etags/c-src/emacs/src/keyboard.c
19781            test/etags/c-src/emacs/src/lisp.h
19782            test/etags/c-src/emacs/src/regex.h
19783            test/etags/c-src/etags.c
19784            test/etags/c-src/exit.c
19785            test/etags/c-src/exit.strange_suffix
19786            test/etags/c-src/fail.c
19787            test/etags/c-src/getopt.h
19788            test/etags/c-src/h.h
19789            test/etags/c-src/machsyscalls.c
19790            test/etags/c-src/machsyscalls.h
19791            test/etags/c-src/sysdep.h
19792            test/etags/c-src/tab.c
19793            test/etags/c-src/torture.c
19794            test/etags/cp-src/MDiagArray2.h
19795            test/etags/cp-src/Range.h
19796            test/etags/cp-src/burton.cpp
19797            test/etags/cp-src/c.C
19798            test/etags/cp-src/clheir.cpp.gz
19799            test/etags/cp-src/clheir.hpp
19800            test/etags/cp-src/conway.cpp
19801            test/etags/cp-src/conway.hpp
19802            test/etags/cp-src/fail.C
19803            test/etags/cp-src/functions.cpp
19804            test/etags/cp-src/screen.cpp
19805            test/etags/cp-src/screen.hpp
19806            test/etags/cp-src/x.cc
19807            test/etags/el-src/TAGTEST.EL
19808            test/etags/el-src/emacs/lisp/progmodes/etags.el
19809            test/etags/erl-src/gs_dialog.erl
19810            test/etags/f-src/entry.for
19811            test/etags/f-src/entry.strange.gz
19812            test/etags/f-src/entry.strange_suffix
19813            test/etags/forth-src/test-forth.fth
19814            test/etags/html-src/algrthms.html
19815            test/etags/html-src/index.shtml
19816            test/etags/html-src/software.html
19817            test/etags/html-src/softwarelibero.html
19818            test/etags/lua-src/allegro.lua
19819            test/etags/objc-src/PackInsp.h
19820            test/etags/objc-src/PackInsp.m
19821            test/etags/objc-src/Subprocess.h
19822            test/etags/objc-src/Subprocess.m
19823            test/etags/objcpp-src/SimpleCalc.H
19824            test/etags/objcpp-src/SimpleCalc.M
19825            test/etags/pas-src/common.pas
19826            test/etags/perl-src/htlmify-cystic
19827            test/etags/perl-src/kai-test.pl
19828            test/etags/perl-src/yagrip.pl
19829            test/etags/php-src/lce_functions.php
19830            test/etags/php-src/ptest.php
19831            test/etags/php-src/sendmail.php
19832            test/etags/prol-src/natded.prolog
19833            test/etags/prol-src/ordsets.prolog
19834            test/etags/ps-src/rfc1245.ps
19835            test/etags/pyt-src/server.py
19836            test/etags/tex-src/gzip.texi
19837            test/etags/tex-src/nonewline.tex
19838            test/etags/tex-src/testenv.tex
19839            test/etags/tex-src/texinfo.tex
19840            test/etags/y-src/atest.y
19841            test/etags/y-src/cccp.c
19842            test/etags/y-src/cccp.y
19843            test/etags/y-src/parse.c
19844            test/etags/y-src/parse.y
19845            test/indent/css-mode.css
19846            test/indent/js-indent-init-dynamic.js
19847            test/indent/js-indent-init-t.js
19848            test/indent/js-jsx.js
19849            test/indent/js.js
19850            test/indent/latex-mode.tex
19851            test/indent/modula2.mod
19852            test/indent/nxml.xml
19853            test/indent/octave.m
19854            test/indent/pascal.pas
19855            test/indent/perl.perl
19856            test/indent/prolog.prolog
19857            test/indent/ps-mode.ps
19858            test/indent/ruby.rb
19859            test/indent/scheme.scm
19860            test/indent/scss-mode.scss
19861            test/indent/sgml-mode-attribute.html
19862            test/indent/shell.rc
19863            test/indent/shell.sh
19864            test/redisplay-testsuite.el
19865            test/rmailmm.el
19866            test/automated/buffer-tests.el
19867            test/automated/cmds-tests.el
19868            test/automated/data-tests.el
19869            test/automated/finalizer-tests.el
19870            test/automated/fns-tests.el
19871            test/automated/inotify-test.el
19872            test/automated/keymap-tests.el
19873            test/automated/print-tests.el
19874            test/automated/libxml-tests.el
19875            test/automated/zlib-tests.el: Files Moved.
19877 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
19879         Rework file notifications, kqueue has problems with directory monitors
19881         * lisp/filenotify.el (file-notify-add-watch): Call the native
19882         add-watch function on the file, not on the dir.
19884         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
19885         about already deleted entries.
19887         * test/automated/auto-revert-tests.el
19888         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
19889         since this deletes the target file first.
19891         * test/automated/file-notify-tests.el (file-notify--test-event-test):
19892         Make stronger checks.
19893         (file-notify-test01-add-watch, file-notify-test02-events)
19894         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
19895         Rewrite in order to call file monitors but directory monitors.
19896         (file-notify-test06-many-events): Ler rename work in both directions.
19898 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
19900         Continie with pending events
19902         * src/kqueue.c (pending_events): Remove global variable.
19903         (kqueue_compare_dir_list): Create `write' event for not used
19904         pending events.
19905         (globals_of_kqueue): Remove initialization of pending_events.
19907 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
19909         Improve loops in file-notify-test06-many-events
19911         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
19912         Use `read-event' pauses for the `write-file' loops; otherwise
19913         events are lost in inotify and gfilenotify cases.
19915 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
19917         Handle more complex rename operation in kqueue
19919         * src/kqueue.c (pending_events): New variable.
19920         (kqueue_compare_dir_list): Handle more complex rename operation.
19921         (globals_of_kqueue): Initialize pending_events.
19923         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
19924         Adapt expected events in the `rename-file' case.
19925         (file-notify-test06-many-events-remote): Declare.
19927 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
19929         New test with a larger number of events.
19931         * test/automated/file-notify-tests.el (file-notify--test-with-events):
19932         Make timeout heuristically depend on the number of events.
19934         (file-notify-test06-many-events): Use it for new test.
19936 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
19938         Further fixes for kqueue.
19940         * lisp/filenotify.el (file-notify-callback): Raise also event if
19941         directory name matches.
19942         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
19944         * src/kqueue.c (kqueue_generate_event): Use watch_object as
19945         argument instead of ident.  Remove callback argument.  Adapt
19946         callees.  Check actions whether they are monitored flags.
19948         * test/automated/file-notify-tests.el (file-notify--test-library):
19949         New defun.
19950         (file-notify-test00-availability, file-notify-test02-events)
19951         (file-notify-test04-file-validity)
19952         (file-notify-test05-dir-validity): Use it.
19953         (file-notify-test02-events, file-notify-test04-file-validity): Add
19954         `read-event' calls between different file actions, in order to
19955         give the backends a chance to rais an event.  Needed especially
19956         for kqueue.  In case of deleting a directory, there are two
19957         `deleted' events.
19959 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
19961         Code cleanup of kqueue.c
19963         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
19964         (kqueue_compare_dir_list): Do not loop when calling
19965         directory_files_internal.  Remove checks for "." and "..", this is
19966         done in kqueue_directory_listing now.
19967         (Fkqueue_add_watch): Check for proper emacs_open flags.
19969 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
19971         Doc changes for kqueue
19973         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
19974         Fix some glitches in the example.
19976 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
19978         Finish implementation in kqueue.c
19980         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
19981         Simplify access to list.
19982         (kqueue_compare_dir_list): Simplify access to list.  Raise
19983         `delete' event if directory does not exist any longer.  Otherwise,
19984         wait until directory contents has changed.  Fix error in check.
19986 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
19988         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
19990 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
19992         More work on kqueue
19994         * lisp/filenotify.el (file-notify-callback): Handle also the
19995         `rename' event from kqueue.
19996         (file-notify-add-watch): Do not register an entry twice.
19998         * src/kqueue.c (kqueue_directory_listing): New function.
19999         (kqueue_generate_event): New argument FILE1.  Adapt callees.
20000         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
20002 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
20004         Implement directory events
20006         * lisp/filenotify.el (file-notify-handle-event)
20007         (file-notify-callback): Remove traces.
20009         * src/kqueue.c: Include <sys/time.h>.
20010         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
20011         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
20012         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
20013         Compute initial directory listing.  Close file descriptor in case
20014         of errors.
20015         (syms_of_kqueue): Declare Qcreate.
20017 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
20019         Build fixes for kqueue support.
20021         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
20022         flag.
20024         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
20025         kqueue on *BSD.
20027 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
20029         Continue kqueue implementation
20031         * lisp/filenotify.el (file-notify-handle-event)
20032         (file-notify-callback): Enable trace messages.
20034         * src/kqueue.c: Include also <sys/types.h>.
20035         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
20036         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
20037         (syms_of_kqueue): Add them.
20039 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
20041         Work on kqueue
20043         * lisp/filenotify.el (file-notify--library)
20044         (file-notify-descriptors, file-notify-callback)
20045         (file-notify-add-watch, file-notify-rm-watch)
20046         (file-notify-valid-p): Add kqueue support.
20048         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
20050 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
20052         Add kqueue support
20054         * configure.ac (--with-file-notification): Add kqueue.
20055         (top): Remove special test for "${HAVE_NS}" and
20056         ${with_file_notification}, this is handled inside gfilenotify
20057         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
20058         instead of library specific variables.
20060         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
20062         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
20064         * src/kqueue.c: New file.
20066         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
20068 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
20070         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
20072         * verilog-mode.el (verilog-save-font-no-change-functions):
20073         Commentary and fix pre-Emacs 21 behavior.
20075 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
20077         Use obarray functions from obarray.
20079         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
20080           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
20081           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
20082           delegate to obarray.el functions.
20083         * lisp/loadup.el: load obarray before abbrev
20084         * test/automated/abbrev-tests.el: new tests
20086 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
20088         epa.el: Add option to replace original text
20090         * lisp/epa.el (epa-replace-original-text): New user option.
20091         (Bug#21947)
20093 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
20095         Add interactive seek command.
20097         * lisp/mpc.el (mpc-cmd-seekcur): New function.
20098         (mpc-seek-current): New command.
20099         (mpc-mode-menu): Add entry for mpc-seek-current
20100         (mpc-mode-map): Bind mpc-seek-current to "g"
20102 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
20104         Fix issue where a new tempfile was created every refresh
20106         * lisp/mpc.el (mpc-format): Leave dir as relative path
20108 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
20110         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
20112         (c-save-buffer-state): Use with-silent-modifications when available.
20113         (c--macroexpand-all): Check macroexpand-all directly rather than
20114         c--mapcan-status.
20116 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
20118         * lisp/loadup.el: Set max-lisp-eval-depth here
20120         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
20121         (BYTE_COMPILE_FLAGS): Adjust accordingly.
20123 2015-11-17  João Távora  <joaotavora@gmail.com>
20125         Minor fix to comment indentation and typo in last commit
20127         * linum.el (linum-update-window): Fix comment indentation and a
20128         typo.
20130 2015-11-17  João Távora  <joaotavora@gmail.com>
20132         linum-mode plays more nicely with other margin-setting extensions
20134         linum.el will only modify the left margin if it needs to, and will
20135         only reset the it back to 0 if it guesses that no-one has touched that
20136         margin in the meantime.
20138         As such, this is a more of a workaround than an actual fix, but fixes
20139         the problems described in bug#20674 regarding the interaction with
20140         modes such as darkroom-mode and olivetti-mode.
20142         A similar fix was commited to nlinum.el in ELPA.git's
20143         e7f5f549fbfb740b911fb7f33b42381ecece56d8
20145         * linum.el (linum-delete-overlays): Restore margins more
20146         criteriously.
20147         (linum-update-window): Set margins more criteriously.
20149 2015-11-16  Daiki Ueno  <ueno@gnu.org>
20151         * lisp/image-mode.el: Support encrypted file
20153         (image-toggle-display-image): Read content from the buffer instead
20154         of the file, if the buffer holds a decrypted data.  (Bug#21870)
20156 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
20158         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
20160 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
20162         * lisp/emacs-lisp/package.el: Fix a decoding issue
20164         (package--with-response-buffer): Use `url-insert-buffer-contents'.
20165         The previous code had some issues with decoding. Refactoring that
20166         function allows us to use the decoding from url-handlers while still
20167         treating both sync and async requests the same.
20169         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
20170         `url-insert-buffer-contents'.
20171         (url-insert-buffer-contents): New function
20173 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
20175         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
20177         (verilog-save-buffer-state): Use with-silent-modifications when available.
20178         (verilog-save-font-no-change-functions): Don't bind
20179         before/after-change-functions if it's not needed.
20181 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
20183         * CONTRIBUTE: Remove information about feature freeze.
20185         Merge branch 'release-process-lowercase'
20187 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
20189         Document the release process
20191         * admin/notes/versioning: Add information about RC releases.
20192         * admin/release-process: Document the release process.
20193         * admin/authors.el (authors-ignored-files):
20194         * admin/README: Change FOR-RELEASE to release-process.
20195         * CONTRIBUTE:
20196         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
20198 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
20200         * admin/release-process: Rename from admin/FOR-RELEASE.
20202 2015-11-14  David Engster  <deng@randomsample.de>
20204         gitmerge: Fix git log command
20206         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
20207         only want commits from the branch that is to be merged.
20208         (gitmerge-setup-log-buffer): Use the same symmetric range as in
20209         `gitmerge-missing'.
20211 2015-11-14  David Engster  <deng@randomsample.de>
20213         gitmerge: Try to detect cherry-picks
20215         * admin/gitmerge.el (gitmerge-default-branch): Change to
20216         origin/emacs-25.
20217         (gitmerge-missing): Use symmetric difference ('...') between
20218         branch and master so that cherry-picks can be detected.
20220 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
20222         Increment Emacs version on master branch
20224         * lisp/cus-edit.el (customize-changed-options-previous-release):
20225         Increase previous version to 24.5.
20227         * configure.ac:
20228         * msdos/sed2v2.inp: Bump version to 25.1.50.
20230 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
20232         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
20233         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
20234         * README: Mention CONTRIBUTE.
20236 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
20238         Update verilog-mode.el to 2015-11-09-b121d60-vpo
20240         * verilog-mode.el (verilog-auto, verilog-delete-auto)
20241         (verilog-modi-cache-results, verilog-save-buffer-state)
20242         (verilog-save-font-no-change-functions): When internally suppressing
20243         change functions, use `inhibit-modification-hooks' and call
20244         `after-change-funtions' to more nicely work with user hooks.
20245         Reported by Stefan Monnier.
20246         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
20247         Create `verilog-delete-auto-buffer' to avoid double-calling
20248         fontification hooks.
20249         (verilog-restore-buffer-modified-p, verilog-auto)
20250         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
20251         set-buffer-modified-p.  Reported by Stefan Monnier.
20252         (verilog-diff-auto, verilog-diff-buffers-p)
20253         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
20254         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
20255         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
20256         by Amol Nagapurkar.
20257         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
20258         properties inside internal structures.  No functional change
20259         intended.
20261 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
20263         Use generic dispatch for xref backends
20265         * lisp/progmodes/xref.el (xref-backend-functions):
20266         New variable.
20267         (xref-find-function): Remove.
20268         (xref-find-backend)
20269         (xref--etags-backend): New functions.
20270         (xref-identifier-at-point-function)
20271         (xref-identifier-completion-table-function): Remove.
20272         (xref-backend-definitions, xref-backend-references)
20273         (xref-backend-apropos, xref-backend-identifier-at-point)
20274         (xref-backend-identifier-completion-table):
20275         New generic functions.
20277         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
20278         Add `elisp--xref-backend' to the beginning of
20279         `xref-backend-functions', locally.  Delete references to
20280         removed functions and vars.
20281         (elisp-xref-find): Remove.
20282         (elisp--xref-backend): New function.
20283         (elisp--xref-find-references, elisp--xref-find-apropos)
20284         (elisp--xref-identifier-completion-table):
20285         Turn into appropriately named generic methods.
20287         * lisp/progmodes/etags.el (etags-xref-find): Remove.
20288         (xref-backend-identifier-completion-table)
20289         (xref-backend-references, xref-backend-definitions)
20290         (xref-backend-apropos): New generic methods.
20292 2015-11-13  Juri Linkov  <juri@linkov.net>
20294         Support rectangular regions for more commands
20296         * lisp/simple.el (region-extract-function): Handle the arg
20297         value ‘bounds’.
20298         (region-insert-function): New function.
20299         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
20300         If non-nil, operate on multiple chunks.
20301         (region-noncontiguous-p): New function.
20303         * lisp/rect.el: Add function rectangle--insert-region
20304         around region-insert-function.
20305         (extract-rectangle-bounds): New function.
20306         (rectangle--extract-region): Handle the arg value ‘bounds’.
20307         (rectangle--insert-region): New function.
20309         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
20310         around region-insert-function.
20311         (cua--extract-rectangle-bounds): New function.
20312         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
20314         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
20315         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
20316         (query-replace-regexp-eval, map-query-replace-regexp)
20317         (replace-string, replace-regexp): Use ‘use-region-p’.
20318         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
20319         (perform-replace): Add arg ‘region-noncontiguous-p’.
20320         If non-nil, operate on multiple chunks.
20322         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
20323         If non-nil, operate on multiple chunks.  (Bug#19829)
20325 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
20327         Handle multiple matches on the same line; add highlighting
20329         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
20330         column value in characters.
20331         (xref--collect-matches): Rename from `xref--collect-match'.
20332         Search for all matches in the hit line.  Add `highlight' face to
20333         the matched region in the summary.  Update both callers.
20335 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
20337         Replace xref-match-bounds with xref-match-length
20339         Relying on xref-location-marker to point to the beginning of the match
20341         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
20342         (xref-match-length): Add.
20343         (xref-make-match): Change the arguments.
20344         (xref--match-buffer-bounds): Remove.
20345         (xref-match-item): Store length, instead of end-column.
20346         (xref-pulse-momentarily)
20347         (xref--collect-match)
20348         (xref--query-replace-1): Update accordingly.
20349         (xref-query-replace): Ditto.  And check that the search results
20350         are up-to-date.
20352 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
20354         Merge from gnulib
20356         This incorporates:
20357         2015-11-13 xalloc-oversized: improve performance with GCC 5
20358         * lib/xalloc-oversized.h: Copy from gnulib.
20360 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
20362         Spruce up ftfont.c memory allocation
20364         * src/ftfont.c (setup_otf_gstring):
20365         Avoid O(N**2) behavior when reallocating.
20366         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
20367         reallocating buffers; this simplifies the code.  Do not trust
20368         mflt_run to leave the output areas unchanged on failure, as
20369         this isn’t part of its interface spec.
20371 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
20373         Port recent XCB changes to 64-bit ‘long int’
20375         For historical reasons, libX11 represents 32-bit values like Atoms as
20376         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
20377         do that, so adapt the recent XCB code to behave properly on 64-bit
20378         platforms.  Also, fix what appears to be a bug in the interpretation
20379         of xcb_get_property_value_length, at least on my Fedora platform
20380         which is running libxcb-1.11-5.fc21.
20381         * src/xfns.c (x_real_pos_and_offsets):
20382         * src/xterm.c (get_current_wm_state):
20383         xcb_get_property_value_length returns a byte count, not a word count.
20384         For 32-bit quantities, xcb_get_property_value returns a vector
20385         of 32-bit words, not of (possibly 64-bit) long int.
20387 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
20389         * src/undo.c (run_undoable_change): Now static.
20391 2016-01-30  Michael Albinus  <michael.albinus@gmx.de>
20393         Adapt Tramp version, do not merge with master
20395         * doc/misc/trampver.texi (trampver):
20396         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
20398 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
20400         Remove support for ':timeout' from w32 tray notifications
20402         * src/w32fns.c (Fw32_notification_notify): Delete the code that
20403         supports ':timeout'.
20404         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
20405         with dbusbind.c when D-Bus is compiled in.
20407         * doc/lispref/os.texi (Desktop Notifications): Don't mention
20408         ':timeout'.
20410 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
20412         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
20413         (simple-test--transpositions): New macro.
20414         (simple-transpose-subr): New test.
20416 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
20418         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
20420 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
20422         * src/undo.c: Small fixes for previous change
20423         (run_undoable_change): Mark void argument list.
20424         (record_property_change): Remove unused variable `boundary'.
20426 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
20428         Add a few more variables to redisplay--variables
20430         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
20431         and bidi-display-reordering to the list.
20433 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
20435         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
20437 2015-11-13  Eli Barzilay  <eli@barzilay.org>
20439         Fix point positioning after transposing with negative arg
20441         * lisp/simple.el (transpose-subr): When invoked with a negative
20442         argument, move point to after the transposed text, like we do
20443         when invoked with a positive argument.  (Bug#21885)
20445 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
20447         Fix last change in shr.el
20449         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
20450         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
20452 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
20454         Fix last change
20456         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
20457         Don't DEFSYM tray notification symbols if D-Bus is being used.
20459 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
20461         Another fix for MinGW64 and Cygwin builds due to notifications
20463         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
20464         being compiled into Emacs.
20465         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
20466         Sw32_notification_notify and Sw32_notification_close if the code
20467         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
20469 2016-01-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20470 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20472         Remove intern calls and XXX comments from Fx_export_frames
20474         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
20475         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
20476         for consistency with image types.  Remove XXX comments.
20477         (syms_of_xfns) <Qpdf>: DEFSYM it.
20479 2016-01-30  Eric Hanchrow  <eric.hanchrow@gmail.com>
20480 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
20482         shr: don't invoke unbound function (Bug#21895)
20484         * lisp/net/shr.el (have-fringes-p): New function.
20485         (shr-insert-document, shr-fill-text): Use it.
20487 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
20489         * test/automated/keymap-tests.el: Fix test to make it repeatable
20491         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
20492         entry to its initial value to make the test repeatable in interactive
20493         sessions (assuming it doesn't fail and crashes Emacs, of course).
20495 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
20497         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
20499 2016-01-30  Phillip Lord  <phillip.lord@russet.org.uk>
20501         : Tests for undo-auto functionality.
20502 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
20504         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
20505         Small fix.
20507 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
20509         The heuristic that Emacs uses to add an `undo-boundary' has been
20510         reworked, as it interacts poorly with functions on `post-command-hook'
20511         or `after-change-functions'.
20513         * lisp/simple.el: New section added.
20514         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
20515         (self_insert_command): Calls simple.el to amalgamate.
20516         (delete_char): Calls simple.el to amalgamate.
20517         * src/keyboard.c (last_undo_boundary): Removed.
20518         * src/undo.c (run_undoable_change): New function.
20520 2015-11-12  Juri Linkov  <juri@linkov.net>
20522         Bind [?\S-\ ] to previous line command in Dired-like modes.
20524         * lisp/arc-mode.el (archive-mode-map):
20525         * lisp/dired.el (dired-mode-map):
20526         * lisp/proced.el (proced-mode-map):
20527         * lisp/vc/vc-dir.el (vc-dir-mode-map):
20528         Bind [?\S-\ ] to previous line command.
20529         (Bug#20790)
20531 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
20533         Fix the MinGW64 and Cygwin-w32 builds
20535         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
20536         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
20537         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
20538         which cause trouble with MinGW42 headers.  Ifdef away tray
20539         notifications code for Cygwin.  Reported by Andy Moreton
20540         <andrewjmoreton@gmail.com>.
20542 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
20544         Enable sorting of JSON object keys when encoding
20546         * lisp/json.el (json-encoding-object-sort-predicate): New variable
20547         for specifying a sorting predicate for JSON objects during encoding.
20548         (json--plist-to-alist): New utility function.
20549         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
20550         are to be sorted.
20551         (json-encode-alist): Sort output by
20552         `json-encoding-object-sort-predicate, when set.
20553         (json-encode-plist): Re-use `json-encode-alist' when object keys are
20554         to be sorted.
20555         (json-pretty-print-buffer-ordered): New command to pretty print the
20556         buffer with object keys sorted alphabetically.
20557         (json-pretty-print-ordered): New command to pretty print the region
20558         with object keys sorted alphabetically.
20560         * test/automated/json-tests.el (test-json-plist-to-alist)
20561         (test-json-encode-plist, test-json-encode-hash-table)
20562         (test-json-encode-alist-with-sort-predicate)
20563         (test-json-encode-plist-with-sort-predicate): New tests.
20565         * etc/NEWS: Add an entry for the new commands.
20567 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
20569         * test/automated/keymap-tests.el: New test file.
20571 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
20573         Speed up x_real_pos_and_offsets using XCB
20575         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
20576         all X calls, and pipeline requests when possible, collecting results
20577         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
20579 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
20581         Enable use of XCB for checking window manager state
20583         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
20584         of XGetWindowProperty plus error-catching, since we can explicitly
20585         check for errors in the XCB version.  This eliminates 3 XSync calls on
20586         top of the round-trip actually fetching the information.
20588 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
20590         Detect XCB and save a connection handle
20592         * configure.ac: If using X11, check for XCB libraries and header.
20593         * src/Makefile.in (XCB_LIBS): Define.
20594         (LIBX_EXTRA): Include it.
20596         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
20597         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
20598         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
20600 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
20602         Reduce some data dependencies between X calls
20604         Gains nothing in the traditional-Xlib code, but more closely aligns
20605         with how the XCB version will work.
20607         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
20608         send coordinates (0,0) to the X server and add in the real coordinates
20609         after getting the response.  Move XGetGeometry for outer window inside
20610         error-trapping block.  Use DPY variable more, since it's available.
20612 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
20614         Use color cache for creating bitmap
20616         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
20617         Set attributes to use the caching color allocator.  Initialize and
20618         free the cache.
20620 2015-11-12  Eli Barzilay  <eli@barzilay.org>
20622         Add "^" to the interactive specs of `dired-next/previous-line'
20624         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
20625         to bind these commands to the arrow keys, and that means that they work
20626         better with a "^" in the `interactive' declaration so selection works
20627         as expected.
20629 2016-01-30  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
20631         Sync with soap-client repository, version 3.0.2
20633         * lisp/net/soap-client.el: Bump version to 3.0.2.
20635         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
20637         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
20638         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
20640         * lisp/net/soap-client.el: Support Emacs versions that do not have
20641         define-error.
20643         * lisp/net/soap-inspect.el: Remove version header.
20645         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
20646 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
20648         Sync with soap-client repository, version 3.0.2
20650         * soap-client.el: Bump version to 3.0.2.
20652         * soap-client.el (soap-warning): Use format, not format-message.
20654         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
20655         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
20657         * soap-client.el: Support Emacs versions that do not have
20658         define-error.
20660         * soap-inspect.el: Remove version header.
20662         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
20663         format.
20665 2015-11-11  Alan Mackenzie  <acm@muc.de>
20667         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
20669         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
20670         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
20671         (c-guess-basic-syntax):
20672         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
20673         (c-get-fallback-scan-pos): "New" function (existed several years ago).
20674         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
20675         c-get-fallback-scan-pos.
20676         (c-parse-state-1): Handle 'BOD strategy.
20678         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
20679         (c-font-lock-fontify-region): Remove bindings of
20680         open-paren-in-column-0-is-defun-start to nil.
20682         * doc/misc/cc-mode.texi (Performance Issues)
20683         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
20685 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
20687         * lisp/obarray.el: Fix shadowed variables.
20688         (obarray-map, obarray-remove, obarray-put, obarray-get):
20689         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
20691 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
20693         Avoid error in submitting a form with EWW
20695         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
20696         CHUNK to be nil.  (Bug#21881)
20698 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
20700         Rename seq-p and map-p to seqp and mapp
20702         * lisp/emacs-lisp/seq.el (seqp): New name.
20703         * lisp/emacs-lisp/map.el (mapp): New name.
20704         * doc/lispref/sequences.texi: Update the documentation for seqp.
20705         * test/automated/map-tests.el: Update the tests for mapp.
20707 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
20709         Rename obarray-p to obarrayp
20711         * lisp/obarray.el (obarrayp): New name.
20712         * test/automated/obarray-tests.el: Update the tests.
20714 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
20716         Rename obarray-foreach to obarray-map
20718         * lisp/obarray.el (obarray-map): New name.
20719         * test/automated/obarray-tests.el: Update the corresponding tests.
20721 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
20723         New file with obarray functions.
20725         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
20726         * test/automated/obarray-tests.el: New file.
20728 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
20730         Implement tray notifications for MS-Windows
20732         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
20733         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
20734         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
20735         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
20736         (EMACS_NOTIFICATION_MSG): New macros.
20737         (NI_Severity): New enumeration.
20738         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
20739         (delete_tray_notification, Fw32_notification_notify)
20740         (Fw32_notification_close): New functions.
20741         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
20742         keywords used by w32-notification-notify.
20744         * doc/lispref/os.texi (Desktop Notifications): Describe the native
20745         w32 tray notifications.
20747 2016-01-30  Alan Mackenzie  <acm@muc.de>
20749         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
20751         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
20752         Windows" and new @defun selected-window-group.
20753         (Window Start and End): Describe new &optional parameter GROUP and
20754         ...-group-function for window-start, window-end, set-window-start, and
20755         pos-visible-in-window-p.
20756         (Textual Scrolling) Describe the same for recenter.
20757         doc/lispref/positions.texi (Screen Lines): Describe the same for
20758         move-to-window-line.
20760         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
20761         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
20762         new optional parameter "group".  At the beginning of each, check whether the
20763         corresponding ...-group-function is set to a function, and if so execute this
20764         function in place of the normal processing.
20765         (syms_of_window): Define symbols for the six new variables below.
20766         (window-start-group-function, window-end-group-function)
20767         (set-window-start-group-function, recenter-group-function)
20768         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
20769         New permanent local buffer local variables.
20770         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
20771         Fpos_visible_in_window_p.
20773         lisp/window.el (selected-window-group-function): New permanent local buffer
20774         local variable.
20775         (selected-window-group): New function.
20777         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
20778         enable, kill them at mode disable.  Add/remove follow-after-change to/from
20779         after-change-functions.
20780         (follow-start-end-invalid): New variable.
20781         (follow-redisplay): Manipulate follow-start-end-invalid.
20782         (follow-after-change, follow-window-start, follow-window-end)
20783         (follow-set-window-start, follow-pos-visible-in-window-p)
20784         (follow-move-to-window-line, follow-sit-for): New functions.
20786         lisp/isearch.el (isearch-call-message): New macro.
20787         (isearch-update, with-isearch-suspended, isearch-del-char)
20788         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
20789         (with-isearch-suspended): Rearrange code such that isearch-call-message is
20790         invoked before point is moved.
20791         (isearch-message): Add comment about where point must be at function call.
20792         (isearch-search): Remove call to isearch-message.
20793         (isearch-lazy-highlight-window-group): New variable.
20794         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
20795         the battery of tests to ...
20796         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
20797         Note: (sit-for 0) is still called.
20798         (isearch-lazy-highlight-update): Check membership of
20799         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
20800         property.
20801         (isearch-update, isearch-done, isearch-string-out-of-window)
20802         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
20803         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
20804         (isearch-lazy-highlight-update): Call the six amended primitives (see
20805         src/window.c above) with the new `group' argument set to t, to cooperate
20806         with Follow Mode.
20808 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
20810         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
20812         * lisp/net/tramp.el (tramp-handle-file-equal-p)
20813         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
20814         Harvey Chapman <hchapman@3gfp.com>.
20816         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
20817         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
20818         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
20819         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
20821 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
20823         * CONTRIBUTE: Encourage adding tests.
20825         Based on this post from John Wiegley:
20827           From: "John Wiegley" <johnw@newartisans.com>
20828           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
20829           To: Juanma Barranquero <lekktu@gmail.com>
20830           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
20831               emacs-devel <emacs-devel@gnu.org>
20832           Date: Wed, 28 Oct 2015 18:45:29 -0700
20833           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
20835           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
20837 2015-11-10  David Reitter  <david.reitter@gmail.com>
20839         Avoid creating notification objects when possible
20841         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
20842         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
20843         functions that do not require a notification object.  When needed,
20844         define NSWindowDidEnterFullScreenNotification to allow for compilation
20845         on OS X 10.6.8.
20847 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
20849         Move INTEGER_TO_CONS body out of .h file
20851         * src/data.c (INTBIG_TO_LISP): New macro, with most
20852         of the contents of the old INTEGER_TO_CONS.
20853         (intbig_to_lisp, uintbig_to_lisp): New functions.
20854         * src/lisp.h (INTEGER_TO_CONS):
20855         Simplify by using EXPR_SIGNED and the new functions.
20856         This shrinks code size a bit, and makes it easier to
20857         put a breakpoint on handling of large integers.
20859 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
20861         Merge from gnulib
20863         This incorporates:
20864         2015-11-10 intprops: new public macro EXPR_SIGNED
20865         2015-11-10 intprops: fix typo in clang port
20866         * lib/intprops.h: Copy from gnulib.
20868 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
20870         Spelling fixes
20872         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
20873         Fix misspelling in output.
20875 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
20877         * doc/lispref/variables.texi (Directory Local Variables):
20878         Document dir-locals wildcards.
20880         * lisp/files.el (dir-locals-file): Point to Info node.
20882         * doc/emacs/custom.texi (Directory Variables):
20883         Document dir-locals wildcards.
20885         * etc/NEWS: Document new functionality.
20887 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
20889         * lisp/files.el: Don't allow customization of dir-locals sorting.
20890         In retrospect, this is not a good idea for the same reason that
20891         `dir-locals-file' is a defconst, because it is important that this
20892         behavior be "uniform across different environments and users".
20893         Sure, the user can still change the sorting with a hack, but we
20894         shouldn't encourage them to change it.
20895         (dir-locals--all-files): Return list in the order returned by
20896         `file-expand-wildcards'.
20897         (file-expand-wildcards): Document the sorting predicate used.
20898         (dir-locals-sort-predicate): Delete variable.
20900 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
20902         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
20904         * lisp/isearch.el (search-default-regexp-mode): Change default value.
20906 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
20908         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
20909         `locate-dominating-file' will now keep looking if the files it finds in
20910         a given directory are unreadable (or not files).
20912 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
20914         * lisp/files.el (dir-locals-file): Allow wildcards.
20915         (dir-locals-find-file, dir-locals-collect-variables)
20916         (dir-locals-read-from-file): Update accordingly.
20917         (hack-dir-local-variables): Rename a local variable.
20919         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
20921         * lisp/help-fns.el (describe-variable): Update accordingly.
20923         * .gitignore: Add .dir-locals?.el.
20925 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
20927         * lisp/emacs-lisp/map.el (map-merge-with): New function.
20929         * test/automated/map-tests.el (test-map-merge-with): New test.
20931 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
20933         Fix some recently-perturbed bookmark autoloads
20935         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
20936         (bookmark-set): Restore autoload.
20937         (bookmark-set-no-overwrite): Add autoload.
20939         Thanks to Juanma Barranquero for noticing the autoload problems
20940         introduced by my recent commit adding/changing the above functions
20941         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
20943 2016-01-30  Noah Friedman  <friedman@splode.com>
20945         (ydump-buffer): Handle case where gap is at the start of buffer.
20946         I don't recall if older versions of gdb were less strict but you
20947         cannot dump a 0-length range in gdb 7.9.1.
20949 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
20950 2015-11-09  Noah Friedman  <friedman@splode.com>
20952         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
20953         the start of buffer.  I don't recall if older versions of gdb were
20954         less strict but you cannot dump a 0-length range in gdb 7.9.1.
20956 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
20958         * lisp/progmodes/project.el: Update Commentary.
20960         Merge branch 'project-next'
20962 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
20964         Fold `project-ask-user' into `project-current'
20966         * lisp/progmodes/project.el (project-find-functions): Remove
20967         `project-ask-user'.
20968 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
20970         Fold `project-ask-user' into `project-current'
20972         * lisp/progmodes/project.el (project-find-functions):
20973         Remove `project-ask-user'.
20974         (project-ask-user): Remove function and the corresponding
20975         `project-roots' implementation.
20976         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
20977         user in case there's no project in the current directory.  Update
20978         all callers.
20980 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
20982         When VC detects a conflict, specify which file
20984         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
20985         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
20986         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
20987         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
20988         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
20989           to display a standard message that specifies the conflicted file.
20991         Before this change, the message VC used for indicating a conflicted
20992         file was just "There are unresolved conflicts in this file" without
20993         naming the file (and this language was duplicated in several places).
20994         After this change, it's "There are unresolved conflicts in file FOO"
20995         (and this language is now centralized in one function in vc.el).
20997         Justification: It's important for the message to name the conflicted
20998         file because the moment when VC realizes a file is conflicted does not
20999         always come interactively.  For example, some people automatically
21000         find a set of Org Mode files on startup, and may keep those .org files
21001         under version control.  If any of the files are conflicted, the user
21002         just sees some messages fly by, and might later check the "*Messages*"
21003         buffer to find out what files were conflicted.  I'm not saying this
21004         happened to me or anything; it's a purely hypothetical example.
21006 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
21008         Fix assertion violation in define-key
21010         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
21011         objects.  Reported by Drew Adams <drew.adams@oracle.com>
21012         and Juanma Barranquero <lekktu@gmail.com>.
21014 2015-11-09  Dima Kogan  <dima@secretsauce.net>
21016         Fix a memory leak in GC of font cache
21018         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
21019         entities if some of the fonts it references are marked.  This
21020         plugs a memory leak.  (Bug#21556)
21022 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
21024         Use INT_ADD_WRAPV etc. to check integer overflow
21026         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
21027         * src/buffer.c (record_overlay_string, overlay_strings):
21028         * src/casefiddle.c (casify_object):
21029         * src/ccl.c (Fccl_execute_on_string):
21030         * src/character.c (char_width, c_string_width, lisp_string_width)
21031         (count_size_as_multibyte, string_escape_byte8):
21032         * src/coding.c (coding_alloc_by_realloc, produce_chars):
21033         * src/data.c (arith_driver):
21034         * src/dispnew.c (realloc_glyph_pool, init_display):
21035         * src/editfns.c (styled_format):
21036         * src/fns.c (Ffillarray):
21037         * src/ftfont.c (ftfont_shape_by_flt):
21038         * src/gnutls.c (gnutls_hex_string):
21039         * src/gtkutil.c (get_utf8_string):
21040         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
21041         * src/keymap.c (Fkey_description):
21042         * src/lisp.h (SAFE_ALLOCA_LISP):
21043         * src/term.c (encode_terminal_code):
21044         * src/tparam.c (tparam1):
21045         * src/xselect.c (x_property_data_to_lisp):
21046         * src/xsmfns.c (smc_save_yourself_CB):
21047         * src/xterm.c (x_term_init):
21048         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
21049         more-complicated code involving division and/or
21050         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
21051         subtraction and/or INT_ADD_OVERFLOW.
21052         * src/casefiddle.c (casify_object): Simplify multibyte size check.
21053         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
21054         * src/data.c (arith_driver): Also check for division overflow,
21055         as that’s now possible given that the accumulator can now contain
21056         any Emacs integer.
21057         * src/lisp.h (lisp_word_count): Remove; no longer used.
21059 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
21060 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
21062         Make sure that the ignore file exists
21064         * lisp/vc/vc.el (vc-default-ignore-completion-table):
21065         Make sure that the ignore file exists.
21067 2016-01-30  Michael Sperber  <mike@xemacs.org>
21069         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
21070 2015-11-08  Michael Sperber  <mike@xemacs.org>
21072         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
21073         `gnus-summary-delete-article` in a way that also works on XEmacs.
21075 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
21077         Add support for retrieving paths to JSON elements
21079         Add support for retrieving the path to a JSON element. This can for
21080         instance be useful to retrieve paths in deeply nested JSON
21081         structures.
21083         * lisp/json.el (json-pre-element-read-function)
21084         (json-post-element-read-function): New variables to hold pre- and post
21085         read callback functions for `json-read-array' and `json-read-object'.
21086         (json--path): New variable used internally by `json-path-to-position'.
21087         (json--record-path, json--check-position): New functions used
21088         internally by `json-path-to-position'.
21089         (json-path-to-position): New function for retrieving the path to a
21090         JSON element at a given position.
21091         (json-read-object, json-read-array): Call
21092         `json-pre-element-read-function' and `json-post-element-read-function'
21093         when set.
21095         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
21096         (test-json-path-to-position-with-arrays)
21097         (test-json-path-to-position-no-match): New tests for
21098         `json-path-to-position'.
21100 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
21102         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
21104         This really should been part of my previous commit
21105         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
21107 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
21109         Offer non-overwrite bookmark setter (Bug#15746)
21111         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
21112         what `bookmark-set' used to do, but with more choices for overwrite
21113         vs push, and with minor changes to the interactive prompt format.
21114         (bookmark-set): Rewrite as wrapper around above.
21115         If overwriting, inform the user of that in the prompt.
21116         (bookmark-set-no-overwrite): New function, also done as wrapper.
21117         Bind to "M" in `ctl-x-r-map' autoloads.
21118         (bookmark-map): Similarly bind "M" here.
21120 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
21122         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
21124 2015-11-08  Alan Modra  <amodra@gmail.com>
21126         ELF unexec: Don't insert a new section
21128         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
21129         don't need to mess with symbol st_shndx, or section sh_link and
21130         sh_info.
21132         This does lead to eu-elflint complaints about symbols defined in .bss
21133         with a needed version, because normally it is undefined symbols that
21134         have needed versions;  Defined symbols have version definitions.
21135         The exception is symbols defined by the linker in .dynbss for
21136         variables copied from a shared library in order to avoid text
21137         relocations, with copy relocs to copy their initial values from the
21138         shared library.  These symbols are both defined and have needed
21139         versions, and eu-elflink only expects to see them in SHT_NOBITS
21140         sections.  Of course there is no real problem with having such symbols
21141         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
21143         * src/unexelf.c: Delete outdated comments.
21144         (PATCH_INDEX): Delete.
21145         (find_section): Delete.
21146         (unexec): Don't add a new section.  Instead reuse the last bss
21147         section, extending it to cover dumped data.  Make bss sections
21148         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
21149         st_shndx.  Rename bss sections.
21151 2015-11-08  Alan Modra  <amodra@gmail.com>
21153         ELF unexec: Drive from PT_LOAD header rather than sections
21155         This rewrites bss handling in the ELF unexec code.  Finding bss
21156         sections by name results in complicated code that
21157         - does not account for all names of possible bss sections,
21158         - assumes specific ordering of bss sections,
21159         - can wrongly choose a SHT_NOBITS section not in the bss segment,
21160         - incorrectly calculates bss size (no accounting for alignment gaps),
21161         - assumes .data and .bss are in the same segment.
21163         All of these problems and more are solved by finding the bss segment
21164         in PT_LOAD headers, ie. the address range included in p_memsz but not
21165         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
21166         in that address range.
21168         * src/unexelf.c: Delete old ppc comment.
21169         (OLD_PROGRAM_H): Define.
21170         (round_up): Delete.
21171         (unexec): Don't search for bss style sections by name.  Instead,
21172         use the last PT_LOAD header address range covered by p_memsz
21173         but not p_filesz and match any SHT_NOBITS section in that
21174         address range.  Simplify initialization of section header vars.
21175         Don't assume that section headers are above bss segment.  Move
21176         copying of bss area out of section loop.  Align .data2 section
21177         to 1, since it now covers the entire bss area.  For SHT_NOBITS
21178         sections in the bss segment, leave sh_addr and sh_addralign
21179         unchanged, but correct sh_offset.  Clear memory corresponding
21180         to SHT_NOBITS .plt section.  Delete comment and hacks for
21181         sections partly overlapping bss range now that the full range
21182         is properly calculated.  Delete now dead .sbss code.
21183         (Bug#20614)
21185 2015-11-08  Alan Modra  <amodra@gmail.com>
21187         ELF unexec: R_*_NONE relocs
21189         These should be ignored on all targets.
21191         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
21192         not just Alpha.  Comment on reloc size assumption.
21194 2015-11-08  Alan Modra  <amodra@gmail.com>
21196         ELF unexec: _OBJC_ symbols in bss sections
21198         This code assumed that there was only one bss section.  Rather than
21199         checking for a particular index, check the section type.  Also, handle
21200         the possibility that the section was SHT_NOBITS originally and is
21201         unchanged, in which case no clearing is needed (and sh_offset isn't
21202         necessarily valid, which can lead to a wild memset).
21204         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
21205         bss sections.
21207 2015-11-08  Alan Modra  <amodra@gmail.com>
21209         ELF unexec: Symbol table patching
21211         No st_shndx value larger than SHN_LORESERVE should be changed.
21212         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
21213         SHN_LORESERVE.  Error on SHN_XINDEX.
21215 2015-11-08  Alan Modra  <amodra@gmail.com>
21217         ELF unexec: Merge Alpha and MIPS COFF debug handling
21219         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
21220         Don't find .mdebug section index, find the section in the loop.
21221         Allow for unlikely possibility that .mdebug is located at sh_offset
21222         before bss segment, by calculating move from difference in
21223         sh_offset rather than just assuming new_data2_size.  Simplify
21224         cbLineOffset handling.
21226 2015-11-08  Alan Modra  <amodra@gmail.com>
21228         ELF unexec: Tidy code
21230         Separate out some of the more mechanical changes so following patches
21231         are smaller.
21233         * src/unexelf.c (unexec): Rearrange initialization of program
21234         header vars.  Use pointer vars in loops rather than indexing
21235         section header array via macros.  Simplify _OBJC_ sym code
21236         and reloc handling code.
21238 2015-11-08  Alan Modra  <amodra@gmail.com>
21240         ELF unexec: Correct section header index
21242         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
21243         it should have been using "NEW_SECTION_H (nn)" to find the name of the
21244         section currently being processed.  Of course, before the bss
21245         sections, n and nn have the same value, so this doesn't matter except
21246         in the case of .sbss.  For .sbss this probably meant .bss (most likely
21247         the next section) was copied from memory.  A later patch removes the
21248         bogus .sbss handling anyway.
21250         * src/unexelf.c (unexec): Use correct index to look up names.
21252 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
21254         Fix Bug#21841
21256         * lisp/filenotify.el (file-notify--rm-descriptor):
21257         Use `descriptor' instead of computing its value.
21258         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
21259         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
21260         (Bug#21841)
21262 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
21264         Remove dirs in vc project roots from the the vc project library roots
21266         * lisp/progmodes/project.el (project-library-roots):
21267         Remove directories inside the project roots from the result.
21268         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
21270 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
21272         Move and rename xref-find-regexp to the project package
21274         * lisp/progmodes/project.el (project-find-regexp)
21275         (project--read-regexp)
21276         (project--find-regexp-in): New functions.
21278         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
21279         xref--show-xrefs.  Use in existing callers in place of that
21280         function.
21281         (xref--show-xrefs): Only do the "show" part.
21282         (xref-find-regexp): Rename, more or less, to
21283         project-or-libraries-find-regexp.
21285 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
21287         Abolish temporary buffer management for xref
21289         * lisp/progmodes/xref.el (xref--temporary-buffers)
21290         (xref--current)
21291         (xref--inhibit-mark-current)
21292         (xref--mark-selected): Remove.  Remove all references.
21293         (xref--show-xrefs): Do not construct the
21294         list of the temporary buffers, nor pass it along.
21296 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
21298         Rename "search path" to "library roots"
21300         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
21301         of the elements from CL-LIST1.
21303         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
21304         Update WRT to the above change.
21306         * lisp/progmodes/project.el (project-search-path-function): Rename
21307         to project-library-roots-function, update the documentation and
21308         references.
21309         (project-search-path): Likewise, to project-library-roots.
21310         (project-roots): Clarify documentation.
21311         (project-vc-search-path): Likewise, to project-vc-library-roots.
21312         (project-library-roots): In addition to the renames, thread the
21313         results through file-name-as-directory.
21314         (project-prune-directories): Accept a variable number of
21315         arguments.  Rename to project-combine-directories.
21316         (project-subtract-directories): New function.
21318         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
21319         Append project-roots and project-library-roots together.
21321         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
21323 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
21325         Prefer xpalloc to doubling buffers by hand
21327         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
21328         (read1): Use it for simplicity.
21329         * src/macros.c (store_kbd_macro_char):
21330         * src/minibuf.c (read_minibuf_noninteractive):
21331         * src/term.c (encode_terminal_code):
21332         * src/xrdb.c (magic_db):
21333         Prefer xpalloc to growing buffers by hand.
21334         This doesn’t fix any bugs, but simplifies the code a bit.
21336 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
21338         Merge from gnulib
21340         This incorporates:
21341         2015-11-05 timespec-sub: fix overflow bug; add tests
21342         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
21343         2015-11-03 intprops: add parentheses
21344         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
21345         Copy from gnulib.
21347 2015-11-07  David Reitter  <david.reitter@gmail.com>
21349         Provide NS notification objects where required to eliminate warnings
21351         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
21352         Call notification functions with notification objects
21353         as per delegate APIs.
21355 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
21357         Add test for bug #21824
21359         * test/automated/buffer-tests.el: New file.
21360         (overlay-modification-hooks-message-other-buf): New test.
21362 2015-11-07  Kelvin White  <kwhite@gnu.org>
21364         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
21366 2015-11-07  David Reitter  <david.reitter@gmail.com>
21368         Ignore fullscreen exit notifications on NS when frame is dead
21370         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
21371         (windowDidExitFullScreen:): Return if frame is dead.
21372         These functions may be called when a fullscreen frame
21373         is closed; they are called before, not after.
21375         May address Bug#21428.
21377 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
21379         Speed up lookup in redisplay--variables
21381         * lisp/frame.el (redisplay--variables): Make it a hash-table.
21383         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
21384         as a hash-table.  This speeds up this function by an order of
21385         magnitude: where previously a setq was slowed down by 100% by
21386         introducing the maybe_set_redisplay test, it is now only 5%
21387         slower.
21388         (syms_of_xdisp) <redisplay--variables>: Doc fix.
21390 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21392         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
21394         The defsubst was being created as:
21395             (cl-defsubst name (args) ("DOC") ...)
21397         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
21398         Add test.
21400 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
21402         Update doc string of hexl-mode
21404         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
21406 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
21408         Fix error in copy-abbrev-table
21410         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
21411         property of the abbrev-table.  (Bug#21828)
21413         * test/automated/abbrev-tests.el: New file.
21415 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
21417         Add test to auto-revert-tests.el for Bug#21841
21419         * test/automated/auto-revert-tests.el
21420         (auto-revert-test01-auto-revert-several-files): New test.
21421         (auto-revert-test02-auto-revert-tail-mode)
21422         (auto-revert-test03-auto-revert-mode-dired): Rename them.
21424 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
21426         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
21428 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
21430         In x_consider_frame_title don't set title of tooltip frames
21432         * src/xdisp.c (x_consider_frame_title): Return immediately for
21433         tooltip frames to avoid displaying empty tooltips.
21435 2015-11-06  Anders Lindgren  <andlind@gmail.com>
21437         Fixed NextStep fullscreen problem (bug#21770).
21439         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
21440         fullscreen frames.
21442 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
21444         Ensure redisplay after evaluation
21446         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
21447         Revert last change.
21448         * lisp/frame.el (redisplay--variables): Populate the
21449         redisplay--variables list.
21450         * src/xdisp.c (maybe_set_redisplay): New function.
21451         (syms_of_xdisp) <redisplay--variables>: New variable.
21452         * src/window.h (maybe_set_redisplay): Declare prototype.
21453         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
21455 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
21457         * test/automated/subr-tests.el (subr-test-when): Fix again.
21459 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
21461         Don't invoke overlay modification hooks in wrong buffer
21463         * src/buffer.c (report_overlay_modification): When called with
21464         AFTER non-zero, don't invoke overlay modification hooks if the
21465         buffer recorded in last_overlay_modification_hooks is different
21466         from the current buffer.  (Bug#21824)
21468 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
21470         * admin/notes/repo: Fix a few obsolete references to Bazaar.
21472 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
21474         * test/automated/subr-tests.el (subr-test-when): Fix test.
21476 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
21478         Avoid division by zero crash observed by Yuan MEI
21480         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
21482         * src/dispnew.c (required_matrix_height, required_matrix_width):
21483         Avoid division by zero.
21484         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
21485         dpyinfo->smallest_char_width to 1.
21487 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
21489         Ensure redisplay after "C-x C-e"
21491         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
21492         redisplay happens to account for any side effects of the evaluated
21493         sexp.  (Bug#21835)
21495 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
21497         Skip some file notification tests for cygwin
21499         * test/automated/file-notify-tests.el (file-notify--test-with-events):
21500         Remove argument TIMEOUT.  Adapt all callees.
21501         (file-notify-test02-events, file-notify-test04-file-validity):
21502         Skip for cygwin.  (Bug#21804)
21504 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
21506         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
21508 2015-11-05  Daiki Ueno  <ueno@gnu.org>
21510         Suppress redundant Pinentry startup messages
21512         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
21513         * lisp/epg.el: Declare `pinentry-start'.
21514         (epg--start): Call `pinentry-start' with QUIET argument set.
21516 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
21518         * doc/emacs/ack.texi (Acknowledgments): Updates.
21520 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
21522         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
21523         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
21525 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
21527         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
21528         Add prettification support for \times.
21530 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
21532         * test/automated/process-tests.el: Skip tests when bash is unavailable.
21533         (process-test-sentinel-accept-process-output)
21534         (process-test-sentinel-sit-for): skip-unless bash executable found.
21536 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
21538         Add test for bug #21831
21540         * test/automated/process-tests.el
21541         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
21542         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
21544 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
21546         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
21548         (eieio--generic-static-object-generalizer): Fix typo.
21549         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
21550         like the underlying cause of bug#17852 was fixed in the mean time.
21552 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
21554         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
21556         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
21557         It breaks bootstrapping (duh).
21559 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
21561         * lisp/files.el (report-errors): Obsolete.
21563         (normal-mode, hack-local-variables, dir-locals-find-file):
21564         Use `with-demoted-errors' instead.
21566 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
21568         * lisp/subr.el (when): Use `macroexp-progn'.
21570         * test/automated/subr-tests.el (subr-test-when): New test.
21572 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
21574         * lisp/progmodes/xref.el: Doc fixes.
21575         (xref-make-file-location, xref-make-buffer-location, xref-make)
21576         (xref-make-bogus-location, xref-make-match): Add cross-references.
21577         (xref--insert-xrefs): Fix typo in docstring.
21579 2015-11-04  Anders Lindgren  <andlind@gmail.com>
21581         Render fringe bitmaps correctly on NextStep (bug#21301)
21583         The fringe bitmaps were inverted, the background was not transparent,
21584         the image data was horizontally mirrored, and periodic fringe bitmaps
21585         were not supported.
21587         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
21588         When both background and foreground colors are 0, set the background
21589         alpha channel to 0 (making the background transparent).  When
21590         copying the image data, do this from the most significant bit
21591         (leftmost) to the least (rightmost), to avoid mirroring.
21592         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
21593         Add support for periodic images (e.g. the empty line indicator).
21595 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
21597         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
21599 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
21601         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
21603         * admin/MAINTAINERS: Add thunk.el.
21605 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
21607         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
21609 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
21611         Fix a stupid error in gfilenotify.c
21613         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
21614         if we've got a `deleted' signal AND the file name is the watched one.
21616 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
21618         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
21620         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
21621         Use case-insensitive string compare for file names.
21622         (emacs-test-dir): Add 'downcase' to cause case differences (at
21623         least on my system).
21625 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
21627         flymake-tests.el (warning-predicate-rx-gcc): Fix check
21629         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
21630         Also check that "make" is available, not just "gcc".
21632 2015-11-02  Ken Brown  <kbrown@cornell.edu>
21634         Document behavior of collation on Cygwin
21636         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
21637         expected failure on Cygwin.
21638         * doc/lispref/strings.texi (Text Comparison): Document that
21639         punctuation and whitespace are not ignored for sorting on Cygwin.
21641 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
21643         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
21645 2015-11-01  Glenn Morris  <rgm@gnu.org>
21647         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
21648         (Bug#21794)
21649         * test/automated/f90.el (f90-test-bug21794): New test.
21651 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
21653         Fix incompatibility with TCC in test for bug#18745
21655         * test/automated/process-tests.el (process-test-quoted-batfile):
21656         Remove spaces unrelated to the bug being tested.
21658 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
21660         Improve completion in tramp-gvfs.el
21662         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
21663         Rename from `tramp-zeroconf-parse-service-device-names'.
21664         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
21665         with `tramp-zeroconf-parse-device-names'.
21666         (tramp-gvfs-parse-device-names): New defun.
21667         (top): Use it when `tramp-zeroconf-parse-device-names' is not
21668         applicable.
21670         * lisp/net/tramp.el (tramp-set-completion-function): The argument
21671         could also be a zeroconf service type.
21673 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
21675         * lisp/net/ntlm.el: Change version to 2.0.0.
21677 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
21679         Fix bug#21762
21680         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
21681         `eql' instead of `=' to accommodate the case that (syntax-after (point))
21682         returns nil.
21683         * test/automated/python-tests.el (python-indent-inside-paren-7):
21684         New test.
21686 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
21688         * test/automated/python-tests.el: Avoid warnings.
21689         (python-tests-with-temp-buffer, python-tests-with-temp-file):
21690         Bind `python-indent-guess-indent-offset' to nil.
21692 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
21694         * src/alloc.c: Silence compiler warnings.
21695         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
21697 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
21699         * etc/NEWS: Fix js-jsx-mode entry punctuation.
21701 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
21703         Add JSX indentation via js-jsx-mode  (Bug#21799)
21705         * lisp/progmodes/js.el: Add JSX indentation support.
21706         (js--jsx-end-tag-re)
21707         (js--jsx-after-tag-re): New variables.
21708         (js--jsx-find-before-tag)
21709         (js--jsx-indented-element-p)
21710         (js--as-sgml)
21711         (js--expression-in-sgml-indent-line)
21712         (js-jsx-indent-line)
21713         (js-jsx-mode): New functions.
21714         * test/indent/js-jsx.js: New file.
21715         * etc/NEWS: Add information about js-jsx-mode.
21717 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
21719         Minor fix in filenotify.el
21721         * lisp/filenotify.el (file-notify--event-file-name)
21722         (file-notify--event-file1-name): Normalize result with
21723         `directory-file-name'.
21725 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
21727         Avoid errors in redisplay--pre-redisplay-functions
21729         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
21730         use 'bobp', instead compare window-point with 1.  (Bug#21730)
21732 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
21734         Merge from gnulib
21736         This incorporates:
21737         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
21738         2015-10-25 stdalign: port to Sun C 5.9
21739         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
21740         Copy from gnulib.
21742 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
21744         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
21745         (w32_compare_strings): Adjust for the correction.
21747 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
21749         * test/automated/vc-tests.el (vc-test--state)
21750         (vc-test--working-revision, vc-test--checkout-model):
21751         Add result messages.
21753 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21755         * test/automated/faces-tests.el: Add another test
21757 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21759         * lisp/faces.el (faces--attribute-at-point): Fix bug
21760         introduced by previous commit.
21762 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21764         * test/automated/faces-tests.el: New file.
21766 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21768         * lisp/faces.el: Refactor common code and fix a bug.
21769         (faces--attribute-at-point): New function.  Fix a bug when the
21770         face at point is a list of faces and the desired attribute is not
21771         on the first one.
21772         (foreground-color-at-point, background-color-at-point): Use it.
21774 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
21776         * etc/tutorials/TUTORIAL.translators: Fix PL names.
21778 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
21780         * lisp/character-fold.el: Provide `character-fold'.
21782 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
21784         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
21785         for Gnus and ivy.
21787 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
21789         Some minor fixes for tramp-gvfs.el
21791         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
21792         An attribute returned by gvfs-info might be empty.  In case of
21793         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
21794         (tramp-zeroconf-parse-service-device-names): New defun.
21795         Derived from `tramp-zeroconf-parse-workstation-device-names'.
21796         (top): Add completion functions for "afp" and "smb" methods.
21798 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21800         * test/automated/character-fold-tests.el: New file
21802 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21804         * test/automated/sort-tests.el: New file.
21805         Tests in this file are randomly generated and then tested with
21806         regular, reverse, and case-fold sorting.
21808 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
21810         Describe known problems with pinning Emacs to taskbar
21812         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
21813         on Windows 10.  For the details, see the discussion starting at
21814         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
21816 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21818         * lisp/isearch.el: Avoid an error that blocks isearch.
21819         (isearch-update): Don't error if `isearch--current-buffer' has
21820         been killed.
21822         * test/automated/isearch-tests.el (isearch--test-update):
21823         New file.
21825 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
21827         Fix documentation of 'beginning/end-of-buffer'
21829         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
21830         conditions under which the mark will be pushed at the previous
21831         position.  (Bug#21748)
21833 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
21835         Add RefTeX feature idea: editing RefTeX TOC buffers
21837         More face defs for ivy, swiper, ace-window, eshell
21839 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21841         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
21842         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
21843         just VAR.
21844         (auth-source-backend-parse): Use make-instance.
21845         (auth-source-search): Remove unused key args.
21846         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
21847         (auth-source-search-backends): Use slot names rather than their initarg.
21848         (auth-source-netrc-create):
21849         (auth-source-delete):
21850         (auth-source-secrets-create, auth-source-plstore-search)
21851         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
21852         (auth-source-plstore-create, auth-source-netrc-search)
21853         (auth-source-netrc-parse): Remove unused key args.
21854         (auth-source-forget+): Simplify the arglist.
21855         (auth-source-macos-keychain-search-items)
21856         (auth-source-token-passphrase-callback-function): Mark unused args.
21857         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
21858         (pp-escape-newlines): Declare.
21859         (auto-source--symbol-keyword): New function.
21860         (auth-source-plstore-create, auth-source-netrc-create)
21861         (auth-source-netrc-normalize): Use it.
21862         (auth-source-netrc-search): Don't pass :delete to
21863         auth-source-netrc-parse since it doesn't use it.
21864         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
21865         symbol-value to index in keyword args.
21866         (auth-source-macos-keychain-result-append): Avoid setq.
21867         (auth-source-netrc-create): Remove unused vars `file' and `add'.
21868         (auth-source-user-or-password): Remove unused var `cname'.
21870 2015-10-29  Juri Linkov  <juri@linkov.net>
21872         * lisp/dired.el (dired-unmark-all-files-query): Declare.
21873         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
21874         (Bug#21746)
21876 2015-10-29  Juri Linkov  <juri@linkov.net>
21878         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
21879         to go to the beginning of text line instead of command line.
21880         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
21882 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
21884         Fix encoding of saving *Help* buffers
21886         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
21887         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
21889 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21891         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
21892         (cl--generic-derived-specializers): New function.
21893         (cl--generic-derived-generalizer): New generalizer.
21894         (cl-generic-generalizers): New specializer (derived-mode MODE).
21895         (cl--generic-split-args): Apply the rewriter, if any.
21896         (cl-generic-define-context-rewriter): New macro.
21897         (major-mode): Use it to define a new context-rewriter, so we can write
21898         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
21900         * lisp/frame.el (window-system): New context-rewriter so we can write
21901         `(window-system VAL)' instead of (window-system (eql VAL)).
21902         (cl--generic-split-args): Apply the rewriter, if any.
21903         (frame-creation-function): Use the new syntax.
21905         * lisp/term/x-win.el (window-system-initialization)
21906         (handle-args-function, frame-creation-function)
21907         (gui-backend-set-selection, gui-backend-selection-owner-p)
21908         (gui-backend-selection-exists-p, gui-backend-get-selection):
21909         * lisp/term/w32-win.el (window-system-initialization)
21910         (handle-args-function, frame-creation-function)
21911         (gui-backend-set-selection, gui-backend-get-selection)
21912         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
21913         * lisp/term/pc-win.el (gui-backend-get-selection)
21914         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
21915         (gui-backend-set-selection, window-system-initialization)
21916         (frame-creation-function, handle-args-function):
21917         * lisp/term/ns-win.el (window-system-initialization)
21918         (handle-args-function, frame-creation-function)
21919         (gui-backend-set-selection, gui-backend-selection-exists-p)
21920         (gui-backend-get-selection):
21921         * lisp/startup.el (handle-args-function):
21922         * lisp/term/xterm.el (gui-backend-get-selection)
21923         (gui-backend-set-selection): Use the new syntax.
21925 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21927         * test/indent/css-mode.css: Add tests for url(...) syntax.
21929 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21931         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
21932         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
21933         (smie-prec2->grammar): Use `declare'.
21935 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21937         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
21938         (cl--generic-generalizer): Add `name' field.
21939         (cl-generic-make-generalizer): Add corresponding `name' argument.
21940         (cl-generic-define-generalizer): New macro.
21941         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
21942         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
21943         (cl--generic-t-generalizer): Use it.
21944         (cl-generic-ensure-function): Add `noerror' argument.
21945         (cl-generic-define): Use it so we don't follow aliases.
21946         (cl-generic-define-method): Preserve pre-existing ordering of methods.
21947         (cl--generic-arg-specializer): New function.
21948         (cl--generic-cache-miss): Use it.
21949         (cl-generic-generalizers): Only fset a temporary definition
21950         during bootstrap.
21951         (cl--generic-struct-tag, cl--generic-struct-specializers):
21952         Allow extra arguments.
21954         * lisp/emacs-lisp/eieio-compat.el
21955         (eieio--generic-static-symbol-generalizer)
21956         (eieio--generic-static-object-generalizer):
21957         Use cl-generic-define-generalizer.
21958         (eieio--generic-static-symbol-specializers): Allow extra arguments.
21960         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
21961         (eieio--generic-subclass-generalizer):
21962         Use cl-generic-define-generalizer.
21963         (eieio--generic-subclass-specializers): Allow extra arguments.
21965 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21967         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
21969 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
21971         Add "afp" method to Tramp
21973         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
21975         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
21976         (tramp-gvfs-handle-expand-file-name)
21977         (tramp-gvfs-handler-mounted-unmounted)
21978         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
21979         (tramp-gvfs-maybe-open-connection): Support also "afp".
21980         (tramp-gvfs-handle-file-attributes): Handle the case of empty
21981         "owner::user" and "owner::group" entries.
21983 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
21985         Handle negative coordinates in ‘x_calc_absolute_position’
21987         * src/w32term.c (x_calc_absolute_position): Find display origin to
21988         allow for negative coordinates.
21990 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
21992         (internal--syntax-propertize): Save match-data here (bug#21766)
21994         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
21995         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
21997 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
21999         Don't require default-directory to end with a slash
22001         * doc/lispref/files.texi (Magic File Names): Document the change
22002         in unhandled-file-name-directory.
22004         * lisp/url/url-handlers.el
22005         (url-handler-unhandled-file-name-directory): Update accordingly.
22007         * src/buffer.c (default-directory): Update the docsting.
22009         * src/fileio.c (unhandled-file-name-directory): Default to calling
22010         `file-name-as-directory'
22011         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
22013 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
22015         * lisp/isearch.el: Delete some outdated comments.
22017 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
22019         Fix eshell/clear not working if the output has a small line count
22021         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
22022         number of newlines to be inserted. This fixes the issue where
22023         eshell/clear wouldn't work if the prompt was not at the bottom of the
22024         window, and the output wasn't too long.
22026 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
22028         * lisp/files.el (write-file): Use vc-refresh-state.
22030         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
22032         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
22034 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
22036         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
22037         (macroexp-unprogn): Make sure we never return an empty list.
22038         (macroexp-if): Remove unused (and unsafe) optimization.
22039         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
22040         occur occasionally.
22042 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
22044         Fix bug#21766 and add test
22045         * lisp/simple.el (delete-trailing-whitespace): Save match data when
22046         calling `skip-syntax-backward'.
22047         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
22048         New test.
22050 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
22052         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
22054 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
22056         * src/dispnew.c (init_display): Simplify overflow checking.
22058 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
22060         * lisp/character-fold.el (character-fold-to-regexp): Fix case
22061         where string ends in space
22063 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
22065         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
22067         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
22069 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
22071         * lisp/character-fold.el: Make compatible with lax-whitespace.
22072         (character-fold-to-regexp): Rework internals to play nice with
22073         lax-whitespacing.
22075         When the user types a space, we want to match the table entry for
22076         ?\s, which is generally a regexp like "[ ...]".  However, the
22077         `search-spaces-regexp' variable doesn't "see" spaces inside these
22078         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
22079         manually expose a space).
22081         Furthermore, the lax search engine acts on a bunch of spaces, not
22082         on individual spaces, so if the string contains sequential spaces
22083         like "  ", we need to keep them grouped together like this:
22084         "\\(  \\|[ ...][ ...]\\)".
22086 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
22088         * lisp/isearch.el: Refactor momentary messages.
22089         (isearch--momentary-message): New function.
22090         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
22091         (isearch-toggle-invisible): Use it.
22093 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
22095         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
22096         (isearch-define-mode-toggle): New macro.
22097         (isearch-toggle-invisible): Rename to
22098         `isearch-define-mode-toggle'.
22099         (isearch-toggle-case-fold, isearch-toggle-invisible)
22100         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
22101         with `isearch-define-mode-toggle'.
22103 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
22105         Avoid using `add-to-list' on a let-local var in tramp-smb.el
22107         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
22108         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
22110 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
22112         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
22113         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
22114         does not exist in XEmacs 21.4.
22116 2015-10-28  Anders Lindgren  <andlind@gmail.com>
22118         Fixed OS X startup crash
22120         Input events started to arrive before ns_term_init() was finished.
22121         Solved by blocking input.  This also seems to correct the "You
22122         can't open the application "Emacs" because it may be damaged or
22123         incomplete" error issued when double-clicking on the Emacs
22124         application.
22126         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
22127         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
22129 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
22131         * src/process.c (Fget_buffer_process): Improve docstring.
22132         Document the fact that it doesn't return dead processes.
22134 2015-10-28  Anders Lindgren  <andlind@gmail.com>
22136         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
22138         * src/nsterm.h (struct ns_output): New flag, in_animation.
22139         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
22140         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
22141         in_animation flag around call to "setVisible". Set new tool bar
22142         height before call to setVisible.
22143         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
22144         andColumns:] as this fools the subsequent call to updateFrameSize
22145         from performing the real resize.
22146         (windowDidResize): Don't update anything when in_animation is
22147         non-zero.
22149         Trace output.
22151         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
22152         (EmacsToolbar):
22153         * src/nsterm.m (x_set_window_size, updateFrameSize)
22154         ([EmacsView setRows: andColumns:])
22156 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
22158         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
22160 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
22162         Prettify TeX macros not ending in a word char
22164         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
22165         Prettify macros which don't end in a word character.
22167 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
22169         Pipe Hg commit descriptions through 'tabindent'
22171         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
22172         through 'tabindent'.
22173         (vc-hg-log-view-mode): Set tab-width to 2 locally.
22174         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
22176 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
22178         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
22179         (tramp-smb-handle-directory-files): Use `delete-dups'.
22181         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
22183 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
22185         * lisp/international/ccl.el: Use lexical-binding.
22186         (ccl-compile-if): Remove unused var `false-ic'.
22187         (ccl-compile-write-repeat): Remove unused var `i'.
22188         (ccl-compile-map-single): Remove unused var `id'.
22189         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
22190         dynamic var `ccl-code'.
22192 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
22194         * lisp/json.el (json-new-object): Optimize trivial `list' call.
22196 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
22198         * lisp/help.el: Fix bug with incorrect arglist string.
22199         (help-add-fundoc-usage): Don't mistake a mis-formatted string
22200         for a list.
22202 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
22204         * lisp/gnus/gnus-topic.el: Silence some warnings.
22205         (gnus-topic-prepare-topic): Remove unused var `topic'.
22206         (gnus-topic-remove-topic): Mark unused arg `hide'.
22207         (gnus-tmp-header): Declare.
22208         (gnus-topic-goto-missing-group): Remove unused var `entry'.
22209         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
22210         (gnus-topic-copy-matching): Mark unused arg `copyp'.
22211         Move initialization of `topic' into its declaration.
22213 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
22215         Minor CEDET fixes
22217         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
22218         Handle warnings from gtags about invalid options.
22219         (cedet-gnu-global-create/update-database): Do incremental update
22220         properly.
22222         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
22223         Get monotone root right.
22225 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
22227         Fall back to polling in autorevert when needed
22229         * lisp/autorevert.el (auto-revert-notify-handler): When a
22230         `stopped' event arrives from file notification, fall back to polling.
22232         * test/automated/file-notify-tests.el
22233         (file-notify-test03-autorevert): Extend test for polling when file
22234         notification ceases to work.
22236 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
22238         Show full commit messages in 'hg log' when appropriate
22240         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
22241         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
22242         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
22244 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
22246         Use a plain SVG file for the icon
22248         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
22249           format instead of the Inkscape SVG format.
22251 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
22253         Fix subtle bug in auto-revert-tests.el
22255         * test/automated/auto-revert-tests.el
22256         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
22257         buffer where it belongs to.  (Bug#21668)
22259 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
22261         * lisp/emacs-lisp/map.el: Better docstrings.
22263         * lisp/emacs-lisp/seq.el: Better docstrings.
22265         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
22267 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
22269         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
22271 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
22273         Clarify that load-path contents should be directory file names
22275         * doc/lispref/files.texi (Directory Names): Define and use "directory
22276         file name".  Recommend `expand-file-name'.
22278         * src/lread.c (load-path): Fix doc string; elements are directory file
22279         names.
22281 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
22283         Fix simple-test.el test
22285         * test/automated/simple-test.el (simple-test--dummy-buffer):
22286         Make sure indentation doesn't use TABs, otherwise the 6th test
22287         might fail.
22289 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
22291         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
22292         `substring' does not account for full width characters.
22294 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
22296         Further work on `stopped' events in filenotify.el
22298         * doc/lispref/os.texi (File Notifications): Rework examples.
22300         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
22301         (file-notify--rm-descriptor, file-notify-callback): Improve check
22302         for sending `stopped' event.
22303         (file-notify-add-watch): Check for more events for `inotify'.
22305         * test/automated/file-notify-tests.el
22306         (file-notify--test-expected-events): New defvar.
22307         (file-notify--test-with-events): Use it.
22308         (file-notify--test-cleanup): Make it more robust when deleting
22309         directories.
22310         (file-notify--test-event-test): Check also for watched directories.
22311         (file-notify--test-event-handler): Suppress temporary .#files.
22312         (file-notify-test02-events, file-notify-test04-file-validity):
22313         Rework `stopped' events.
22314         (file-notify-test05-dir-validity): Wait for events when appropriate.
22316 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
22318         * src/keyboard.c (post-command-hook): Shorten docstring.
22320 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
22322         Fix infinite loop in sh-script's SMIE code
22324         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
22325         loop (bug#21747).
22327 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
22329         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
22330         Character-fold search _still_ doesn't play well with
22331         lax-whitespace.  So disable it by default (again) for now.
22333 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
22335         * lisp/isearch.el: No visual feedback for default search mode.
22336         During an isearch where character-folding is the default, we don't
22337         want to take up minibuffer space just to tell the user that
22338         "Char-fold " is on.  The same goes for other modes, if the user
22339         changes the default.  In contrast, if the user toggles OFF the
22340         default mode, they should see "Literal", to distinguish it from
22341         the default mode.
22342         (isearch--describe-regexp-mode): Return "" if describing the
22343         default mode, and return "literal " if describing a plain search
22344         and it is not default.
22346 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
22348         * test/automated/simple-test.el: New file.
22349         Define tests for `newline' and `open-line'.
22351 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
22353         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
22354         Also run `post-self-insert-hook' when called interactively.
22356 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
22358         * lisp/simple.el (open-line): Fix docstring.
22359         Also explain apparently redundant line.
22361 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
22362             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
22364         Sync with soap-client repository, version 3.0.1
22366         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
22367         Bump version to 3.0.1.
22369         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
22371 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
22373         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
22375 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
22377         * src/keyboard.c (post-command-hook): Extend the docstring.
22378         Mainly, explain how to use it without hanging Emacs, or giving the
22379         impression that it is hanging.  Also mention `pre-command-hook'.
22380         (pre-command-hook): Mention `post-command-hook'.
22382 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
22384         * lisp/custom.el (custom-declare-variable): Shorten code again.
22385         Without using pcase this time.  We can't use pcase because it is
22386         loaded after custom in loadup.el.  Also add a comment explaining
22387         this to future dummies like me.
22389 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
22391         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
22393 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
22395         Introduce `stopped' event in file notification
22397         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
22398         (file-notify-rm-watch): Use it.
22399         (file-notify-callback): Implement `stopped' event.
22400         (file-notify-add-watch): Mention `stopped' in the docstring.
22401         Check, that upper directory exists.
22403         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
22404         Add two test cases.
22405         (file-notify-test02-events): Handle also `stopped' event.
22406         (file-notify-test04-file-validity): Add another test case.
22408 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
22410         Revert commit that broke 'make bootstrap'
22412         * lisp/custom.el (custom-declare-variable): Revert commit
22413         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
22414         even when pcase has not been defined yet, when doing bootstrapping.
22416 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
22418         Port recent inline functions fix to Standard C
22420         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
22421         All uses rewritten to define the function directly rather than to
22422         use a macro to define the function.  This conforms to Standard C,
22423         which does not allow stray semicolons at the top level.  I hope it
22424         also avoids the problems with TAGS.  Those macros, though clever,
22425         were pretty confusing anyway, and it wasn’t clear they were worth
22426         the aggravation even without the TAGS problem.
22428 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
22430         * lisp/isearch.el: Make character-fold search the default again.
22432 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
22434         * lisp/character-fold.el: Many improvements.
22435         (character-fold-search-forward, character-fold-search-backward):
22436         New command.
22437         (character-fold-to-regexp): Remove lax-whitespace hack.
22438         (character-fold-search): Remove variable.  Only isearch and
22439         query-replace use char-folding, and they both have their own
22440         variables to configure that.
22442 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
22444         * lisp/isearch.el: Generalize definition of regexp-function toggles.
22445         (isearch-specify-regexp-function): New macro for specifying
22446         possible values of `isearch-regexp-function'.
22447         (isearch-toggle-character-fold, isearch-toggle-symbol)
22448         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
22450 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
22452         * lisp/isearch.el (search-default-regexp-mode): New variable.
22453         (isearch-mode): Use it.
22455 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
22457         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
22458         (search-slow-speed, search-upper-case)
22459         (search-nonincremental-instead, search-whitespace-regexp)
22460         (search-invisible, isearch-hide-immediately)
22461         (isearch-resume-in-command-history, search-ring-max)
22462         (regexp-search-ring-max, search-ring-update, search-highlight)
22463         (isearch-fail): Delete :group entries.
22465 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
22467         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
22469 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
22471         addpm.c: Silence some warnings.
22473         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
22474         to LPBYTE.
22475         (add_registry): Pass NULL to optional lpClass argument of
22476         RegCreateKeyEx, not an empty string.
22478 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
22480         addpm.c: Do not add obsolete GTK libraries to the path.
22482         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
22483         (add_registry): Remove variables `size' and `gtk_key'.
22484         Do not add the GTK DLL directory to the library search path; it is
22485         confusing behavior (in particular, the same Emacs version with and
22486         without invoking addpm will use a different path), and the GTK image
22487         libraries are obsolete anyway.
22489 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
22491         addpm.c: Replace existing registry entries, but do not create new ones
22493         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
22494         existing values from previous versions, but do not add new ones; the
22495         key could exist for other reasons unrelated to old Emacsen, like X-style
22496         resources, or to set some environment variables like HOME or LANG, and
22497         in that case we don't want to populate it with obsolete values.
22499 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
22501         * nt/addpm.c (add_registry): Do not compute unused return value.
22503 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
22505         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
22507         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
22508         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
22509         current behavior because REG_OPTION_NON_VOLATILE is defined to
22510         be 0L anyway, but that option is actually documented only for
22511         RegCreateKeyEx.
22513 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
22515         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
22517 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
22519         Update frame title when redisplay scrolls selected window
22521         * src/xdisp.c (redisplay_window): Reconsider the frame's title
22522         when the mode-line of the frame's selected window needs to be
22523         updated.
22525 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
22527         Update frame title when scrolling the selected window
22529         * src/window.c (wset_update_mode_line): New function, sets either
22530         the window's update_mode_line flag or the global update_mode_lines
22531         variable.
22532         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
22533         (window_scroll_line_based): Call it instead of only setting the
22534         window's update_mode_line flag.
22536 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
22538         An even better fix for bug#21739
22540         * src/window.c (set_window_buffer): If the window is the frame's
22541         selected window, set update_mode_lines, not the window's
22542         update_mode_line flag.
22543         * src/buffer.c (Fkill_buffer): Undo last change.
22544         (set_update_modelines_for_buf): Function deleted.
22546 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
22547             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
22549         Sync with soap-client repository, version 3.0.0
22551         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
22552         Bump version to 3.0.0.
22554         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
22556         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
22558         * lisp/net/soap-inspect.el: Shorten first line description.
22560         * lisp/net/soap-client.el: Make a small whitespace fix.
22562         * lisp/net/soap-inspect.el: Update copyright years.
22564         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
22565         first use in soap-encode-xs-element.
22567         * lisp/net/soap-client.el (soap-type-is-array?): new defun
22568         (soap-encode-xs-element): handle array elements in this function
22569         (soap-encode-xs-complex-type): flag error if asked to encode an
22570         array type, this is handled in `soap-encode-xs-element'
22572         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
22573         Do not print type for attribute group.
22575         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
22576         New function.
22577         (soap-inspect-xs-attribute-group): Likewise.
22579         * lisp/net/soap-inspect.el
22580         (soap-resolve-references-for-xs-attribute-group): Resolve
22581         references of attributes in an attribute group.
22583         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
22584         type directly, not through soap-wsdl-get.
22586         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
22587         nil if reference attribute is nil.
22589         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
22590         Convert XML schema attributes to xsd:string.
22592         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
22593         New function.
22594         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
22595         (soap-sample-value-for-xs-complex-type): Likewise.
22596         (soap-inspect-xs-attribute): New function.
22597         (soap-inspect-xs-simple-type): Print attributes.
22598         (soap-inspect-xs-complex-type): Likewise.
22600         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
22601         Resolve references for attributes.
22602         (soap-resolve-references-for-xs-complex-type): Likewise.
22604         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
22605         Rename from soap-xml-node-first-child.
22606         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
22607         (soap-xs-parse-simple-type): Likewise.
22609         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
22611         * lisp/net/soap-client.el (soap-invoke-internal): New function.
22612         (soap-invoke-async): Call soap-invoke-internal.
22613         (soap-invoke): Likewise.
22615         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
22616         url-retrieve callback is killed.
22618         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
22619         Rename function.
22620         (soap-parse-wsdl-phase-fetch-imports): Likewise.
22621         (soap-parse-wsdl-phase-parse-schema): Likewise.
22622         (soap-parse-wsdl-phase-fetch-schema): Likewise.
22623         (soap-parse-wsdl-phase-finish-parsing): Likewise.
22624         (soap-parse-wsdl): Update calls.
22626         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
22628         * lisp/net/soap-client.el (soap-invoke-async): New function.
22629         (soap-invoke): Reimplement using soap-invoke-async.
22631         * lisp/net/soap-client.el (soap-parse-server-response):
22632         Improve docstring.
22633         (soap-invoke): Inline call to soap-parse-server-response.
22635         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
22636         Prevent incorrect warning.
22638         * lisp/net/soap-client.el (soap-parse-server-response):
22639         Rename soap-process-url-response.  Destroy the mime part.
22640         (soap-invoke): Call soap-parse-server-response.
22642         * lisp/net/soap-client.el: Update copyright date.
22644         * lisp/net/soap-client.el: Fix checkdoc issues.
22646         * lisp/net/soap-client.el: Fix indentation and long lines.
22648         * lisp/net/soap-client.el (soap-time-format): Remove variable.
22649         (soap-encode-xs-basic-type): Simplify date-time format detection.
22650         (soap-decode-xs-basic-type): Remove soap-time-format support.
22652         * lisp/net/soap-client.el (soap-process-url-response): New function.
22653         (soap-fetch-xml-from-url): Call soap-process-url-response.
22654         (soap-parse-wsdl-phase-1): New function.
22655         (soap-parse-wsdl-phase-2): Likewise.
22656         (soap-parse-wsdl-phase-3): Likewise.
22657         (soap-parse-wsdl-phase-4): Likewise.
22658         (soap-parse-wsdl-phase-5): Likewise.
22659         (soap-parse-wsdl): Call phase functions.
22661         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
22662         Remove one-argument and call.
22664         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
22666         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
22667         (soap-parse-schema): Add wsdl argument.  Look up XML schema
22668         imports from wsdl.
22669         (soap-load-wsdl): Do not set soap-xmlschema-imports.
22670         (soap-parse-wsdl): Get XML schema imports from wsdl.
22672         * lisp/net/soap-client.el (soap-current-file): Remove variable.
22673         (soap-wsdl): Add current-file slot.
22674         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
22675         file from wsdl.
22676         (soap-fetch-xml-from-file): Likewise.
22677         (soap-fetch-xml): Likewise.
22678         (soap-load-wsdl): Always create wsdl object first.
22679         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
22681         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
22682         (soap-xs-parse-element): Set is-group slot.
22683         (soap-resolve-references-for-xs-element): Skip is-group elements.
22684         (soap-xs-complex-type): Add is-group slot.
22685         (soap-xs-parse-complex-type): Set is-group slot.
22686         (soap-xs-parse-sequence): Parse xsd:group elements.
22687         (soap-resolve-references-for-xs-complex-type): Inline elements
22688         from referenced xsd:group nodes.
22689         (soap-parse-schema): Parse xsd:group nodes.
22691         * lisp/net/soap-client.el (soap-invoke):
22692         Don't set url-http-version to 1.0.
22694         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
22695         Allow choice nodes to accept multiple values.
22697         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
22698         for extra header values.
22700         * lisp/net/soap-client.el (soap-well-known-xmlns):
22701         Add wsa and wsaw tags.
22702         (soap-operation): Add input-action and output-action slots.
22703         (soap-parse-operation): Parse wsaw:Action nodes.
22704         (soap-encode-body): Encode service-url for WS-Addressing.
22705         (soap-create-envelope): Likewise.
22706         (soap-invoke): Update soap-create-envelope call to provide
22707         service-url argument.
22709         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
22710         Support xsi:type override attribute.
22711         (soap-decode-array): Likewise.
22713         * lisp/net/soap-client.el (soap-parse-schema):
22714         Handle location attribute.
22716         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
22717         matched validation regexp.
22719         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
22720         Encode xsd:list nodes.
22721         (soap-decode-xs-simple-type): Decode xsd:list nodes.
22723         * lisp/net/soap-client.el (soap-get-candidate-elements):
22724         Fix reference handling.
22726         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
22727         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
22728         (soap-xs-add-list): New function.
22730         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
22731         expected, interpret nil as "false".
22733         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
22734         gYear, gMonthDay, gDay and gMonth.
22736         * lisp/net/soap-client.el (soap-time-format): New variable.
22737         (soap-encode-xs-basic-type): Handle dateTime, time, date,
22738         gYearMonth, gYear, gMonthDay, gDay and gMonth.
22739         (soap-decode-date-time): New function.
22740         (soap-decode-xs-basic-type): Use soap-decode-date-time.
22742         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
22743         after encoding.
22744         (soap-decode-xs-basic-type): Validate value before decoding.
22746         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
22747         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
22749         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
22750         instead of overwriting it.
22751         (soap-validate-xs-simple-type): Add union support.
22753         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
22754         to Emacs regexp using xsdre-translate.
22755         (soap-validate-xs-simple-type): Validate value against pattern.
22757         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
22758         inline simpleType nodes.
22759         (soap-decode-type): Handle union types.
22761         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
22762         attributes.
22764         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
22765         from soap-xs-attribute-group-consolidate, all callers updated
22766         (soap-get-xs-attributes): Rename from
22767         soap-xs-attributes-consolidate, all callers updated
22769         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
22770         (soap-xs-attribute-group): New type.
22771         (soap-xs-parse-attribute-group): New function.
22772         (soap-resolve-references-for-xs-attribute-group): Likewise.
22773         (soap-xs-add-extension): Handle attribute groups.
22774         (soap-resolve-references-for-xs-simple-type): Likewise.
22775         (soap-xs-parse-complex-type): Likewise.
22776         (soap-xs-parse-extension-or-restriction): Likewise.
22777         (soap-resolve-references-for-xs-complex-type): Likewise.
22778         (soap-xs-attribute-group-consolidate): New function.
22779         (soap-xs-attributes-consolidate): Handle attribute groups.
22780         (soap-parse-schema): Likewise.
22782         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
22783         Fix boolean encoding.
22785         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
22786         element names in warnings.
22788         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
22790         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
22791         Eliminate invalid warnings for choice types.
22793         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
22794         Also encode base type attributes.
22796         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
22797         warning.  Print e-name in warnings, or element if e-name is nil.
22799         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
22800         (soap-xs-parse-element): Set substitution-group.
22801         (soap-resolve-references-for-xs-element): Populate alternatives slot.
22802         (soap-get-candidate-elements): New function.
22803         (soap-encode-xs-complex-type): Iterate through all candidate elements.
22804         Handle types with nil type indicator.  Fix warning logic.
22806         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
22807         earlier in the file to prevent compiler warning.
22809         * lisp/net/soap-client.el (soap-node-optional): New function.
22810         (soap-node-multiple): Likewise.
22811         (soap-xs-parse-element): Call soap-node-optional and
22812         soap-node-multiple.
22813         (soap-xs-complex-type): Add optional? and multiple? slots.
22814         (soap-xml-get-children-fq): New function.
22815         (soap-xs-element-get-fq-name): Likewise.
22816         (soap-xs-complex-type-optional-p): Likewise.
22817         (soap-xs-complex-type-multiple-p): Likewise.
22818         (soap-xs-attributes-consolidate): Likewise.
22819         (soap-decode-xs-attributes): Likewise.
22820         (soap-decode-xs-complex-type): Decode types with nil type indicator.
22821         Support children that use local namespaces.  Decode attributes.
22822         Add type considerations to optional? and multiple? warnings.
22824         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
22825         Store parsed attributes.
22826         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
22828         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
22829         Don't add the xsi:type attribute (Exchange refuses requests which have
22830         this attribute).
22832         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
22833         correct compiler warnings about unused function arguments and
22834         local variables.
22836         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
22837         type indicator.
22838         (soap-parse-envelope): Handle response headers.
22839         (soap-parse-response): Likewise.  Only return non-nil decoded values.
22841         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
22842         Return validated value.
22844         * lisp/net/soap-client.el (soap-xs-parse-element)
22845         (soap-xs-parse-simple-type)
22846         (soap-xs-parse-complex-type)
22847         (soap-parse-message)
22848         (soap-parse-operation): Add the current namespace to the element
22849         being created.
22850         (soap-resolve-references-for-xs-element)
22851         (soap-resolve-references-for-xs-simple-type)
22852         (soap-resolve-references-for-xs-complex-type)
22853         (soap-resolve-references-for-operation): Resolve the namespace to
22854         the namespace tag.
22855         (soap-make-wsdl): specify a namespace tag when creating the xsd
22856         and soapenc namespaces
22857         (soap-wsdl-resolve-references): don't update namespace tags in
22858         elements here
22859         (soap-parse-port-type): bind the urn: to soap-target-xmlns
22860         (soap-encode-body): don't add nil namespace tags to
22861         soap-encoded-namespaces
22863         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
22864         for registering the soap-inspect method.  Make debbugs tests pass.
22865         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
22866         type name, also skip string only nodes when decoding a structure.
22867         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
22868         types too.
22869         (soap-encode-body): Grab the header value from the param table.
22871         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
22872         New function.
22873         (soap-encode-xs-element): Don't encode nil value unless needed.
22875         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
22876         (soap-parse-binding): Parse the message parts required in the body.
22877         (soap-encode-body): Encode only the parts that are declared to be
22878         part of the body.
22880         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
22881         when writing out the tag.
22882         (soap-encode-body): Remove hack that inserts the xmlns in the
22883         element attributes list.
22885         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
22886         (soap-xs-parse-attribute): Default slot is set from the XML
22887         "fixed" attribute.
22888         (soap-encode-xs-complex-type-attributes): Encode any attributes
22889         that have a default value.  Also, don't put the xsi:nil attribute
22890         when the complex type has no content anyway.
22892         * lisp/net/soap-client.el (soap-well-known-xmlns):
22893         Add the xml namespace.
22894         (soap-local-xmlns): Start with the xml namespace.
22895         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
22896         (soap-make-xs-basic-types): More xsd types added.
22897         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
22898         Handle "language", "time", "date", "nonNegativeInteger".
22899         (soap-resolve-references-for-xs-element): Don't signal an error if
22900         the element does not have a type.
22901         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
22902         added stum for xsd:list.
22903         (soap-xs-add-union): Call soap-l2fq on all union members.
22904         (soap-xs-add-extension): Call soap-l2fq on the base member.
22905         (soap-resolve-references-for-xs-simple-type): Don't signal an
22906         error if the simple type has no base.
22907         (soap-resolve-references-for-xs-simple-type): Bugfix, call
22908         soap-wsdl-get on each type of the base.
22910         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
22911         Referenced type can be eiher a simple type or a basic type.
22912         (soap-xs-add-restriction)
22913         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
22914         (soap-make-xs-basic-types)
22915         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
22916         Add support for more XMLSchema basic types.
22917         (soap-current-file, soap-xmlschema-imports): New defvars.
22918         (soap-parse-schema): Add locations from xsd:import tags to
22919         `soap-xmlschema-imports'.
22920         (soap-wsdl): Make destructor private.
22921         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
22922         (soap-wsdl-add-alias): Check if we try to replace aliases.
22923         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
22924         (soap-fetch-xml): New defuns.
22925         (soap-load-wsdl): Update to load the WSDL from either a file or
22926         an url.
22927         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
22928         (soap-parse-wsdl): Process wsdl:import tags and imports from
22929         `soap-xmlschema-imports'.
22930         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
22931         symbol-name.
22932         (soap-l2fq): Make the name part always a string.
22933         (soap-name-p): New defun, used for name tests.
22935         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
22936         Supply sample values for choice types with a special tag.
22937         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
22938         Handle anonymous elements correctly.
22939         (soap-encode-value): Accept nodes that have no namespace tag.
22941         * lisp/net/soap-client.el (soap-invoke): Encode the string for
22942         `url-request-data' as UTF-8.  Fixes issue 16.
22944 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
22946         Update the new icon
22948         Move the E slightly to the right in the circle.
22950         * etc/images/icons/hicolor/128x128/apps/emacs.png:
22951         * etc/images/icons/hicolor/16x16/apps/emacs.png:
22952         * etc/images/icons/hicolor/24x24/apps/emacs.png:
22953         * etc/images/icons/hicolor/32x32/apps/emacs.png:
22954         * etc/images/icons/hicolor/48x48/apps/emacs.png:
22955         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
22956         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
22957         * nt/icons/emacs.ico: New icom update.
22959 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
22961         Avoid missing inline functions from lisp.h in TAGS
22963         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
22964         need to end each invocation with a semi-colon.
22965         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
22966         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
22967         inline functions defined immediately after each invocation, and
22968         also avoid tagging every invocation of these macros.
22970 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
22972         A better fix for bug#21739
22974         * src/buffer.c (set_update_modelines_for_buf): New function.
22975         (Fkill_buffer): Use it to set the global variable
22976         update_mode_lines if the killed buffer was displayed in some
22977         window.  Don't set windows_or_buffers_changed.  This is a better
22978         fix for bug#21739 than the previous fix, since it will cause only
22979         redisplay of mode lines, not of entire windows, but will still
22980         catch attention of x_consider_frame_title in xdisp.c, which
22981         redraws the frame title.
22983 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
22985         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
22986         tar.bz2 and tar.xz archives.
22988 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
22990         Fix infloop in redisplay introduced by a recent change
22992         * src/xdisp.c (redisplay_internal): Avoid inflooping when
22993         redisplaying the selected window sets the selected frame's
22994         redisplay flag.  (Bug#21745)
22996 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
22998         * lisp/emacs-lisp/thunk.el: Better documentation.
23000 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
23002         Replace the old icon for Windows and Mac OSX
23004         * nt/icons/emacs.ico:
23005         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
23006         Use the new icons.
23008 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
23010         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
23011         `load-path' should contain only directory names.
23013 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
23015         New library thunk.el
23017         thunk.el is extracted from stream.el in ELPA, with additional tests.
23019         * lisp/emacs-lisp/thunk.el: New file.
23020         * test/automated/thunk-tests.el: New file.
23021         * etc/NEWS: Add information about thunk.el
23023 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
23025         Fix bug#21669
23027         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
23028         calling low-level functions.
23030         * test/automated/file-notify-tests.el (file-notify--test-timeout):
23031         Decrase to 6 seconds for remote directories.
23032         (file-notify-test02-events): Expect different number of
23033         `attribute-changed' events for the local and remote cases.  Apply
23034         short delays between the operations, in order to receive all
23035         events in the remote case.  Combine `attribute-change' tests.
23036         (Bug#21669)
23038 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
23040         Decode the HTML source when displaying it in EWW
23042         * lisp/net/eww.el (eww-view-source): Decode the HTML source
23043         according to its headers.
23045 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
23047         New default icon
23049         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
23050         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
23051         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
23052         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
23053         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
23054         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
23055         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
23056         Move the old logo files to emacs23.*.
23057         * etc/images/icons/hicolor/128x128/apps/emacs.png:
23058         * etc/images/icons/hicolor/16x16/apps/emacs.png:
23059         * etc/images/icons/hicolor/24x24/apps/emacs.png:
23060         * etc/images/icons/hicolor/32x32/apps/emacs.png:
23061         * etc/images/icons/hicolor/48x48/apps/emacs.png:
23062         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
23063         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
23064         New files.
23065         * etc/images/icons/README: Update the copyright information.
23067 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
23069         Fix redisplay of frame title when current buffer is killed
23071         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
23072         non-zero value, to redisplay more than just the affected windows.
23073         (Bug#21739)
23075 2015-10-23  Anders Lindgren  <andlind@gmail.com>
23077         NextStep maximization and NSTRACE rewrite
23079         Full-height, full-width, and maximized windows now cover the
23080         entire screen (except the menu bar), including the part where the
23081         system dock is placed.  The system zoom animation is no longer
23082         used.
23084         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
23085         original size.
23087         * src/nsterm.m (ns_menu_bar_height): New function, return height of
23088         the menu bar, or 0 when it's hidden.
23089         (constrain_frame_rect): New function for constraining a frame.
23090         (ns_constrain_all_frames): Set frame size explicitly rather than
23091         relying on the system doing it for us by writing back the current
23092         frame size.
23093         (windowWillUseStandardFrame): Register non-maximized width or
23094         height as new user size.  When entering full width or height,
23095         the other size component is taken from the user size.
23096         (fullscreenState): New method for accessing the fullscreen state.
23097         (constrainFrameRect): Restrict frame to be placed under the menu bar,
23098         if present.  The old version, sometimes, restricted the height of a
23099         frame to the screen, this version never does this.
23100         (zoom): Perform zoom by setting the frame to the full size of the
23101         screen (minus the menu bar).  The default system function, with the
23102         zoom animation, is no longer used, as the final frame size doesn't
23103         cover the entire screen.
23105         Rework how to constrain resizing to the character grid.  The old
23106         system used "resizeIncrements" in NSWindows.  However, once a frame
23107         was resized so that it was not aligned to the text grid, it
23108         remained unaligned even after a resize.  In addition, it conflicted
23109         when resizing a fullheight window.
23111         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
23112         unless when pixelwise frame resizing is enabled.
23113         (updateFrameSize, initFrameFromEmacs)
23114         (toggleFullScreen, handleFS): Don't set resizeIncrements.
23116         Redesign the NS trace system.  The call structure is represented
23117         using indentations and vertical lines.  The NSTRACE macro accepts
23118         printf-style arguments.  New macros for printing various
23119         information.
23121         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
23122         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
23123         block (typically a function), accept printf-style arguments.
23124         (NSTRACE_MSG): Macro for extra information, accepts
23125         printf-style arguments.
23126         (NSTRACE_what): Macros for printing various types.
23127         (NSTRACE_FMT_what): Macro with printf format string snippets.
23128         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
23129         corresponds to NSTRACE_FMT_what.
23130         (NSTRACE_RETURN): Macro to print return value, accept
23131         printf-style arguments.
23132         (NSTRACE_RETURN_what): Macros to print return value for
23133         various types.
23135         * src/nsterm.m: Remove old NSTRACE macro
23136         * src/nsterm.m (nstrace_num): Trace counter.
23137         (nstrace_depth): Current call depth.
23138         (nstrace_leave): NSTRACE support function, called when the
23139         local variable "nstrace_enabled" goes out of scope using the
23140         "cleanup" extension.
23141         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
23142         (constrain_frame_rect, ns_constrain_all_frames)
23143         (ns_update_auto_hide_menu_bar, ns_update_begin)
23144         (ns_update_window_begin, update_window_end, ns_update_end)
23145         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
23146         (ns_frame_rehighlight, x_make_frame_visible)
23147         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
23148         (x_destroy_window, x_set_offset, x_set_window_size)
23149         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
23150         (ns_defined_color, frame_set_mouse_pixel_position)
23151         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
23152         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
23153         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
23154         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
23155         (dumpcursor, ns_draw_vertical_window_border)
23156         (ns_draw_window_divider, ns_draw_relief)
23157         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
23158         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
23159         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
23160         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
23161         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
23162         (ns_create_terminal, ns_term_init, sendEvent)
23163         (applicationDidFinishLaunching, applicationDidBecomeActive)
23164         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
23165         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
23166         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
23167         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
23168         (mouse_autoselect_window, in_window, mouseDragged)
23169         (rightMouseDragged, otherMouseDragged, windowShouldClose)
23170         (updateFrameSize, windowWillResize, windowDidResize)
23171         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
23172         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
23173         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
23174         (windowDidEnterFullScreen, windowWillExitFullScreen)
23175         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
23176         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
23177         (draggingEntered, performDragOperation, validRequestorForSendType)
23178         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
23179         (EmacsScroller_initFrame, EmacsScroller_setFrame)
23180         (EmacsScroller_dealloc, condemn, reprieve, judge)
23181         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
23182         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
23184         * src/nsfns.m: Remove old NSTRACE macro
23185         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
23186         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
23187         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
23189         * src/nsimage.m: Remove old NSTRACE macro
23190         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
23191         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
23193         * src/nsmenu.m: Remove old NSTRACE macro
23194         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
23195         Use new trace system.
23197 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
23199         No need to use eval-and-compile
23201         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
23202         autoload epg functions.
23204 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
23206         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
23208         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
23209         epg-context-set-passphrase-callback, epg-decrypt-string, and
23210         epg-encrypt-string; require epg when compiling for the setf-method
23211         for epg-context-armor. (bug#21724)
23213 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
23215         Include file cleanup for w32 files in src directory
23217         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
23218         fontset.h, blockinput.h.
23219         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
23220         charset.h, fontset.h.
23221         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
23222         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
23223         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
23224         in an ifdef-ed away block.
23225         Include fcntl.h for CYGWIN.
23226         (set_frame_param): Remove unused function.
23227         * src/w32select.c: Don't include charset.h and composite.h.
23228         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
23229         due to pointer signedness mismatches.
23230         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
23231         due to pointer signedness mismatches.
23232         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
23233         process.h, dispextern.h.
23234         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
23235         (Fw32_application_type): Avoid compiler warnings due to pointer
23236         signedness mismatches.
23237         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
23238         character.h, charset.h, dispextern.h.
23239         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
23240         to pointer signedness mismatches.
23241         * src/w32inevt.c: Don't include dispextern.h, window.h,
23242         termhooks.h, w32heap.h.
23243         * src/w32font.c: Don't include dispextern.h, character.h,
23244         charset.h, fontset.h, font.h.
23245         (intern_font_name, add_font_entity_to_list)
23246         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
23247         (list_all_matching_fonts): Avoid compiler warnings due to pointer
23248         signedness mismatches.
23249         * src/w32fns.c: Don't include character.h, intervals.h,
23250         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
23251         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
23252         (w32_color_map_lookup, add_system_logical_colors_to_map)
23253         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
23254         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
23255         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
23256         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
23257         compiler warnings, mainly due to pointer signedness mismatches.
23258         (unwind_create_frame_1): Remove unused function.
23259         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
23260         window.h, termhooks.h, dispextern.h.
23261         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
23262         signedness mismatch.
23263         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
23264         w32heap.h.
23266 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
23268         Improve doc-view wrt. auto-revert-mode
23270         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
23271         is corrupted (bug#21729).
23272         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
23274 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
23276         Describe dired-do-compress-to in the manual
23278         * etc/NEWS: Update.
23280         * lisp/dired-aux.el: Fix typo.
23282         * doc/emacs/dired.texi: Add entry.
23284 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
23286         Further fix for proper locale handling in tramp-gvfs.el
23288         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
23289         Just suppress LC_MESSAGES locale category settings.
23291 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
23293         New lispref section “Security Considerations”
23295         This attempts to document some of the issues recently discussed
23296         on emacs-devel, and to indicate other such issues.  The section
23297         could be a lot longer.
23298         * doc/lispref/os.texi (Security Considerations):
23299         New node.
23300         * doc/lispref/elisp.texi (Top):
23301         * doc/lispref/processes.texi (Shell Arguments):
23302         * lisp/subr.el (shell-quote-argument):
23303         * src/callproc.c (syms_of_callproc):
23304         Reference it.
23306 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
23308         Merge from gnulib
23310         This incorporates:
23311         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
23312         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
23313         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
23314         Copy from gnulib.
23316 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
23318         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
23319         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
23321 2015-10-21  Ken Brown  <kbrown@cornell.edu>
23323         Further include-file cleanup
23325         * src/sheap.c: Include stdlib.h.
23326         * src/unexcw.c: Include string.h.
23328 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
23330         Fix logic in 'server-kill-emacs-query-function'
23332         * lisp/server.el (server-kill-emacs-query-function): Correct the
23333         logic that controls whether the user is asked for confirmation.
23334         (Bug#21723)
23336 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
23338         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
23339         (isearch--lax-regexp-function-p): New function.
23341 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
23343         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
23344         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
23345         around `isearch-regexp-function'.
23347 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
23349         * lisp/isearch.el: Rename word search to regexp-function search.
23350         `isearch-word' went well beyond its original purpose, and the name
23351         no longer makes sense.  It is now called
23352         `isearch-regexp-function', and its value should always be a function
23353         that converts a string to a regexp (though setting it to t is still
23354         supported for now).
23355         (isearch-word): Make obsolete.
23356         (isearch-regexp-function): New variable.
23357         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
23358         (with-isearch-suspended, isearch-toggle-regexp)
23359         (isearch-toggle-word, isearch-toggle-symbol)
23360         (isearch-toggle-character-fold, isearch-query-replace)
23361         (isearch-occur, isearch-highlight-regexp)
23362         (isearch-search-and-update, isearch-message-prefix)
23363         (isearch-search-fun-default, isearch-search)
23364         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
23365         Use it.
23366         (isearch-lazy-highlight-regexp-function): New var.
23367         (isearch-lazy-highlight-word): Make obsolete.
23368         (isearch--describe-regexp-mode): New function.
23369         (isearch--describe-word-mode): Make obsolete.
23371         * lisp/info.el (Info-isearch-search):
23372         * lisp/replace.el (replace-search, replace-highlight):
23373         * lisp/obsolete/longlines.el (longlines-search-function):
23374         * lisp/hexl.el (hexl-isearch-search-function):
23375         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
23376         Use the new var.
23378 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
23380         Add dired-do-compress-to command bound to "c"
23382         * lisp/dired-aux.el (dired-shell-command): Use the caller's
23383           `default-directory', return the result of `process-file'.
23384         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
23385         used by default.
23386         (dired-compress-files-alist): New defvar.
23387         (dired-do-compress-to): New command.
23389         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
23390         (dired-do-compress-to): Add an autoload entry.
23392         * etc/NEWS: Add two entries.
23394 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
23396         Make RefTeX work with LaTeX subfiles package
23398         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
23399         document class argument as master file for referencing purposes.
23401 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
23403         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
23405 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
23407         Include-file cleanup for src directory
23409         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
23410         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
23411         but does not include it directly.  As a general rule, a source
23412         file should include foo.h if it needs the interfaces that foo.h
23413         defines.
23414         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
23415         systime.h.
23416         * src/atimer.c: Don’t include blockinput.h.
23417         * src/buffer.c: Include coding.h, systime.h.  Don’t include
23418         keyboard.h, coding.h.
23419         * src/callint.c: Don’t include commands.h, keymap.h.
23420         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
23421         systty.h, termhooks.h.
23422         * src/casetab.c: Don’t include character.h.
23423         * src/category.c: Don’t include charset.h, keymap.h.
23424         * src/ccl.h: Don’t include character.h.
23425         * src/character.c: Don’t include charset.h.
23426         * src/charset.c: Don’t include disptab.h.
23427         * src/chartab.c: Don’t include ccl.h.
23428         * src/cm.c: Don’t include frame.h, termhooks.h.
23429         * src/cmds.c: Don’t include window.h, dispextern.h.
23430         * src/coding.c: Don’t include window.h, frame.h.
23431         * src/composite.c: Include composite.h.  Don’t include window.h,
23432         font.h.
23433         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
23434         * src/dbusbind.c: Don’t include frame.h.
23435         * src/decompress.c: Don’t include character.h.
23436         * src/dired.c: Don’t include character.h, commands.h, charset.h.
23437         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
23438         process.h, timespec.h.  Include systime.h.
23439         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
23440         * src/editfns.c: Include composite.h.  Don’t include frame.h.
23441         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
23442         commands.h, systty.h..
23443         * src/fileio.c: Don’t include intervals.h, dispextern.h.
23444         Include composite.h.
23445         * src/filelock.c: Don’t include character.h, systime.h.
23446         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
23447         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
23448         * src/font.c: Include termhooks.h.
23449         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
23450         struct composition_it, struct face, struct glyph_string.
23451         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
23452         intervals.h, window.h, termhooks.h.
23453         * src/frame.c: Don’t include character.h, commands.h, font.h.
23454         * src/frame.h: Don’t include dispextern.h.
23455         * src/fringe.c: Don’t include character.h.
23456         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
23457         character.h, charset.h, fontset.h.
23458         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
23459         fontset.h.
23460         * src/ftxfont.c: Don’t include dispextern.h, character.h,
23461         charset.h, fontset.h.
23462         * src/gfilenotify.c: Don’t include frame.h, process.h.
23463         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
23464         Don’t include syssignal.h, buffer.h, charset.h, font.h.
23465         * src/gtkutil.h: Don’t include frame.h.
23466         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
23467         Don’t include character.h.
23468         * src/indent.c: Don’t include keyboard.h, termchar.h.
23469         * src/inotify.c: Don’t include character.h, frame.h.
23470         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
23471         * src/intervals.c: Don’t include character.h, keyboard.h.
23472         * src/intervals.h: Don’t include dispextern.h, composite.h.
23473         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
23474         Include coding.h.
23475         * src/keyboard.h: Don’t incldue systime.h.
23476         * src/keymap.c: Don’t include charset.h, frame.h.
23477         * src/lread.c: Include dispextern.h and systime.h.
23478         Don’t include frame.h.  Include systime.h.
23479         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
23480         * src/menu.c: Include character.h, coding.h.  Don’t include
23481         dispextern.h.
23482         * src/menu.h: Don’t include systime.h.
23483         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
23484         intervals.h, termhooks.h.
23485         * src/print.c: Include coding.h.  Don’t include keyboard.h,
23486         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
23487         Add forward decl of struct terminal.
23488         * src/process.c: Don’t include termhooks.h, commands.h,
23489         dispextern.h, composite.h.
23490         * src/region-cache.c: Don’t include character.h.
23491         * src/scroll.c: Don’t include keyboard.h, window.h.
23492         * src/search.c: Don’t include category.h, commands.h.
23493         * src/sound.c: Don’t include dispextern.h.
23494         * src/syntax.c: Don’t include command.h, keymap.h.
23495         * src/sysdep.c: Don’t include window.h, dispextern.h.
23496         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
23497         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
23498         * src/terminal.c: Include character.h.
23499         Don’t include charset.h, coding.h.
23500         * src/textprop.c: Don’t include character.h.
23501         * src/undo.c: Don’t include character.h, commands.h, window.h.
23502         * src/unexsol.c: Don’t include character.h, charset.h.
23503         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
23504         window.h, dispextern.h, blockinput.h, character.h, font.h.
23505         * src/widgetprv.h: Don’t include widget.h.
23506         * src/window.c: Don’t include character.h, menu.h, intervals.h.
23507         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
23508         macros.h, process.h.
23509         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
23510         intervals.h.
23511         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
23512         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
23513         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
23514         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
23515         * src/xgselect.c: Don’t include timespec.h, frame.h.
23516         Include systime.h.
23517         * src/xgselect.h: Don’t include time.h.
23518         Use a forward decl to struct timespec instead.
23519         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
23520         dispextern.h.  Include systime.h.
23521         * src/xml.c: Don’t include character.h.
23522         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
23523         * src/xselect.c: Don’t include dispextern.h, character.h,
23524         buffer.h, process.h.
23525         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
23526         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
23527         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
23529 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
23531         (/ N) now returns the reciprocal of N
23533         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
23534         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
23535         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
23536         (color-xyz-to-srgb, color-xyz-to-lab):
23537         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
23538         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
23539         (shr-color-hsl-to-rgb-fractions):
23540         Exploit the change to simplify the code a bit.
23541         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
23542         Don’t complain about single-argument calls to ‘/’.
23543         * src/data.c (arith_driver, float_arith_driver):
23544         Implement the change.
23546 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
23548         Call vc-dir-refresh after stash operations
23550         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
23551         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
23553         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
23554         since it can be abbreviated (as returned by vc-find-root).
23556 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
23558         * lisp/vc/vc-svn.el:
23559         * lisp/vc/vc-mtn.el:
23560         * lisp/vc/vc-hg.el:
23561         * lisp/vc/vc-cvs.el:
23562         * lisp/vc/vc-git.el:
23563         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
23564         Its usages have been replaced with vc-run-delayed.
23566 2015-10-20  Dima Kogan  <dima@secretsauce.net>
23568         Fix memory leak in fontset handling
23570         * src/font.c (copy_font_spec): Make a deep copy of the input
23571         argument FONT.  (Bug#21651)
23573 2015-10-20  Michael Sperber  <mike@xemacs.org>
23575         * lisp/gnus/mailcap.el (mailcap-mime-data):
23576         Conditonalize `doc-view-mode', which does not exist on XEmacs.
23578 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
23580         Update the way directories are compressed
23582         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
23583         for *.tar.gz decompression to use a pipe.
23584         Add an entry for the default directory compression (to *.tar.g).
23585         (dired-compress-file): Update.
23587         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
23589 2015-10-20  Michael Sperber  <mike@xemacs.org>
23591         Unbreak `group' option for `mail-sources'
23593         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
23594         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
23595         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
23597 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
23599         New function seq-position
23601         * lisp/emacs-lisp/seq.el (seq-position): New function.
23602         * test/automated/seq-tests.el: New tests for seq-position.
23603         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
23605 2015-10-19  Ken Brown  <kbrown@cornell.edu>
23607         Enable --with-wide-int build on 32-bit Cygwin
23609         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
23610         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
23612 2015-10-19  Glenn Morris  <rgm@gnu.org>
23614         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
23616 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
23618         Resurrect image loading under auto-image-file-mode
23620         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
23621         'openp' specially.  This special case was lost in the changes on
23622         2015-08-18.  (Bug#21685)
23624 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
23626         Fix return value of 'set-file-extended-attributes'
23628         * lisp/files.el (set-file-extended-attributes): Return non-nil
23629         when setting either ACLs or SELinux context succeeds.  Document
23630         the return value.  (Bug#21699)
23632         * doc/lispref/files.texi (Changing Files): Document the return
23633         value of set-file-extended-attributes.
23635 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
23637         Improve documentation of functions that change files
23639         * doc/lispref/files.texi (Changing Files): Document that these
23640         functions signal an error on failure.
23642 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
23644         Fix doc string of 'shell-quote-argument'
23646         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
23648 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
23650         Some minor Tramp changes
23652         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
23654         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
23655         Expand `tramp-auto-save-directory'.
23657 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
23659         Minor edits in Tramp
23661         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
23662         Declare it.
23664         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
23665         Remove declaration.
23667 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
23669         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
23671 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
23673         Avoid crashes when redisplayng a window changes faces or fonts
23675         * src/xdisp.c (redisplay_internal): If redisplaying the selected
23676         window or one of the frames turns on the frame's 'redisplay' flag,
23677         redisplay again.  (Bug#21428)
23679         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
23681 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
23683         Solve timimg issues in file-notify-tests.el
23685         * test/automated/file-notify-tests.el (file-notify-test02-events):
23686         Rectify `attribute-change' tests.  There are timing issues with
23687         gfilenotify.  (Bug#21669)
23689 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
23691         Fix quoting of data within htmlfontify doc
23693         * doc/misc/htmlfontify.texi (Data Structures, Customization):
23694         Fix quoting of data structures.  A Lisp quote is needed only
23695         when data appears within Lisp code.
23697 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
23699         * lisp/emacs-lisp/package.el: Reload archive-contents if
23700         priorities change.
23701         (package--old-archive-priorities): New variable.
23702         (package-read-all-archive-contents, package-menu--refresh): Use it
23703         to decide when the `package-archive-contents' needs to be read
23704         again.
23706 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
23708         Make src headers idempotent and standalone
23710         Redo src/*.h so that each include file is idempotent (that is, can
23711         be included multiple times with the latter inclusions having no
23712         effect) and standalone (that is, can be included by itself,
23713         with no include file other than config.h needed as a prerequisite).
23714         This is standard practice in GNU programs nowadays.
23715         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
23716         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
23717         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
23718         * src/regex.h [emacs]:
23719         * src/syntax.h, src/systty.h, src/termhooks.h:
23720         Include lisp.h, for Lisp_Object.
23721         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
23722         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
23723         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
23724         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
23725         * src/termopts.h, src/tparam.h, src/unexec.h:
23726         Protect against multiple inclusion.
23727         * src/buffer.h: Include character.h, for STRING_CHAR.
23728         * src/emacsgtkfixed.h (struct frame):
23729         * src/fontset.h (struct face):
23730         * src/region-cache.h (struct buffer):
23731         * src/termhooks.h (struct glyph):
23732         * src/xsettings.h (struct x_display_info):
23733         Add possibly-forward decl.
23734         * src/syntax.h: Include buffer.h, for BVAR.
23735         * src/sysselect.h: Include lisp.h, for eassume.
23736         * src/termchar.h: Include <stdio.h>, for FILE.
23737         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
23738         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
23740 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
23742         Handle symlink targets containing spaces in tramp-gvfs.el
23744         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
23745         Handle symlink targets containing spaces.
23747 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
23749         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
23751         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
23752         same reason that `load-path' shouldn't.  Setting it via the customize
23753         interface is a trap for the user.
23755         Installed themes commonly add themselves to this variable, which means
23756         its value is not fit for being saved (it will permanently remember dirs
23757         that don't exist anymore).
23759         This is aggravated by the fact that Emacs always applies the `user'
23760         theme on top of any theme that's loaded, since this will apply the old
23761         variable value and remove any new directories that had been recently
23762         added by themes themselves.
23764         Not to mention, we already have `custom-theme-directory', which is safe
23765         to customize.
23767 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
23769         * lisp/mpc.el: Rename the new toggling commands.
23770         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
23771         (mpc-toggle-shuffle): Add "-toggle" in the name.
23773 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
23775         Improve the doc string of 'completion-boundaries'
23777         * lisp/minibuffer.el (completion-boundaries): Rename the argument
23778         TABLE to COLLECTION, for consistency with other high-level
23779         completion functions.  Document how COLLECTION is called if it
23780         is a function.  (Bug#21644)
23782 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
23784         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
23786 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
23788         Make dired-do-compress work for *.zip files
23790         * lisp/dired-aux.el (dired-check-process): Transform the top-level
23791           comment into a docstring.
23792         (dired-shell-command): New command.  This mirrors
23793         `dired-check-process', but is more user-friendly for passing
23794         arguments.
23795         (dired-compress-file-suffixes): Allow to specify the command switches
23796         along with input (%i) and output (%o) inside the PROGRAM part.
23797         Add an entry for *.zip files, and update the entry for *.tar.gz files
23798         to the new style.  Update the docstring.
23799         (dired-compress-file): When PROGRAM matches %i or %o, use the new
23800         logic.
23801         (dired-update-file-line): Avoid an error when at end of buffer.
23803         Fixes bug#21637.
23805 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
23807         Minor improvement in documentation of internals
23809         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
23811 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
23813         Improve documentation of COLLECTION in completion functions
23815         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
23816         cross-reference to "Programmed Completion".
23818         * src/minibuf.c (Fcompleting_read): Improve the doc string.
23819         (Bug#21644)
23821 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
23823         Add more release info to etc/HISTORY
23825         * etc/HISTORY: Add more release information about 19.x and 20.x
23826         versions.
23828 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
23830         New file etc/HISTORY
23832         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
23833         * etc/HISTORY: New file.
23834         * etc/NEWS: Mention it.
23836 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
23838         js-mode: Don't misindent generator methods
23840         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
23841         generator methods from multiplication operator
23842         (https://github.com/mooz/js2-mode/issues/275).
23844 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
23846         Fix animation timeout delay calculation
23848         * lisp/image.el (image-animate-timeout):
23849         Don’t assume speed is floating-point.
23851 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
23853         Add commands for controlling MPD modes
23855         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
23856         (mpc-cmd-single): New functions.
23857         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
23858         (mpc-mode-menu): Add new commands as menu items.
23860 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
23862         Refer to `(elisp)Basic Completion' in completing-read docstring
23864         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
23865         Completion' in the docstring (bug#21644).
23867 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
23869         * lisp/mpc.el (mpc-format): Always push form to pred
23871 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
23873         Spelling fixes
23875         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
23876         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
23877         Fix misspelling of nonexistent file name.
23879 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
23881         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
23883 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
23885         Some editing fixes in Tramp
23887         * lisp/net/tramp-gvfs.el:
23888         * doc/misc/tramp.texi: "customer option" -> "custom option".
23890         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
23892 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
23894         Use proper localization in tramp-gvfs.el
23896         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
23897         Suppress localized settings in order to proper parse gfvs output.
23899 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
23901         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
23902         Quote argument in proper order.  (Bug#21562)
23904 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
23906         Fix typos in docstrings
23908         * lisp/emacs-lisp/map.el:
23909         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
23910           macros.
23912 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
23914         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
23916 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
23918         Make dired-jump work with tar-subfile-mode
23920         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
23921           emitting an error, switch to `tar-superior-buffer'.
23923 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
23925         * .gitignore: Add build-aux/ar-lib.
23927 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
23929         Better docstrings in seq.el and map.el
23931         * lisp/emacs-lisp/map.el:
23932         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
23934 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
23936         Merge from gnulib
23938         This incorporates:
23939         2015-10-13 binary-io, u64, unistd: port to strict C
23940         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
23941         2015-09-25 c-ctype: port better to z/OS EBCDIC
23942         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
23943         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
23944         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
23945         Copy from gnulib.
23947 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
23949         Take XPNTR private
23951         * src/alloc.c (PURE_POINTER_P): Remove.
23952         All uses replaced with PURE_P.
23953         (XPNTR_OR_SYMBOL_OFFSET): New function.
23954         (XPNTR): Move here from lisp.h.
23955         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
23956         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
23957         Remove unnecessary cast.
23958         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
23959         to avoid an unnecessary runtime test for symbols.
23960         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
23961         Only alloc.c needs XPNTR now.
23963 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
23965         Add MPC play/pause command
23967         * lisp/mpc.el (mpc-toggle-play): New command.
23968         (mpc-mode-map): Bind it to "s".
23969         (mpc-mode-menu): Add corresponding menu item.
23971 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
23973         Add bindings and menu items for prev and next tracks
23975         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
23976         "<" to mpc-prev.
23977         (mpc-mode-menu): Add corresponding menu items
23979 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
23981         Reduce face-related consing during frame creation.
23983         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
23984         attribute list once.
23985         (face-spec-reset-face): Use it instead of building the list.
23987 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
23989         Do process ConfigureNotify events indicating size changes.
23991         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
23992         events don't have the same size, process each one.
23994 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
23996         Derive mpc-mode from special-mode
23998         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
23999         (mpc-mode): Derive from special mode.
24000         (mpc-songs-mode-map): Don't set parent keymap.
24002 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
24004         Fix error messages for when covers are not found.
24006         The last change to mpc-format let the binding to file call
24007         mpc-file-local-copy with nil argument.  Instead, employ if-let here
24008         so nil bindings don't result in needless computation and errors.
24009         * lisp/mpc.el: Require 'subr-x at compile time.
24010         * lisp/mpc.el (mpc-format): Use if-let.
24012 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
24014         Make dired-do-compress work for *.tar.gz files
24016         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
24017           "tar -zxvf" to *.tar.gz; update docstring.
24019         (dired-compress-file): Allow to specify switches after the command in
24020         `dired-compress-file-suffixes'.
24022 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
24024         Make dired-do-compress work for directories
24026         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
24027           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
24028         Also convert the top comment into a docstring.
24030 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
24032         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
24034         ... since it might come straight from the memoizing table.
24036 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
24038         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
24040 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
24042         Use special-mode in eww list modes
24044         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
24045         (eww-buffers-mode): Derive from special-mode and remove redundant
24046         setting of buffer-read-only.
24047         (eww-mode-map): Remove redundant keymap parent setting.
24048         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
24049         Remove redundant keymap suppressions and mappings.
24051 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
24053         Allow setting frame pixel sizes from frame parameters (Bug#21415)
24055         Also fix some misfeatures in frame (re-)sizing code, add more
24056         debugging information and remove some dead code.
24058         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
24059         parameter names when setting `frame-size-history'.
24060         (frame--size-history): New function.
24062         * src/frame.c (frame_inhibit_resize): If frame has not been made
24063         yet, return t if inhibit_horizontal_resize or
24064         inhibit_vertical_resize bit have been set.
24065         (adjust_frame_size): Simplify.
24066         (make_frame): Initialize inhibit_horizontal_resize,
24067         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
24068         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
24069         inhibit_vertical_resize slots.
24070         (x_set_frame_parameters): Handle `text-pixels' specification for
24071         width and height parameters.  Don't consider new_height or
24072         new_width changes.  Call adjust_frame_size instead of
24073         Fset_frame_size.
24074         (x_figure_window_size): Two new arguments x_width and y_width
24075         returning frame's figures width and height.  Calculate tool bar
24076         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
24077         Handle `text-pixels' specification for width and height
24078         parameters.
24079         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
24080         (Qx_set_window_size_1, Qx_set_window_size_2)
24081         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
24082         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
24083         (Qfree_frame_menubar_2): New symbols.
24084         * src/frame.h (structure frame): New booleans
24085         tool_bar_redisplayed, tool_bar_resized,
24086         inhibit_horizontal_resize, inhibit_vertical_resize.
24087         (x_figure_window_size): Update external declaration.
24088         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
24089         calling gtk_window_resize.
24090         (update_frame_tool_bar): Make inhibiting of frame resizing more
24091         discriminative.  Set tool_bar_resized bit.
24092         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
24093         resizing more discriminative.  Call adjust_frame_size instead of
24094         x_set_window_size.
24095         (Fx_create_frame): Handle x_width and x_height if
24096         set by x_figure_window_size.
24097         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
24098         subtract 3 from tool bar height.
24099         (x_set_window_size): Add frame_size_history_add call.
24100         (x_new_font): Call adjust_frame_size instead of
24101         x_set_window_size.
24102         * src/w32fns.c (x_change_tool_bar_height): Reset
24103         tool_bar_redisplayed and tool_bar_resized bits when adding tool
24104         bar.  Make inhibiting of frame resizing more discriminative.
24105         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
24106         (Fx_create_frame): Handle x_width and x_height if set by
24107         x_figure_window_size.  Set size hints before adjusting frame size.
24108         (x_create_tip_frame): Adjust x_figure_window_size call.
24109         * src/w32term.c (x_set_window_size): Add frame_size_history_add
24110         call.
24111         * src/widget.c (set_frame_size): Remove dead code.  Add
24112         frame_size_history_add call.  When frame_resize_pixelwise is t
24113         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
24114         pixel_width and pixel_height.
24115         (update_various_frame_slots): Remove dead code.
24116         (EmacsFrameResize): Add more information in
24117         frame_size_history_add call.
24118         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
24119         is not set.
24120         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
24121         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
24122         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
24123         tool_bar_resized bits when adding tool bar.  Make inhibiting of
24124         frame resizing more discriminative.
24125         (Fx_create_frame): Handle x_width and x_height if set by
24126         x_figure_window_size.  Set size hints before adjusting frame size.
24127         (x_create_tip_frame): Adjust x_figure_window_size call.
24128         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
24129         (set_frame_menubar): On Lucid never add core-border-width to
24130         avoid that adding XtNinternalBorderWidth adds it again.
24131         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
24132         * src/xterm.c (x_new_font): In non-toolkit case handle size
24133         change of menu bar.
24134         (x_set_window_size_1): Fix calls to frame_size_history_add.
24135         (x_wm_set_size_hint): Remove dead code.  Set
24136         size_hints.min_width and size_hints.min_height to base_width and
24137         base_height.
24139 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
24141         * test/automated/file-notify-tests.el (file-notify--test-timeout):
24142         Add docstring.  Increase to 10 seconds for remote
24143         directories.  (Bug#21669)
24145 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
24147         Unmacroize ebrowse.c and etags.c a bit
24149         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
24150         (streq, filename_eq, set_flag, has_flag): Now inline functions.
24151         (set_flag): First arg is now an address, not an lvalue.
24152         All callers changed.
24153         (filename_eq, set_flag, has_flag):
24154         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
24155         All callers changed.
24156         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
24157         Now inline functions.  Remove asserts that are unnecessary these
24158         days (and in some cases were too-generous anyway).
24160 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
24162         Use highlight for current items
24164         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
24165         Apply highlight face instead of region face.
24167 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
24169         Search for more cover image names in MPC
24171         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
24172         case insensitively
24174 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
24176         Remove or comment out unused variables
24178         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
24179         nontext_cursor, mode_cursor, hand_cursor and count.
24180         (x_change_tool_bar_height): Remove variable old_text_height.
24181         (deliver_wm_chars): Remove variable strip_Alt.
24182         (Fw32_shell_execute): Remove variable document_a.
24183         (Fw32_frame_geometry): Remove variable fullboth.
24184         * src/w32term.c (w32_setup_relief_color): Comment out variable
24185         w32_display_info.
24186         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
24187         (w32_read_socket): Comment out variables rows, columns.
24188         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
24190 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
24192         * src/w32proc.c (sys_select): Fix bitwise test.
24194 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
24196         Minor typo corrections in doc strings
24198         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
24199         Doc fixes.
24201 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
24203         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
24205 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
24207         Attempt to avoid crashes in plist-member
24209         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
24210         and a call to XCDR.  (Bug#21655)
24212 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
24214         * lisp/select.el (gui-get-primary-selection): In
24215         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
24217 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
24219         Support RTF in doc-view
24221         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
24223 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
24225         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
24227 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
24229         Replace the usage of an obsolete function in auth-source.el
24231         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
24232         Replace an usage of `epg-context-set-armor' with `setf'.
24234 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
24236         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
24238 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
24240         Have calc-yank recognize numbers in different bases.
24242         * lisp/calc/calc-yank.el (math-number-regexp): New function.
24243         (calc-yank): Use `math-number-regexp' to recognize numbers.
24245 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
24247         Handle an opaque-move X11 window manager operation more efficiently
24249         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
24250         followed by more ConfigureNotify events for the same window, process
24251         only the last one.
24253 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
24255         Fix cursor setting for tip frame; re-enable cursor generation
24257         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
24258         attributes sent when creating the new X window.  Don't skip setting
24259         the pointerColor parameter.
24261 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
24263         Rewrite x_set_mouse_color to sync less
24265         We can track serial numbers of X requests and correlate error events
24266         with the associated requests.  This way we can identify errors for
24267         specific calls without having to use XSync after every one.
24269         * src/xfns.c (enum mouse_cursor): New type.
24270         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
24271         (mouse_cursor_types): New array listing the Lisp variables and default
24272         cursor appearances for each cursor type.
24273         (x_set_mouse_color_handler): New function; checks error event serial
24274         number against submitted requests.
24275         (x_set_mouse_color): Updated to use the new error handler callback,
24276         and to be more table-driven, to simplify repetitious code.
24278 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
24280         Add x_catch_errors_with_handler
24282         * src/xterm.c (struct x_error_message_stack): Add new fields for a
24283         callback function and associated data pointer.
24284         (x_error_catcher): If the callback function is set, call it after
24285         saving the error message string.
24286         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
24287         accepts a callback function and data pointer.
24288         (x_catch_errors): Now a wrapper function.
24289         * src/xterm.h (x_special_error_handler): New typedef.
24290         (x_catch_errors_with_handler): Declare.
24292 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
24294         Introduce x_uncatch_errors_after_check to reduce XSync calls
24296         Both x_had_errors_p and x_check_errors call XSync, so if they're
24297         immediately followed by x_uncatch_errors, its XSync call will be
24298         redundant, resulting in a wasted round trip to the X server.
24300         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
24301         x_uncatch_errors without the XSync call.
24302         (XTmouse_position, x_wm_supports):
24303         * src/xfns.c (x_set_mouse_color):
24304         * src/xmenu.c (Fx_menu_bar_open_internal):
24305         * src/xselect.c (x_own_selection, x_get_foreign_selection):
24306         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
24307         * src/xterm.h (x_uncatch_errors_after_check): Declare.
24309 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
24311         Document the optional prefix to `calc-yank'
24313         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
24314         prefix to `calc-yank'.
24315         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
24316         the Calc buffer are yanked back unchanged.
24318 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
24320         * lisp/calendar/calendar.el: Display buffer before executing body.
24322         In each use of this macro, the modeline is derived from a window width
24323         calculation, which will be wrong if (display-buffer) splits the window
24324         horizontally.
24326 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
24328         Use ‘echo’ safely with ‘\’ or leading ‘-’
24330         POSIX says that ‘echo FOO’ produces implementation-defined output
24331         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
24332         behavior in that case.
24333         * Makefile.in (removenullpaths): Remove.
24334         (epaths-force): Rewrite to avoid the need for ‘echo’.
24335         (install-etc): Be clearer about escaping the shell metacharacters
24336         ‘\’ and ‘$’.
24337         * Makefile.in (install-arch-indep, install-etcdoc):
24338         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
24339         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
24340         * configure.ac, lib-src/rcs2log, make-dist:
24341         * src/Makefile.in (lisp.mk):
24342         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
24343         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
24344         if $foo can contain arbitrary characters.
24345         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
24346         * doc/lispref/two-volume.make (vol1.pdf):
24347         * test/etags/make-src/Makefile (web ftp publish):
24348         Use ‘printf’ rather than ‘echo -e’.
24350 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
24352         Allow numbers with different radixes to be yanked.
24354         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
24355         default base 10.
24357 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
24359         Improve CHECK_IMPURE and PURE_P speedup
24361         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
24363 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
24365         Use events instead of chars to keep track of steps.
24367         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
24368         to keep track of steps.
24370 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
24372         Fix --enable-gcc-warnings problem with older GCC
24374         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
24375         This is for building with --enable-gcc-warnings with
24376         GCC 4.6 through 5.0.
24378 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
24380         Fix vertical-motion in truncated lines that end in a stretch
24382         * src/indent.c (Fvertical_motion): Expect overshoot when point is
24383         beyond window margin and lines are truncated, even if we have a
24384         stretch at point.  (Bug#21468)
24386 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
24388         Avoid link-time errors due to inline functions
24390         * src/emacs.c: Include puresize.h, to avoid link-time errors in
24391         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
24392         inline functions.
24394 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
24396         * src/data.c (Faset): Fix last change.
24398 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
24400         CHECK_IMPURE and PURE_P speedup
24402         * src/intervals.c (create_root_interval):
24403         Do CHECK_IMPURE only for strings; not needed for buffers.
24404         Prefer ! STRINGP to BUFFERP, for a tad more speed.
24405         * src/puresize.h (CHECK_IMPURE, PURE_P):
24406         Now inline functions instead of macros.
24407         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
24408         All callers changed.
24409         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
24410         All callers changed.
24412 2015-10-09  Noah Friedman  <friedman@splode.com>
24414         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
24416 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
24418         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
24420         our after-change-function, rather than re-adding it if it was removed.
24422 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
24424         * lisp/cedet/ede: Silence some compiler warnings
24426         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
24427         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
24428         (ede-apply-object-keymap, ede-reset-all-buffers)
24429         (ede-auto-add-to-target): Use dolist.
24430         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
24431         Use field names rather than initarg names in `oref'.
24432         (ede-load-project-file): Remove unused var `file'.
24433         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
24434         (ede-set): Remove unused var `a'.
24436         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
24437         (ede-project-autoload): Avoid the old-style "name" argument.
24438         (ede-emacs-find-matching-target): Use field names rather than initarg
24439         names in `oref'.
24441         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
24442         (ede-linux-load, ede-project-autoload): Avoid the old-style
24443         "name" argument.
24444         (ede-linux-find-matching-target): Use field names rather than initarg
24445         names in `oref'.
24447 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
24449         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
24451 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
24453         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
24454         indenting too far after ":-".
24456 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
24458         Update case-table and categories of recently added characters
24460         * lisp/international/characters.el: Update information about Latin
24461         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
24462         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
24463         blocks.  (Byug#21654)
24465 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
24467         * src/frame.c (adjust_frame_size): In minibuffer-only windows
24468         don't count minibuffer height twice.  (Bug#21643)
24470 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
24472         Avoid inflooping in font-lock
24474         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
24475         inhibit-field-text-motion around the call to
24476         line-beginning-position, to avoid inflooping.  (Bug#21615)
24478 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
24480         Refactor duplicated code; ensure default is in completions
24482         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
24483         New function.
24484         (reftex-extract-bib-entries): Use it.
24485         (reftex-extract-bib-entries-from-thebibliography): Use it.
24487 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
24489         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
24490         in the example.
24492 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
24494         * lisp/calc/calc.el: Silence byte-compiler warnings.
24495         (calc-scan-for-dels): Use ignore-errors.
24496         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
24497         (calc-read-key-sequence): Remove unused var `prompt2'.
24498         (calc-kill-stack-buffer): Remove unused var `buflist'.
24499         (calc): Remove unused var `oldbuf'.
24500         (calc-refresh): Use inhibit-read-only.
24501         (calc-can-abbrev-vectors): Declare.
24502         (calc-record): Remove unused var `mainbuf'.
24503         (math-sub-bignum): Remove unused var `sum'.
24504         (math-svo-c, math-svo-wid, math-svo-off): Declare.
24506 2015-10-08  Daiki Ueno  <ueno@gnu.org>
24508         Use g_clear_error instead of g_error_free
24510         * src/image.c: Define g_clear_error instead of g_error_free.
24511         (init_svg_functions): Resolve symbol g_clear_error instead of
24512         g_error_free.
24513         (svg_load_image): Use g_clear_error instead of g_error_free, to
24514         suppress GLib warnings when ERR is not set.  See bug#21641.
24516 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
24518         * src/image.c (image_size_error): Simplify.
24520 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
24522         Fix problems caught with --enable-gcc-warnings
24524         * src/image.c (lookup_rgb_color):
24525         * src/xfns.c (x_defined_color):
24526         * src/xterm.c (x_parse_color):
24527         Remove unused locals.
24529 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
24531         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
24533 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
24535         Format initial input uniformly
24537         * lisp/calc/calc.el (calc-digit-start-entry): New function.
24538         * lisp/calc/calc.el (calcDigit-start):
24539         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
24540         Use `calc-digit-start-entry' to format input.
24542 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
24544         Disable non-working pointerColor setting for X tooltip frame
24546         It generates a bunch of server traffic, but there's some bug wherein
24547         the new mouse cursor settings don't seem to get used.  In most
24548         situations the cursor isn't likely to be seen anyway, so it's not
24549         urgent to fix.
24551         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
24553 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
24555         Reduce some unnecessary X calls
24557         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
24558         call.  If border width is wanted, get it from the XGetGeometry call
24559         instead of calling XGetWindowAttributes on the same window.  Skip some
24560         X calls if we've already detected an error from the X server.
24561         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
24562         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
24564 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
24566         Reduce color allocation/query traffic in the TrueColor case
24568         When working with an X visual with TrueColor class, pixel values can
24569         be generated from the RGB values according to mask value provided by
24570         the server on connection.  Some of the image-handling code was already
24571         doing this.
24573         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
24574         lookup_rgb_color.
24575         (x_mutable_colormap): New function.
24576         * src/image.c (lookup_rgb_color): Move pixel composition code to
24577         x_make_truecolor_pixel.
24578         (x_kill_gs_process): Call x_mutable_colormap.
24579         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
24580         x_mutable_colormap.
24581         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
24582         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
24583         pixel value into RGB values directly, and don't send a request to the
24584         server.
24585         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
24586         value with x_make_truecolor_pixel.
24587         (x_copy_color): For an immutable color map, just return the provided
24588         pixel value.
24590 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
24592         Cache XParseColor results in the X display info structure
24594         With repeated lookups of foreground and background colors for multiple
24595         faces per frame, we issue a lot of redundant color name lookups to the
24596         X server, waiting every time for the response.  On a remote network
24597         with, say, 30ms round-trip time, this can add nearly a full second to
24598         creation of a new frame.
24600         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
24601         * src/image.c (get_spec_bg_or_alpha_as_argb):
24602         (xpm_init_color_cache, xpm_lookup_color):
24603         * src/xfns.c (x_defined_color):
24604         * src/xterm.c (x_parse_color): New function; caches color names not
24605         starting with "#" in the display-info structure.
24606         (x_delete_display): Delete the cache content.
24607         * src/xterm.h (struct color_name_cache_entry): New type.
24608         (x_parse_color): Declare.
24609         (struct x_display_info): Add a new field for the cache.
24611 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
24613         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
24615 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
24617         Fix segfault in image_size_error
24619         * src/image.c (image_size_error): Pass a Lisp string to
24620         image_error, not a C string.  (Bug#21641)
24622 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
24624         Highlight CSS variable definitions
24626         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
24627         CSS variables.  (Bug#21638)
24629 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
24631         * test/automated/tabulated-list-test.el: New file.
24632         Test bug#21639 and some basic functionality.
24634 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
24636         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
24637         Check if column can be sorted before trying.  (Bug#21639)
24639 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
24641         Add test for `self-insert-command' (bug#21633)
24643         * test/automated/cmds-tests.el: New file.
24645 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
24647         * src/window.c (resize_frame_windows): Don't set root window's
24648         top position when resizing horizontally.
24650 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
24652         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
24653         Document more possible values.
24655 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
24657         * lisp/textmodes/tex-mode.el: Use lexical-binding.
24659 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
24661         * lisp/indent.el (indent--default-inside-comment): New function.
24662         (indent-for-tab-command): Use it for `noindent' indentation.
24664 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
24666         Fix bug in GC_CHECK_MARKED_OBJECTS check
24668         * src/alloc.c (mark_object): Fix bug in checking code.
24669         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
24670         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
24671         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
24672         bucket.  The bug did not affect behavior either in the normal case
24673         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
24674         not have an internal error that a properly-written
24675         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
24677 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
24679         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
24680         Add prettified version for \\Bbb{Q}.
24682 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
24684         * test/automated/package-test.el (package-test-install-single):
24685         Add a test for bug#21625.
24687 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
24689         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
24690           not a package-desc object.  Also clarify documentation.  (Bug#21625)
24692 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
24694         Fix display of characters adjacent to ZWJ and ZWNJ
24696         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
24697         characters the same as directional formatting controls.
24698         (bidi_level_of_next_char): Include all Bn characters in rule L1,
24699         as mandated by the UBA.
24701 2015-10-06  Andreas Schwab  <schwab@suse.de>
24703         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
24704         number.  (Bug#21633)
24706 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
24708         * doc/lispref/objects.texi (Window Type): Add a cross reference.
24710         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
24712 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
24714         * lisp/language/misc-lang.el (composition-function-table):
24715         Fix entries for Arabic and Syriac.
24717 2015-10-05  Damien Cassou  <damien@cassou.me>
24719         Add first unit tests for auth-source.el
24721         * test/automated/auth-source-tests.el: New file.
24723 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
24725         Remove redundant redisplay code
24727         * src/xdisp.c (redisplay_internal, try_cursor_movement)
24728         (try_window_reusing_current_matrix, try_window_id): Remove
24729         redundant restrictions on redisplay optimizations based on the
24730         frame's 'redisplay' flag.  See
24731         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
24732         discussions.
24734 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
24736         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
24738 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
24740         Update tutorials/TUTORIAL.cn
24742         * etc/tutorials/TUTORIAL.cn: Improve translation.
24744 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24746         * src/macfont.m (macfont_encode_char, syms_of_macfont):
24747         Remove unused vars.
24749 2015-10-04  Stefan Merten  <stefan@merten-home.de>
24751         Pull in version numbers from rst.el upstream release.
24753         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
24754         (rst-svn-timestamp, rst-official-version)
24755         (rst-official-cvs-rev, rst-package-emacs-version-alist):
24756         Update version numbers.
24758 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
24760         * test/automated/coding-tests.el: New file.
24762 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
24764         Improve XEmacs compatibility of Tramp
24766         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
24767         Declare if it doesn't exist.
24768         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
24769         (redisplay): Make it an alias if it doesn't exist.
24771         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
24772         `file-remote-p' (due to XEmacs compatibility).
24774         * lisp/net/trampver.el (locate-dominating-file)
24775         (tramp-compat-replace-regexp-in-string): Autoload.
24776         (tramp-repository-get-version): Do not dupe byte-compiler.
24778 2015-09-02  K. Handa  <handa@gnu.org>
24780         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
24782         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
24783         Adjusted for the change of type of elements in the array
24784         MFLTGlyphString.glyphs.
24786 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
24787             Michael Heerdegen  <michael_heerdegen@web.de>
24789         shr: fix too long lines in rendered buffers (Bug#21012)
24791         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
24792         Correct calculation of available width.
24793         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
24794         is nil.
24796 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
24798         Restore blank line before next section, erroneously erased
24799         in my previous commit
24801         * etc/compilation.txt (symbol ant): Add an additional trailing blank
24802         line to this section, so that there are two of them immediately before
24803         the next section.
24805 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
24807         Support MSW filename style for ant compilation error regexp
24809         * etc/compilation.txt (symbol ant):
24810         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
24811         Support MSW filename style.
24813 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
24815         * nt/INSTALL: Minor spelling and quote fixes.
24817         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
24819 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
24821         Maintain ordering of JSON object keys by default
24823         * lisp/json.el (json-object-type): Mention order handling in doc-string.
24824         (json--plist-reverse): New utility function.
24825         (json-read-object): Maintain ordering for alists and plists.
24826         (json-pretty-print): Ensure that ordering is maintained.
24828         * test/automated/json-tests.el (test-json-plist-reverse): New test for
24829         `json--plist-reverse'.
24830         (json-read-simple-alist): Update test to accommodate for changes in
24831         `json-read-object'.
24833         * etc/NEWS: Document the new behavior of the pretty printing functions.
24835 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
24837         * src/coding.c (complement_process_encoding_system): Revert last change.
24839 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
24841         * admin/MAINTAINERS: Add entry for Ulf Jasper.
24843 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
24845         Doc fix for `defmacro'
24847         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
24849 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
24851         More validatation of coding systems
24853         * src/fileio.c (Finsert_file_contents): Remove redundant
24854         coding-system check.
24855         (choose_write_coding_system): Likewise.
24856         * src/coding.c (complement_process_encoding_system): Check argument
24857         for valid coding system.
24859 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
24861         Avoid crashes in coding_inherit_eol_type
24863         * src/coding.c (coding_inherit_eol_type): Check the validity of
24864         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
24865         (Bug#21602)
24867 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
24869         More validatation of coding system in 'write-region'
24871         * src/coding.c (choose_write_coding_system): More validation of
24872         coding-system from various sources.  Suggested by Andreas Schwab
24873         <schwab@linux-m68k.org>.  (Bug#21602)
24875 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
24877         Avoid crashes due to invalid coding-system
24879         * src/fileio.c (choose_write_coding_system)
24880         (Finsert_file_contents): Check validity of coding-system-for-write
24881         and coding-system-for-read bound by the caller.  (Bug#21602)
24883 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
24885         Adapt to new prettify-symbols-unprettify-at-point default
24887         * etc/NEWS: Mention that unprettication of symbol at point is off
24888         by default.
24890 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
24892         Revert my two recent process.c changes
24894         Revert "Improve last commit to process.c" and "Remove callback-handled
24895         channels from Available set" because they did not fix bug#21313.
24897         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
24898         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
24900 2015-10-02  Markus Triska  <triska@metalevel.at>
24902         * lisp/progmodes/prolog.el: Update and extend operator table.
24903         (prolog-smie-grammar): Add multifile, public etc.
24905 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
24907         Allow autogen even when Git is not installed
24909         * autogen.sh: Test ‘git status’ before trying to use Git.
24911 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
24913         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
24914         Adjust lto/lfrom when we have uncommitted changes.
24916 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
24918         Fix problems found by clang 3.5.0
24920         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
24921         * src/font.c (font_parse_family_registry):
24922         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
24924 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
24926         * nt/INSTALL: Update instructions for running autogen.sh.
24928         * nt/INSTALL: Point to ezwinports for libXpm binaries.
24930 2015-10-02  Daniel Colascione  <dancol@dancol.org>
24932         Fix winner in cl-lib not loaded case
24934         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
24935         without requiring CL
24937 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
24939         Fix a few problems with directed quotes
24941         This is in response to a problem report by Kaushal Modi in:
24942         http://bugs.gnu.org/21588#25
24943         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24944         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
24945         * lisp/info-xref.el (info-xref-check-all-custom):
24946         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
24947         Prefer directed to undirected single quotes in diagnostics.
24949 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
24951         Revert "Attempt to fix slow redisplay caused by last changes"
24953         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
24954         (try_cursor_movement): Don't relax requirements for redisplay
24955         optimizations for the selected frame.  (Bug#21597)
24957         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
24959 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
24961         Fix slow redisplay when daemon frame exists
24963         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
24964         when looking for frames that need to be redisplayed.  (Bug#21597)
24966 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
24968         Attempt to fix slow redisplay caused by last changes
24970         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
24971         (try_cursor_movement): Relax requirements for redisplay
24972         optimizations for the selected frame.  (Bug#21597)
24974 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
24976         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
24977         Improve doc string.
24979 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
24981         * lisp/minibuffer.el (minibuffer-completion-help):
24982         Set default base-size, in case completion table does not set it.
24984 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
24986         Fix GUD display of GDB output with non-ASCII text
24988         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
24989         (gdb-mi-decode): New function.
24990         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
24991         decode octal escapes in GDB output.  (Bug#21572)
24993 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
24995         * nt/INSTALL: Document where to find XPM support files.
24997 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
24999         Un- and re-prettification are not exclusive
25001         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
25002         Re-apply prettification to previous symbol also when unprettifying
25003         next one.
25005 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
25007         Don't unprettify symbol at point by default
25009         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
25010         Default to disabled (nil).
25012 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
25014         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
25015         Support unprettifying when point is after a symbol.
25017         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
25019 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
25021         Avoid assertion violations in push_prefix_prop
25023         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
25024         a line that has a line-prefix defined starts with an image.  (Bug#21428)
25026 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
25028         Disable some display optimizations when frames need redisplay
25030         These optimizations were previously disabled by the
25031         windows_or_buffers_changed flag, which now is not set
25032         when only some frames need to be redrawn.
25033         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
25034         'redisplay' flag is set.
25035         (try_window_reusing_current_matrix, try_window_id)
25036         (try_cursor_movement): Disable these optimizations when the
25037         frame's 'redisplay' flag is set.
25039 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
25041         Don't modify buffer by unprettification
25043         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
25044         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
25045         modify buffer when setting/removing custom prettify-symbols-start/end
25046         text properties.  Add them to font-lock-extra-managed-props, too.
25048 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
25050         Try to avoid redisplaying all frames when creating a new one
25052         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
25053         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
25054         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
25055         * src/frame.c (x_set_screen_gamma): Set the specific frame's
25056         `redisplay' bit rather than windows_or_buffers_changed.
25058         * src/window.c (apply_window_adjustment): Remove redundant setting of
25059         windows_or_buffers_changed.
25061         * src/xdisp.c (redisplay_internal): Set the specific frame's
25062         `redisplay' bit rather than update_mode_lines in response to
25063         cursor_type_changed.
25064         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
25065         (AINC): Adjust accordingly.
25067 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
25069         Implement unprettification of symbol at point
25071         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
25072         symbol at point.
25073         (prettify-symbols--current-symbol-bounds): New variable.
25074         (prettify-symbols--post-command-hook): New function.
25075         (prettify-symbols-unprettify-at-point): New defcustom.
25076         (prettify-symbols-mode): Use it.
25077         (prettify-symbols--compose-symbol): Use them.
25079 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25081         * src/macfont.m (mac_font_descriptor_supports_languages):
25082         Regard "zh" as synonym of "zh-Hans".
25084 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25086         Work around crash when displaying etc/HELLO on OS X 10.11
25088         * src/macfont.m (mac_font_get_weight)
25089         (mac_font_descriptor_get_adjusted_weight): New functions.
25090         (macfont_store_descriptor_attributes): Adjust weight.
25092 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25094         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
25096 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
25098         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
25099         of the columns.
25101 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
25103         Use unar and lsar to handle RAR archives in arc-mode
25105         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
25106         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
25108 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
25110         Clarify :create in auth-source's docs
25112         * lisp/gnus/auth-source.el (auth-source-search):
25113         Clarify :create's meaning.
25115 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
25117         Avoid empty -path arguments in rgrep
25119         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
25120         the list produced according to grep-find-ignored-directories,
25121         before passing it to Find/Grep invocation.  (Bug#21548)
25123 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
25125         Clarify documentation of pos-visible-in-window-p
25127         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
25128         t for POS.  See
25129         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
25130         for the original report.
25132         * doc/lispref/windows.texi (Window Start and End): Clarify the
25133         meaning of t for the POSITION argument of pos-visible-in-window-p.
25135 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
25137         * lisp/progmodes/prolog.el: Fix various indentation cases.
25138         (prolog-operator-chars): New const (add \\).
25139         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
25140         (prolog-smie-rules): Add rules according to bug#21526.
25142 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
25144         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
25145         (sh-indent-after-continuation): Add new value `always' (bug#17620)
25146         (sh-smie-sh-rules): Remove old handling of continued lines.
25147         (sh-smie--indent-continuation): New function.
25148         (sh-set-shell): Use it.
25150 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
25152         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
25153         Remove redundant :group keyword args.
25154         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
25155         Remove variables.
25156         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
25157         turn them into compile-time variables.
25158         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
25159         Add rules for break, continue, return, global, and persistent.
25160         Refine the rule for "until".
25161         (octave-smie--funcall-p, octave-smie--end-index-p)
25162         (octave-smie--in-parens-p): New functions.
25163         (octave-smie-backward-token, octave-smie-forward-token): Use them to
25164         distinguish the "enumeration" function and the "end" index from
25165         their corresponding keywords.
25166         (octave--block-offset-keywords): New constant.
25167         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
25168         parsing.
25169         (octave-reserved-words): Redefine using octave-smie-grammar.
25170         (octave-font-lock-keywords): Use octave-smie--funcall-p and
25171         octave-smie--end-index-p.
25173 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
25175         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
25177 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
25179         * nt/INSTALL: Remove references to GTK site.
25180         That site no longer offers Windows downloads.
25182 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
25184         * nt/INSTALL: Add instructions for installing Git.
25186 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
25188         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
25189         use colors.  Suggested by Eli Zaretskii.
25191 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
25193         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
25194         not supporting 256 above colors (bug#21557).
25196 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
25198         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
25200         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
25202 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
25204         Add documentation for seq.el
25206         * doc/lispref/sequences.texi: Add documentation regarding extending
25207         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
25208         seq-do and seq-map.
25210 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
25212         Better documentation for seq-some
25214         * doc/lispref/sequences.texi:
25215         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
25216         guarantee that the returned value is the first non-nil value that
25217         resulted from applying the predicate.
25219 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
25221         * lisp/arc-mode.el: Sharp-quote function arguments.
25223 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
25225         Avoid redisplay error in ediff-regions-wordwise
25227         * lisp/vc/ediff-util.el
25228         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
25229         set before activating it.  (Bug#21567)
25231 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
25233         Another attempt to fix crashes due to prematurely freed faces
25235         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
25236         faces for as long as we might have desired matrices that reference
25237         those faces.  (Bug#21428)
25239 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
25241         Add auctex development list email address
25243 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
25245         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
25247 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
25249         Improve wrapfig package support and caption parsing
25251         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
25252         Correct description string and add wraptable environment.
25253         (reftex-default-context-regexps): Improve caption regexp.
25255 2015-09-28  Anders Lindgren  <andlind@gmail.com>
25257         Respect value of frame_resize_pixelwise when handling fullscreen state
25259         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
25260         setting size increments.
25262 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
25264         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
25266 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
25268         Add prettify-symbols-alist for js-mode
25270         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
25271         (js-mode): Use it.
25273 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
25275         * nt/subdirs.el: File deleted (no longer used).
25277 2015-09-26  Alan Mackenzie  <acm@muc.de>
25279         Fix follow-scroll-up/down, making them replacements for scroll-up/down
25281         1. Allow point to move between follow windows in scroll operations.
25282         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
25283         when EOB was isolated in the last follow window.
25285         * lisp/follow.el (follow-fixed-window): New variable.
25286         (follow-get-scrolled-point): New function.
25287         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
25288         Reformulate the code.  Put `scroll-command' properties on the functions.
25289         Correct minor errors in ...-down's doc string and code.
25290         (follow-calc-win-end): Amend incomplete doc string.  Use
25291         `pos-visible-in-window-p' to check whether EOB is in the window.
25292         (follow-estimate-first-window-start): Correct an off-by-1 error.
25293         (follow-adjust-window): Add handling for explicit scrolling operations.
25295 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
25297         * admin/MAINTAINERS: Add self, plus list some more files
25298         sans maintaners.
25300 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
25302         New DWIM commands for changing letter-case
25304         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
25305         New functions.  (Bug#21501)
25307 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
25309         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
25311 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
25313         Make face realization be more frame-specific
25315         * src/frame.h (struct f): New flag face_change.
25316         * src/xfaces.c (Finternal_make_lisp_face)
25317         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
25318         (update_face_from_frame_parameter): Set the face_change flag only
25319         for the frame whose faces are affected.
25320         * src/xdisp.c (init_iterator): If a frame's face_change flag is
25321         set, free faces only on that frame.
25322         (redisplay_internal): Disable "display optimization 1" if the
25323         frame's face_change flag is set.
25324         (redisplay_window): Don't allow skipping a window's redisplay if
25325         its frame's face_change flag is set.
25326         * src/frame.c (x_set_screen_gamma): Instead of calling
25327         Fclear_face_cache, call clear_face_cache and set
25328         windows_or_buffers_changed to a non-zero value.  This avoids
25329         setting the global face_change flag that triggers face realization
25330         on all frames and thorough redisplay of all of them.
25332         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
25333         clear face cache if the selected frame is a GUI frame.
25335 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
25337         Remove font-latex specific check
25339         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
25340         Use syntax-ppss data to identify verbatim contents.
25342 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
25344         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
25345         Fix some false negatives.
25347 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
25349         Reorder Windows version in Emacs manifests
25351         * nt/emacs-x64.manifest:
25352         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
25353         highest.
25355 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
25357         Update Emacs manifest files for Windows 10
25359         * nt/emacs-x86.manifest:
25360         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
25362 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
25364         Avoid non-ASCII decoding errors in C src files
25366         * src/nsterm.m:
25367         * src/lisp.h:
25368         * src/editfns.c:
25369         * src/doprnt.c: Add 'coding' cookies -- these files include
25370         Unicode characters and should be decoded as UTF-8.
25372 2015-09-25  Alan Mackenzie  <acm@muc.de>
25374         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
25376         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
25377         amend to match current modes and functions.
25378         (edebug-set-initial-mode): Uncomment and change from setting a defun's
25379         `edebug-initial-mode''s property to setting the variable
25380         `edebug-initial-mode'.
25381         (top level): Create new binding C-x C-a C-m for
25382         `edebug-set-initial-mode'.
25384         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
25385         `edebug-set-initial-mode' and its new key binding.
25386         (Edebug Options): Mention the new command in the pertinent place.
25388         * etc/NEWS: Write entry for this change.
25390 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
25392         Avoid non-ASCII decoding errors in Texinfo files
25394         * doc/misc/tramp.texi:
25395         * doc/lispref/strings.texi:
25396         * doc/lispref/positions.texi:
25397         * doc/lispref/help.texi:
25398         * doc/lispref/functions.texi:
25399         * doc/lispintro/emacs-lisp-intro.texi:
25400         * doc/emacs/text.texi:
25401         * doc/emacs/modes.texi:
25402         * doc/emacs/mini.texi:
25403         * doc/emacs/display.texi:
25404         * doc/emacs/custom.texi:
25405         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
25406         Unicode characters and should be decoded as UTF-8.
25407         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
25408         apostrophe unnecessarily.
25410 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
25412         Merge from gnulib
25414         This incorporates:
25415         2015-09-25 c-ctype: rewrite to use inline functions
25416         2015-09-24 maint: add coding cookies to non-ASCII sources
25417         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
25418         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
25419         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
25420         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
25421         * lib/set-permissions.c:
25422         Copy from gnulib.
25424 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
25426         Update publicsuffix.txt from upstream
25428         * etc/publicsuffix.txt: Update from
25429         https://publicsuffix.org/list/effective_tld_names.dat
25430         dated 2015-09-24 17:29:21 UTC.
25432 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
25434         Prevent timers from messing up TTY menus
25436         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
25437         the TTY menu is open.  (Bug#21530)
25439 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
25441         No need to mention K&R C in c-mode intro
25443 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
25445         Fix recent bootstrap problems
25447         * src/syntax.c (parse_sexp_propertize): Fix last fix.
25448         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
25449         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
25451 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
25453         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
25455 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
25457         Properly quote nested xml comments (Bug#6267) (Bug#20001)
25459         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
25460         (nxml-mode): Set comment-quote-nested-function.
25462 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
25464         Allow major-modes full control over quoting nested comments
25466         * lisp/newcomment.el (comment-quote-nested-function): New variable.
25467         (comment-quote-nested-default): New function.
25468         (comment-quote-nested): Use `comment-quote-nested-function'.
25470 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
25472         Prefer CALLN in a few more places
25474         * src/macfont.m (macfont_set_family_cache):
25475         * src/nsterm.m (append2):
25476         * src/xterm.c (x_cr_export_frames):
25477         Prefer CALLN to allocating the arg arrays by hand.
25479 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
25481         Adapt file-notify-test02-events test case
25483         * test/automated/file-notify-tests.el (file-notify-test02-events):
25484         Create a new watch for every test.
25486 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
25488         Continue gfilenotify.c implementation of missing parts
25490         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
25491         `gfile-add-watch' call.
25492         (file-notify-rm-watch): Modify `file-notify-descriptors' only
25493         after calling the low level functions.
25495         * src/gfilenotify.c (dir_monitor_callback): Check, whether
25496         event_type is expected.
25497         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
25498         (Fgfile_rm_watch): Fix typo.
25499         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
25501 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
25503         * src/syntax.c (parse_sexp_propertize): Handle spurious
25504         e_property_truncated flag.
25505         (update_syntax_table_forward): Remove invalid assertion.
25507 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
25509         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
25510         space display spec on text-mode terminals, by calling
25511         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
25512         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
25513         test for a GUI frame.
25515 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
25517         Move let-when-compile to lisp-mode.el
25519         This fixes the bootstrapping problem of `let-when-compile' using
25520         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
25522 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
25524         * lisp/url/url-http.el (url-http-parse-headers): Do not
25525         automatically include Authorization header in redirect.
25526         (Bug#21350)
25528 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
25530         Clarify documentation of ':relative-width'
25532         * doc/lispref/display.texi (Specified Space): Document that
25533         ':relative-width' is only supported on GUI frames.
25535 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
25537         Fix 'current-column' in presence of :relative-width
25539         * src/indent.c (check_display_width): Support ':relative-width'
25540         in a display spec that specifies a stretch glyph.  (Bug#21533)
25542 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
25544         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
25546         ... to conform better to CONTRIBUTE guidelines.
25548 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
25550         * lisp/progmodes/prolog.el: Fix indentation of empty line
25552         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
25553         `empty-line-token' element.
25554         (smie-indent-empty-line): New function.
25555         (smie-indent-functions): Add it.
25557         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
25558         behavior and use the new `empty-line-token' element (bug#21526).
25559         (prolog-mode-variables): Fix comment-start-skip setting to match
25560         comment-start.
25562         * test/indent/prolog.prolog: Add nested indentation tests.
25564         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
25565         comment-start-skip not to misuse submatch 1.
25567 2015-09-22  Alan Mackenzie  <acm@muc.de>
25569         Make description of `edebug-initial-mode' user friendly
25571         Fixes bug#21365.
25573         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
25574         description of `edebug-initial-mode' from that of its implementation
25575         to that of its visual effect and use.  Move the paragraph higher up.
25577 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
25579         lisp/progmodes/gud.el (gud-format-command): Fix last commit
25581         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
25582         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
25584 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
25586         Improve last commit to process.c
25588 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
25590         Implement gfile-valid-p
25592         * lisp/filenotify.el (file-notify-callback): Fix typo.
25593         (gfile-valid-p): Remove defalias.
25595         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
25596         the file or directory to be watched is deleted.
25597         (Fgfile_add_watch): Make watch_object a triple.
25598         (Fgfile_rm_watch): Check, whether watch is cancelled already.
25599         (Fgfile_valid_p): New defun.
25600         (syms_of_gfilenotify): Declare Sgfile_valid_p.
25602 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
25604         Remove callback-handled channels from Available set
25606         * src/process.c (wait_reading_process_output): Remove channel from
25607         Available set if it is handled by a callback, e.g., dbus or
25608         inotify (bug#21313).
25610 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
25612         Use lunate epsilon for TeX \epsilon
25614         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
25615         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
25616         \epsilon to use GREEK LUNATE EPSILON SYMBOL
25618 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25620         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
25622         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
25623         rather than outermost paren (bug#21526).
25625 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
25627         Improve git diff hunk headers for .el, .texi
25629         Problem reported by Alan Mackenzie in:
25630         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
25631         * .gitattributes (*.el, *.texi): New patterns.
25632         * autogen.sh: Configure diff.elisp.xfuncname and
25633         diff.texinfo.xfuncname if using Git.
25635 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
25637         Don't rely on defaults in decoding UTF-8 encoded Lisp files
25639         * lisp/replace.el:
25640         * lisp/textmodes/rst.el:
25641         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
25643 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
25645         Clarify or replace a few \u escapes
25647         * doc/lispref/nonascii.texi (Character Properties)
25648         More-detailed commentary for \u escapes.
25649         * lisp/progmodes/python.el (python--prettify-symbols-alist):
25650         * lisp/replace.el (query-replace-from-to-separator):
25651         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
25652         (rst-mode-syntax-table):
25653         * lisp/whitespace.el (whitespace-display-mappings):
25654         Prefer actual character to \u escape when this makes the code
25655         easier to follow in the usual case where Unicode chars can be
25656         displayed.
25658 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
25660         Pacify GCC -Wmaybe-uninitialized in xdisp.c
25662         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
25663         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
25664         charpos.  The loop should always execute at least once anyway.
25666 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
25668         Signal error on invalid regexp
25670         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
25671         Signal an error when the user tries searching with a regexp
25672         matching the empty string.
25674 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
25676         Another fix of file-notify-tests for w32notify
25678         * test/automated/file-notify-tests.el (file-notify-test02-events):
25679         Further adaptation for w32notify: reduce the number of expected
25680         'changed' events.  (Bug#21435)
25682 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
25684         Adapt tests and manual for w32notify
25686         * doc/lispref/os.texi (File Notifications): w32notify does not
25687         send `attribute-changed' events.
25689         * test/automated/file-notify-tests.el (file-notify--test-with-events):
25690         Simplify parameters.  Adapt all callees.
25691         (file-notify-test02-events): w32notify does not send
25692         `attribute-changed' events.
25693         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
25694         Do not skip in case of w32notify.  Simply ignore this part of the test.
25696 2015-09-21  Dima Kogan  <dima@secretsauce.net>
25698         Fix setting breakpoints when remote-debugging
25700         * lisp/progmodes/gud.el (gud-format-command): Send localized file
25701         names to the debugger running on the remote.  (Bug#13304)
25703 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
25705         Better docstring and parameter name for seq-find
25707         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
25708         the parameter `sentinel' to `default'.
25710         * doc/lispref/sequences.texi (Sequence Functions): Update the
25711           documentation for `seq-find' accordingly.
25713 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
25715         Avoid infinite recursion while displaying box face
25717         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
25718         the previous string/buffer character position under bidi
25719         iteration.  (Bug#21428)
25721 2015-09-21  Anders Lindgren  <andlind@gmail.com>
25723         Keep upper edge unchanged when changing size of NS frame
25725         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
25726         (Bug#21415).
25728 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
25730         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
25731         (prolog-smie-rules): Accommodate standard if/then/else special
25732         indentation.
25733         (prolog-mode): Add . to electric-indent-chars.
25734         (prolog-electric--if-then-else): Re-indent the line before adding space
25735         after the new char (bug#21526).
25737 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
25739         Add prettify symbols to python-mode
25741         * lisp/progmodes/python.el (python-prettify-symbols-alist):
25742         New variable.
25743         (python-mode): Use it
25745 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
25747         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
25749 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
25751         (compilation-error-regexp-alist-alist): Tone down guile-file
25753         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
25754         Make guile-file a bit less enthusiastic (bug#21496).
25756 2015-09-20  Drew Csillag  <drew@thecsillags.com>
25758         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
25759         Fix m4_* highlighting.
25761         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
25762         of commands when they have a "m4_" prefix.
25764 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
25766         '.' -> `.' in doc string
25768         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
25769         individual chars with grave quotes instead of straight quotes, as
25770         this works better when they are translated to curved quotes.
25772 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
25774         Improve file notifications, especially for Tramp
25776         * doc/lispref/files.texi (Magic File Names):
25777         Mention `file-notify-valid-p'.
25779         * doc/lispref/os.texi (File Notifications):
25780         Describe `file-notify-valid-p'.
25782         * etc/NEWS: Add `file-notify-valid-p'.
25784         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
25785         Improve implementation.
25786         (tramp-gvfs-monitor-file-process-filter): Rename from
25787         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
25788         process if appropriate.
25790         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
25791         Improve implementation.
25792         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
25793         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
25794         if appropriate.
25795         (tramp-sh-inotifywait-process-filter): Rename from
25796         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
25797         appropriate.
25799         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
25800         Use `delete-process'.
25801         (tramp-handle-file-notify-valid-p): Check also, that file or
25802         directory to be watched still exists.
25804         * test/automated/file-notify-tests.el (file-notify--test-timeout):
25805         New defun.  Use it at all places a timeout is needed.
25806         (file-notify--test-cleanup): Delete directories recursively.
25807         Cleanup also Tramp connections.
25808         (file-notify-test02-events): Add tests for `attribute-change'.
25809         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
25810         Add tests for `file-notify-rm-watch'.
25812 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
25814         Use %s to format strings instead of splicing them
25816         If FOO might contain quotes that are part of a file or variable
25817         name, the quotes should not be translated when showing FOO’s name
25818         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
25819         is not quite right, as it would translate FOO’s quotes.
25820         Change it to (message "%s: bar" FOO) instead.
25821         * lisp/allout.el (allout-process-exposed):
25822         * lisp/calc/calc-ext.el (calc-do-prefix-help):
25823         * lisp/calc/calc-store.el (calc-store-into):
25824         * lisp/calendar/todo-mode.el (todo-category-completions):
25825         * lisp/cedet/semantic/complete.el (semantic-completion-message):
25826         * lisp/org/ob-latex.el (convert-pdf):
25827         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
25828         * lisp/org/ox-latex.el (org-latex-compile):
25829         * lisp/org/ox-man.el (org-man-compile):
25830         * lisp/org/ox-odt.el (org-odt--export-wrap):
25831         * lisp/org/ox-texinfo.el (org-texinfo-compile):
25832         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
25833         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
25834         (verilog-signals-combine-bus, verilog-read-defines)
25835         (verilog-getopt-file, verilog-expand-dirnames)
25836         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
25837         * lisp/term/ns-win.el (ns-spi-service-call):
25838         Use %s to avoid translating quotes of file names etc. in diagnostics.
25840 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
25842         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
25843         (js-mode): Don't set syntax-begin-function.
25845 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
25847         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
25848         syntax-begin-function is a symbol.
25850 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
25852         Improve documentation of 'run-at-time'
25853         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
25854         In particular, don't refer to 'diary-entry-time', because it is
25855         unavailable until diary-lib is loaded.  Also, refer to
25856         'timer-duration-words', not 'timer-duration', as the latter's doc
25857         string says nothing about the accepted strings.
25859 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
25861         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
25863 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
25865         Repair pdbtrack remote file tracking
25866         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
25867         Rectify pdbtrack so it follows transitions from one remote source
25868         file to the next.
25870 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
25872         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
25874 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
25876         Adapt vc-src to the old-new vc-checkin API
25877         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
25878         additional optional parameter.
25880 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
25882         Add overflow module to CSS property list
25883         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
25884         from CSS Overflow Module Level 3.
25886 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
25888         Fix documentation of "C-u C-x v v"
25889         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
25890         documentation of "C-u C-x v v" match what the code does.
25892         Resurrect the ability to specify a revision in vc-next-action
25893         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
25894         * lisp/vc/vc-dav.el (vc-dav-checkin):
25895         * lisp/vc/vc-git.el (vc-git-checkin):
25896         * lisp/vc/vc-hg.el (vc-hg-checkin):
25897         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
25898         an additional optional argument, the revision to checkin.
25899         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
25900         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
25901         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
25902         a revision to checkin.
25903         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
25904         revision when checking in files.
25905         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
25906         for the details.
25908 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
25910         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
25911         (verilog-decls-princ, verilog-modport-princ)
25912         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
25914 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
25916         Fix the routine for help on Calc's prefixes
25917         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
25918         (calc-do-prefix-help): Use `read-char' to determine the next Calc
25919         command.
25921 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
25923         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
25924         (font-lock-fontify-block): Don't let-bind it.
25925         (font-lock-compile-keywords): Don't use it.
25926         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
25927         start one slot earlier, instead.
25928         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
25929         Don't declare.
25930         (syntax-ppss): Don't use it either.
25931         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
25932         from docstring.
25933         * doc/emacs/display.texi (Font Lock): Don't mention
25934         font-lock-beginning-of-syntax-function.
25935         * doc/lispref/modes.texi (Font Lock Basics): Update description of
25936         font-lock-defaults.
25937         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
25938         * lisp/loadhist.el (unload-feature-special-hooks):
25939         Remove font-lock-beginning-of-syntax-function.
25940         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
25941         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
25942         font-lock-beginning-of-syntax-function.
25944 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
25946         Backslash cleanup in Elisp source files
25947         This patch should not change behavior.  It typically omits backslashes
25948         where they are redundant (e.g., in the string literal "^\$").
25949         In a few places, insert backslashes where they make regular
25950         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
25951         "^\\*", which has the same effect as a regular expression.
25952         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
25953         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
25954         RCS IDs, as that makes it clearer that the backslash is intended.
25956         Some more minor backslash fixes
25957         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
25958         * test/automated/info-xref.el (info-xref-test-write-file):
25959         Double backslashes in strings.
25961         Fix several backslash typos in Elisp strings
25962         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
25963         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
25964         (todo-reset-done-string, todo-reset-comment-string)
25965         (todo-reset-highlight-item):
25966         * lisp/erc/erc-networks.el (erc-networks-alist):
25967         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
25968         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
25969         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
25970         (nntp-telnet-shell-prompt):
25971         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
25972         * lisp/image-dired.el (image-dired-rotate-original):
25973         (image-dired-get-exif-file-name):
25974         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
25975         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
25976         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
25977         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
25978         * lisp/net/shr-color.el (shr-color->hexadecimal):
25979         * lisp/org/org-bibtex.el (org-bibtex-fields):
25980         * lisp/org/org-docview.el (org-docview-export):
25981         * lisp/org/org-entities.el (org-entities):
25982         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
25983         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
25984         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
25985         (ebnf-style-database):
25986         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
25987         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
25988         * lisp/progmodes/sql.el (sql-product-alist):
25989         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
25990         (verilog-error-font-lock-keywords)
25991         (verilog-assignment-operator-re):
25992         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
25993         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
25994         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
25995         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
25996         For example, to get the regular expression ‘\.’ use the string
25997         literal "\\.", not "\." (which is equivalent to ".").
25998         * lisp/emulation/viper-util.el (viper-glob-unix-files):
25999         Remove stray ‘\j’ from string.
26000         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
26001         (nntp-telnet-shell-prompt):
26002         Treat > like $ when matching a shell prompt.
26003         * lisp/progmodes/make-mode.el (makefile-browse):
26004         Properly quote a diagnostic.
26006         Fix minor quoting problems in diagnostics
26007         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
26008         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
26009         Follow text-quoting-style in diagnostic, and quote a file name.
26011 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
26013         * doc/lispref/frames.texi (Cursor Parameters):
26014         Document 'x-stretch-cursor'.
26016 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
26018         Omit unnecessary \ before paren in C docstrings
26019         Although \( is needed in docstrings in Elisp code, it is not needed in
26020         docstrings in C code, since C function definitiions do not start with
26021         a parenthesis.  The backslashes made the docstrings a bit harder to
26022         read and to format in columns.  Also, some C docstrings had ( in
26023         column 1 and this did not appear to be causing any problems.  So,
26024         simplify C docstrings by replacing \( with ( and \) with ).
26026         A few more minor quoting fixes in a script and a text file
26028         Minor quoting fixes in scripts and doc
26029         Prefer straight quotes in random script files, as they are not
26030         converted.  Prefer grave quotes in a couple of places in the manual
26031         that were missed earlier, as these quotes are converted.
26033         Minor backslash fixes in manuals and scripts
26034         * Makefile.in (install-arch-indep):
26035         * admin/charsets/compact.awk:
26036         * admin/charsets/gb180302.awk (gb_to_index):
26037         * admin/charsets/gb180304.awk (gb_to_index):
26038         Avoid undefined behavior in Awk regular expression backslashes.
26039         * doc/misc/efaq.texi (Matching parentheses):
26040         Omit unnecessary backslashes.
26041         * doc/misc/gnus-faq.texi (FAQ 5-8):
26042         Avoid undefined behavior in suggested sed backslash usage.
26044         Add -Wswitch to --enable-gcc-warnings
26045         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
26046         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
26047         * lib-src/etags.c (main, consider_token, C_entries):
26048         * src/coding.c (encode_invocation_designation):
26049         * src/data.c (Ftype_of):
26050         * src/eval.c (Fdefvaralias, default_toplevel_binding)
26051         (Fbacktrace__locals, mark_specpdl):
26052         * src/lisp.h (record_xmalloc):
26053         * src/syntax.c (scan_lists, scan_sexps_forward):
26054         * src/window.c (window_relative_x_coord):
26055         * src/xdisp.c (push_it, pop_it):
26056         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
26057         Error out or do nothing (as appropriate) if a switch statement
26058         with an enum value does not cover all of the enum.
26059         * src/dispextern.h (struct iterator_stack_entry.u.comp):
26060         Remove unused member discovered by using -Wswitch.
26061         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
26062         * src/vm-limit.c (check_memory_limits):
26063         Simplify warning-diagnostic computation by using a table.
26065         etags ‘fatal’ function is now printf-like
26066         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
26067         Also, now static; not clear why it needed to be extern.
26068         (verror): New function, with most of the old contents of ‘error’.
26069         (fatal, error): Use it.
26071 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
26073         More adaptations in file-notify-tests.el
26074         * test/automated/file-notify-tests.el
26075         (file-notify-test05-dir-validity): Skip for w32notify in
26076         batch-mode.  (Bug#21432)
26078 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
26080         Adapt test in file-notify-tests.el
26081         * test/automated/file-notify-tests.el
26082         (file-notify-test04-file-validity): Skip for w32notify in
26083         batch-mode.  Add test lost last commit.
26085 2015-09-16  Dima Kogan  <dima@secretsauce.net>
26087         winner no longer holds on to dead frames
26088         * lisp/winner.el (winner-change-fun): Cull dead frames.
26089         This prevents a potentially massive memory leak.  See:
26090         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
26092 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
26094         Use common report_file_notify_error function
26095         * src/fileio.c (report_file_notify_error): New function.
26096         * src/inotify.c (report_inotify_error): Remove function.
26097         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
26098         (Finotify_rm_watch): Use report_file_notify_error.
26099         * src/lisp.h (report_file_notify_error): Declare external function.
26100         * src/w32notify.c (report_w32notify_error): Remove function.
26101         (Fw32notify_add_watch, Fw32notify_rm_watch):
26102         Use report_file_notify_error.
26104 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
26106         Fix documentation.
26107         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
26108         the documentation of the root mean square.
26110 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
26112         Remove tool_bar_redisplayed_once and associated code.
26113         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
26114         * src/frame.c (make_frame, x_set_font): Remove initialization of
26115         f->tool_bar_redisplayed_once.
26116         * src/w32fns.c (x_change_tool_bar_height):
26117         * src/xfns.c (x_change_tool_bar_height): Don't check for
26118         f->tool_bar_redisplayed_once.
26119         * src/xdisp.c (redisplay_internal): Remove handling of
26120         f->tool_bar_redisplayed_once.
26122 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
26124         Restore some of the quoting in the manuals
26125         * doc/lispref/windows.texi (Coordinates and Windows)
26126         (Coordinates and Windows):
26127         * doc/lispref/variables.texi (Lexical Binding)
26128         (File Local Variables):
26129         * doc/lispref/text.texi (Format Properties):
26130         * doc/lispref/symbols.texi (Symbol Components):
26131         * doc/lispref/strings.texi (Creating Strings):
26132         * doc/lispref/sequences.texi (Sequence Functions):
26133         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
26134         (Search and Replace):
26135         * doc/lispref/processes.texi (Bindat Spec):
26136         * doc/lispref/os.texi (Idle Timers):
26137         * doc/lispref/objects.texi (Basic Char Syntax):
26138         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
26139         * doc/lispref/nonascii.texi (Character Properties):
26140         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
26141         (Mode Line Variables):
26142         * doc/lispref/minibuf.texi (Text from Minibuffer):
26143         * doc/lispref/loading.texi (Autoload):
26144         * doc/lispref/keymaps.texi (Controlling Active Maps):
26145         * doc/lispref/frames.texi (Frame Layout, Size and Position)
26146         (Size Parameters, Implied Frame Resizing):
26147         * doc/lispref/files.texi (Changing Files, Magic File Names):
26148         * doc/lispref/eval.texi (Self-Evaluating Forms):
26149         * doc/lispref/display.texi (Progress, Abstract Display)
26150         (Abstract Display Example, Bidirectional Display):
26151         * doc/lispref/commands.texi (Event Mod):
26152         * doc/emacs/windows.texi (Displaying Buffers):
26153         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
26154         * doc/emacs/text.texi (Enriched Text):
26155         * doc/emacs/programs.texi (MixedCase Words):
26156         * doc/emacs/picture-xtra.texi (Insert in Picture)
26157         (Tabs in Picture):
26158         * doc/emacs/misc.texi (Emacs Server, Printing):
26159         * doc/emacs/mini.texi (Minibuffer History):
26160         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
26161         (Pulling / Pushing):
26162         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
26163         * doc/emacs/help.texi (Help, Help Echo):
26164         * doc/emacs/glossary.texi (Glossary):
26165         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
26166         (Frame Commands):
26167         * doc/emacs/files.texi (Reverting, Saving, Directories):
26168         * doc/emacs/entering.texi (Exiting):
26169         * doc/emacs/emacs.texi (Top):
26170         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
26171         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
26172         appropriate or replace quoting with @dfn.
26173         * doc/misc/ediff.texi (Window and Frame Configuration):
26174         * doc/lispref/processes.texi (Network Feature Testing):
26175         * doc/lispref/display.texi (Display Margins): Quote the phrase
26176         after "a.k.a." where appropriate.
26178 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
26180         Clarify reftex-extra-bindings docs
26181         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
26182         * doc/misc/reftex.texi (Key Bindings): Document that the variable
26183         only has an effect at load-time.
26185 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
26187         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
26188         search argument.  (Bug#21492) (Bug#21493)
26190 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
26192         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
26193         Add pretty symbols for \qquad and \varrho.
26195 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
26197         Add new functions for the root mean square of a (Calc) vector
26198         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
26199         New functions.
26200         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
26201         `calc-vector-rms', add autoloads for `calc-vector-rms' and
26202         `calcFunc-rms'.
26203         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
26204         `calcFunc-rms'.
26205         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
26206         `calc-vector-rms'.
26207         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
26208         command.
26210 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
26212         Add monotone EDE generic project
26213         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
26214         Add monotone generic project.
26216         Revert premature commit
26217         * doc/lispref/files.texi: Revert premature commit of change to
26218         file-name-all-completions.
26220         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
26221         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
26222         with cl-generic defaults.
26223         (elisp--xref-find-references): Add doc string.
26224         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
26225         tests to find bug.
26227         Fix bugs in eieio-oref-default related to class symbols
26228         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
26229         (eieio-oref-default): Handle class properly.
26231 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
26233         Quote “fullboth” when defining it
26234         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
26235         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
26237 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
26239         Minor doc fix in emacs/ack.texi
26240         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
26241         first argument.
26243 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
26245         Adapt tests in auto-revert-tests.el
26246         * test/automated/auto-revert-tests.el (auto-revert--timeout):
26247         Make it a defconst.
26248         (auto-revert--wait-for-revert): New defun.
26249         (auto-revert-test00-auto-revert-mode)
26250         (auto-revert-test01-auto-revert-tail-mode)
26251         (auto-revert-test02-auto-revert-mode-dired): Use it.
26253 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
26255         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
26256         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
26257         (cl-lib-fdefs): Add defgeneric.
26258         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
26259         (eieio-kw, cl-lib-kw, el-kw): Remove.
26261 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
26263         Quote less in manuals
26264         The manuals often used quotes ``...'' when it is better to use @dfn or
26265         @code or capitalized words or no quoting at all.  For example, there is
26266         no need for the `` and '' in “if a variable has one effect for
26267         @code{nil} values and another effect for ``non-@code{nil}'' values”.
26268         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
26269         unnecessary quoting like this, and to use @dfn etc. instead when called
26270         for (Bug#21472).
26272 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
26274         * lisp/custom.el (load-theme): Only compute hash when needed.
26276 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
26278         Pacify --enable-gcc-warnings
26279         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
26281 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
26283         Improve error reports in inotify.c
26284         * src/inotify.c (report_inotify_error): New function.  Clone of
26285         report_w32notify_error.
26286         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
26287         (Finotify_rm_watch): Use it.
26289 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
26291         Fix the file-notify tests for watch validation on w32
26292         * test/automated/file-notify-tests.el
26293         (file-notify-test04-file-validity): Move the directory deletion
26294         out of the file-notify--test-with-events macro.
26295         (file-notify-test04-file-validity)
26296         (file-notify-test05-dir-validity): Enlarge the timeout of
26297         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
26299 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
26301         Use OPEN BOX instead of space for \quad.
26302         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
26303         character for \quad instead of a space.
26305 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
26307         Add missing *.pbm images
26308         * etc/images/connect.pbm: New file.
26309         * etc/images/custom/down-pushed.pbm: New file.
26310         * etc/images/custom/down.pbm: New file.
26311         * etc/images/custom/right-pushed.pbm: New file.
26312         * etc/images/custom/right.pbm: New file.
26313         * etc/images/describe.pbm: New file.
26314         * etc/images/disconnect.pbm: New file.
26315         * etc/images/ezimage/bits.pbm: New file.
26316         * etc/images/ezimage/bitsbang.pbm: New file.
26317         * etc/images/ezimage/box-minus.pbm: New file.
26318         * etc/images/ezimage/box-plus.pbm: New file.
26319         * etc/images/ezimage/box.pbm: New file.
26320         * etc/images/ezimage/checkmark.pbm: New file.
26321         * etc/images/ezimage/dir-minus.pbm: New file.
26322         * etc/images/ezimage/dir-plus.pbm: New file.
26323         * etc/images/ezimage/dir.pbm: New file.
26324         * etc/images/ezimage/doc-minus.pbm: New file.
26325         * etc/images/ezimage/doc-plus.pbm: New file.
26326         * etc/images/ezimage/doc.pbm: New file.
26327         * etc/images/ezimage/info.pbm: New file.
26328         * etc/images/ezimage/key.pbm: New file.
26329         * etc/images/ezimage/label.pbm: New file.
26330         * etc/images/ezimage/lock.pbm: New file.
26331         * etc/images/ezimage/mail.pbm: New file.
26332         * etc/images/ezimage/page-minus.pbm: New file.
26333         * etc/images/ezimage/page-plus.pbm: New file.
26334         * etc/images/ezimage/page.pbm: New file.
26335         * etc/images/ezimage/tag-gt.pbm: New file.
26336         * etc/images/ezimage/tag-minus.pbm: New file.
26337         * etc/images/ezimage/tag-plus.pbm: New file.
26338         * etc/images/ezimage/tag-type.pbm: New file.
26339         * etc/images/ezimage/tag-v.pbm: New file.
26340         * etc/images/ezimage/tag.pbm: New file.
26341         * etc/images/ezimage/unlock.pbm: New file.
26342         * etc/images/gnus/important.pbm: New file.
26343         * etc/images/gnus/mail-send.pbm: New file.
26344         * etc/images/gnus/receipt.pbm: New file.
26345         * etc/images/gnus/toggle-subscription.pbm: New file.
26346         * etc/images/gnus/unimportant.pbm: New file.
26347         * etc/images/gud/all.pbm: New file.
26348         * etc/images/gud/rcont.pbm: New file.
26349         * etc/images/gud/recstart.pbm: New file.
26350         * etc/images/gud/recstop.pbm: New file.
26351         * etc/images/gud/rfinish.pbm: New file.
26352         * etc/images/gud/rnext.pbm: New file.
26353         * etc/images/gud/rnexti.pbm: New file.
26354         * etc/images/gud/rstep.pbm: New file.
26355         * etc/images/gud/rstepi.pbm: New file.
26356         * etc/images/gud/thread.pbm: New file.
26357         * etc/images/lock-broken.pbm: New file.
26358         * etc/images/lock-ok.pbm: New file.
26359         * etc/images/lock.pbm: New file.
26360         * etc/images/mail/copy.pbm: New file.
26361         * etc/images/mail/forward.pbm: New file.
26362         * etc/images/mail/not-spam.pbm: New file.
26363         * etc/images/mail/outbox.pbm: New file.
26364         * etc/images/mail/preview.pbm: New file.
26365         * etc/images/mail/save-draft.pbm: New file.
26366         * etc/images/mh-logo.pbm: New file.
26367         * etc/images/mpc/add.pbm: New file.
26368         * etc/images/mpc/ffwd.pbm: New file.
26369         * etc/images/mpc/next.pbm: New file.
26370         * etc/images/mpc/pause.pbm: New file.
26371         * etc/images/mpc/play.pbm: New file.
26372         * etc/images/mpc/prev.pbm: New file.
26373         * etc/images/mpc/rewind.pbm: New file.
26374         * etc/images/mpc/stop.pbm: New file.
26375         * etc/images/redo.pbm: New file.
26376         * etc/images/smilies/braindamaged.pbm: New file.
26377         * etc/images/smilies/cry.pbm: New file.
26378         * etc/images/smilies/dead.pbm: New file.
26379         * etc/images/smilies/evil.pbm: New file.
26380         * etc/images/smilies/forced.pbm: New file.
26381         * etc/images/smilies/grin.pbm: New file.
26382         * etc/images/smilies/indifferent.pbm: New file.
26383         * etc/images/sort-ascending.pbm: New file.
26384         * etc/images/sort-column-ascending.pbm: New file.
26385         * etc/images/sort-criteria.pbm: New file.
26386         * etc/images/sort-descending.pbm: New file.
26387         * etc/images/sort-row-ascending.pbm: New file.
26388         * etc/images/unchecked.pbm: New file.
26389         * etc/images/zoom-in.pbm: New file.
26390         * etc/images/README: Update instructions for PBM files.
26392         Add separator.pbm tool-bar image
26393         * etc/images/separator.pbm: New file.  Having it avoids the side
26394         effect of changing the tool-bar height when the default font's size
26395         changes and XPM image support is not available, due to the SPC
26396         characters that are left in the Lisp string used to display the tool
26397         bar, because there are no images to display instead of those SPC
26398         characters.
26400         Make show-paren-match face visible on mono-color displays
26401         * lisp/faces.el (show-paren-match): Use the underline face for
26402         mono-color displays.  (Bug#21481)
26404 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
26406         Don’t double-encode non-ASCII mail clipboard
26407         * lisp/mail/mailclient.el (mailclient-send-it):
26408         Also fix the case when mailclient-place-body-on-clipboard-flag
26409         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
26411 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
26413         Adapt file-notify-tests.el test cases
26414         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
26415         * src/inotify.c (Finotify_valid_p): Adapt docstring.
26416         * test/automated/file-notify-tests.el
26417         (file-notify-test03-autorevert)
26418         (file-notify-test04-file-validity)
26419         (file-notify-test04-file-validity-remote)
26420         (file-notify-test05-dir-validity)
26421         (file-notify-test05-dir-validity-remote): Adapt docstring.
26422         (file-notify-test04-file-validity): Let events arrive before
26423         calling final `file-notify-valid-p'.  Do not ignore errors.
26424         (file-notify-test05-dir-validity): Do not manipulate
26425         `temporary-file-directory', it isn't necessary.  Let events arrive
26426         before calling final `file-notify-valid-p'.  Do not ignore errors.
26428 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
26430         Don’t double-encode non-ASCII for mail client
26431         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
26432         Use RFC 6068’s list of unreserved characters.
26433         (mailclient-send-it): When encoding the body as a URL,
26434         first decode it as per Content-Type: and Content-Transfer-Encoding:,
26435         as URLs must use percent-encoded UTF-8 (Bug#21471).
26436         * doc/misc/url.texi (mailto): Update RFC number.
26438 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
26440         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
26442 2015-09-14  Alan Mackenzie  <acm@muc.de>
26444         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
26445         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
26446         `cadr/car'.
26448 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
26450         Clarify documentation of char-table extra slots
26451         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
26452         slot numbers are zero-based.  (Bug#21467)
26454 2015-09-14  Alan Mackenzie  <acm@muc.de>
26456         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
26457         Fixes bug#21449.
26458         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
26459         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
26460         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
26461         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
26462         Insert "\\|\\\\." into regexps which match symbols.
26464 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
26466         Improve the doc string of w32notify-valid-p
26467         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
26468         that removing a watch makes its object invalid.
26470 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
26472         Fix tests for file-notify-valid-p
26473         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
26474         Use delete-directory to delete file-notify--test-tmpfile if it is
26475         a directory.  Likewise for file-notify--test-tmpfile1.
26476         (file-notify-test04-file-validity)
26477         (file-notify-test05-dir-validity): Delete the parent directory of
26478         the test.  Ignore errors when cleaning up after the test.
26480 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
26482         Report file-notify-error in w32notify.c
26483         * src/w32notify.c (report_w32notify_error): New function.
26484         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
26485         errors, instead of calling report_file_error.  (Bug#21432)
26487         Implement w32notify-valid-p
26488         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
26489         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
26490         'identity'.
26492 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
26494         Test file-notify-valid-p
26495         * test/automated/file-notify-tests.el
26496         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
26497         New tests.
26499 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
26501         Fix markup in ELisp manual
26502         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
26503         of the 'alpha' parameter value.  (Bug#21470)
26505 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
26507         Introduce `file-notify-valid-p'
26508         * lisp/filenotify.el (file-notify-valid-p): New defun.
26509         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
26510         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
26511         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
26512         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
26513         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
26514         <file-notify-valid-p>: Add handler.
26515         * lisp/net/tramp.el (tramp-file-name-for-operation):
26516         Add `file-notify-valid-p'.
26517         (tramp-handle-file-notify-valid-p): New defun.
26518         * src/inotify.c (Finotify_valid_p): New defun.
26519         (syms_of_inotify): Declare Sinotify_valid_p.
26521 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
26523         Port Unicode char detection to FreeBSD+svgalib
26524         Problem reported by Ashish SHUKLA in:
26525         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
26526         * configure.ac: Check for struct unipair.unicode instead of for
26527         <linux/kd.h>, since that’s more specific to what the code
26528         actually needs.
26529         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
26531         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
26533 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
26535         Fix vertical cursor motion across overlay strings with newlines
26536         * src/indent.c (Fvertical_motion): Don't leave point in the middle
26537         of an overlay string with newlines, as that will position the
26538         cursor after the string at whatever column is there.  (Bug#21468)
26540 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
26542         Fix tests in file-notify-tests.el
26543         * test/automated/file-notify-tests.el: Remove Tramp declarations.
26544         (file-notify-test00-availability): Print remote command w/o Tramp
26545         internal functions.
26546         (file-notify-test02-events, file-notify-test02-events-remote):
26547         Adapt docstring.
26548         (file-notify-test03-autorevert): Use `format-message' when
26549         inspecting *Messages* buffer.
26551 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
26553         Bind inhibit-modification-hooks rather than a/b-c-f
26554         * lisp/wid-edit.el (widget-editable-list-insert-before)
26555         (widget-editable-list-delete-at):
26556         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
26557         (cperl-font-lock-unfontify-region-function):
26558         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
26559         * lisp/obsolete/longlines.el (longlines-mode):
26560         * lisp/obsolete/fast-lock.el (save-buffer-state):
26561         * lisp/mouse.el (mouse-save-then-kill-delete-region):
26562         * lisp/gnus/message.el (message-hide-headers):
26563         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
26564         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
26565         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
26566         than after/before-change-functions to nil.
26568 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
26570         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
26571         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
26572         the buffers, even if the forced redisplay is interrupted.
26574         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
26576         Merge syntax-propertize--done and parse-sexp-propertize-done
26577         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
26578         (syntax-propertize): Set syntax-propertize--done even if
26579         syntax-propertize-function is nil.  Avoid recursive invocations.
26580         (syntax-propertize-chunks): New var.
26581         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
26582         Simplify.
26583         (parse-sexp-propertize-function): Don't set any more.
26584         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
26585         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
26586         Call Qinternal__syntax_propertize instead of
26587         Vparse_sexp_propertize_function.  Truncate e_property if needed.
26588         (update_syntax_table_forward): Streamline.
26589         (syms_of_syntax): Define Qinternal__syntax_propertize.
26590         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
26592 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
26594         Prefer straight quoting in some text files
26595         Mostly this just changes ` to ' in static text.  Some exceptions:
26596         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
26597         typically does that now.
26598         * admin/quick-install-emacs (TRY, top level):
26599         Use straight quoting in diagnostics.
26600         * src/README: Fix working-directory confusion.
26602         * CONTRIBUTE: Move send-email here from git-workflow.
26604 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
26606         Improve file notifications in Tramp
26607         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
26608         Set proper events to watch for.
26609         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
26610         watched events.
26612 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
26614         Fix NS build with --enable-checking='glyphs'
26615         * src/nsfns.m (unwind_create_frame): Make the preprocessor
26616         conditionals for referencing 'dpyinfo' consistent throughout the
26617         function.  (Bug#21426)
26619 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
26621         Add seq-find
26622         This function is similar to `seq-some' but returns the found element.
26623         In the cases where nil can be the found element, a sentinel optional
26624         argument can be provided to avoid ambiguities.
26625         * lisp/emacs-lisp/seq.el (seq-find): New function.
26626         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
26627         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
26628         seq-find.
26630 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
26632         Document file-notify--test-with-events.
26633         * test/automated/file-notify-tests.el (file-notify--test-with-events):
26634         Add docstring.
26636 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
26638         Report used native library in file-notify-tests.el
26639         * test/automated/file-notify-tests.el
26640         (tramp-get-remote-gvfs-monitor-dir)
26641         (tramp-get-remote-inotifywait): Declare them.
26642         (file-notify-test00-availability): Print used native library.
26644 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
26646         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
26647         (mpc-file-local-copy): Check for absolute path.  Check more config
26648         locations.
26650 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
26652         Improve documentation of categories
26653         * doc/lispref/syntax.texi (Categories): Clarify the example of
26654         using define-category and modify-category-entry.  (Bug#21448)
26656 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
26658         Revert some stray curved quotes I missed earlier
26659         Problem reported by David Kastrup in:
26660         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
26661         * lisp/international/mule-cmds.el (leim-list-header):
26662         Use format-message with an ASCII-only format.
26664         Prefer NUMBERP to spelling it out
26665         * src/editfns.c (styled_format):
26666         * src/frame.h (NUMVAL):
26667         * src/image.c (parse_image_spec):
26668         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
26669         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
26670         * src/process.c (Fsignal_process):
26671         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
26672         * src/xfaces.c (check_lface_attrs):
26673         * src/xselect.c (x_fill_property_data, x_send_client_event):
26674         Use NUMBERP rather than INTEGERP || FLOATP.
26676 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
26678         Improve file-notify-tests
26679         * test/automated/file-notify-tests.el: Use lexical-binding.
26680         (file-notify--test-cleanup): New function.
26681         (file-notify-test00-availability, file-notify-test01-add-watch)
26682         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
26683         (file-notify--test-with-events): New macro.
26684         (file-notify-test02-events): Use it.
26686 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
26688         Add patch-sending instructions to git-workflow
26689         From a suggestion by Mitchel Humpherys in:
26690         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
26691         * admin/notes/git-workflow (Sending patches): New section.
26693         Port to GIFLIB 5.0.6 and later
26694         Problem reported by Mitchel Humpherys in:
26695         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
26696         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
26697         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
26698         (gif_load) [HAVE_GIF]: Use it.
26700 2015-09-10  Glenn Morris  <rgm@gnu.org>
26702         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
26704 2015-09-09  Glenn Morris  <rgm@gnu.org>
26706         * test/automated/file-notify-tests.el (file-notify-test02-events):
26707         Fix recent change.
26709 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
26711         Refix movemail GCC pacification
26712         Problem reported by Ken Brown in:
26713         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
26714         * lib-src/movemail.c (main): Fix previous change.
26716 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
26718         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
26719         Mark unused vars with underscore.
26721         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
26722         (parse_sexp_propertize): ...from here.
26724         * lisp/filenotify.el: Use lexical-binding
26725         (file-notify-add-watch): Avoid add-to-list.
26727 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
26729         Start checking event types in file-notify tests
26730         * test/automated/file-notify-tests.el (file-notify--test-events):
26731         New variable.
26732         (file-notify--test-event-handler): Append received event to
26733         file-notify--test-events for later analysis.
26734         (file-notify-test02-events): Assert that the expected notifications have
26735         arrived in the expected order.
26737 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
26739         Merge from gnulib and texinfo
26740         This incorporates:
26741         2015-08-03 Improve port of stdalign to C++11
26742         * lib/stdalign.in.h: Copy from gnulib.
26743         * doc/misc/texinfo.tex: Copy from texinfo.
26745 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
26747         Make syntax.c call syntax-propertize on demand
26748         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
26749         (parse-sexp-propertize-function): Use it.
26750         (syntax-propertize): Disable parse-sexp-propertize-function.
26751         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
26752         New functions.
26753         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
26754         `parse-sexp-propertize-function'.
26755         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
26756         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
26757         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
26758         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
26759         Don't assume `point' is set.
26761 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
26763         Fix indentation of an @example in ELisp manual
26764         * doc/lispref/syntax.texi (Categories): Untabify the example.
26765         (Bug#21448)
26767 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
26769         Define internal-char-font even if --without-x
26770         The function is used now even in non-graphical environments.
26771         Problem reported by Glenn Morris in:
26772         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
26773         * src/font.c (Finternal_char_font): Move here ...
26774         * src/fontset.c (Finternal_char_font): ... from here.
26776 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
26778         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
26779         Remove warning.
26781 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
26783         Fix display of complex local data types in GDB-MI
26784         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
26785         variable has no value, display "<complex data type>" as a
26786         placeholder, instead of a confusing "nil".  (Bug#21438)
26788 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
26790         Remove redundant redefinition of seq-drop-while from seq.el
26791         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
26793 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
26795         * lisp/emacs-lisp/package.el (package--ensure-init-file):
26796         More robust check for `package-initialize' calls in init file.
26797         This function accepts an optional argument, but calls passing
26798         an argument would not have been detected.
26800 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
26802         Port movemail to RHEL 6 with --enable-gcc-warnings
26803         * lib-src/movemail.c (main): Declare local only if needed.
26805         Port recent Linux console changes to RHEL 6
26806         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
26808         Improvements for curved quotes on Linux consule
26809         This should help Emacs work better out-of-the-box on Linux consoles,
26810         which have only limited support for displaying Unicode characters.
26811         Also, undo the recent change that caused text-quoting-style to
26812         affect quote display on terminals, so that the two features are
26813         independent.  See Alan Mackenzie in:
26814         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
26815         Finally, add a style parameter to startup--setup-quote-display,
26816         so that this function can also be invoked after startup, with
26817         different styles depending on user preference at the time.
26818         * configure.ac: Check for linux/kd.h header.
26819         * doc/emacs/display.texi (Text Display): Document quote display.
26820         * doc/lispref/display.texi (Active Display Table):
26821         * etc/NEWS:
26822         * lisp/startup.el (startup--setup-quote-display, command-line):
26823         text-quoting-style no longer affects quote display.
26824         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
26825         * lisp/international/mule-util.el (char-displayable-p):
26826         * lisp/startup.el (startup--setup-quote-display):
26827         On a text terminal supporting glyph codes, use the reported
26828         glyph codes instead of the terminal coding system, as this
26829         is more accurate on the Linux console.
26830         * lisp/startup.el (startup--setup-quote-display):
26831         New optional arg STYLE.
26832         * src/fontset.c (Finternal_char_font):
26833         Report glyph codes for a text terminal, if they are available.
26834         Currently this is supported only for the Linux console.
26835         * src/termhooks.h (struct terminal): New member glyph-code-table.
26836         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
26837         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
26838         (terminal_glyph_code): New function.
26840 2015-09-08  Juri Linkov  <juri@linkov.net>
26842         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
26843         underline.  (Bug#21433)
26845 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
26847         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
26849 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
26851         Fix double-reporting of rename events with inotify
26852         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
26853         of rename events with inotify (bug#21435).
26855 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
26857         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
26858         (tetris-mode-map): Use it.
26860 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
26862         Remove a few simple cases of global redisplay
26863         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
26864         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
26865         rather than returning a "resized_p" boolean.
26866         (redisplay_internal): Adjust call accordingly.
26867         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
26868         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
26869         tracking of this undesirable situation.
26871         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
26872         * src/process.c (status_notify): Only set the update_mode_line on the
26873         relevant buffers rather than setting it globally.
26875 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
26877         * lisp/electric.el (electric-quote-post-self-insert-function):
26878         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
26879         (electric-quote-mode): Activate everywhere in message-mode.
26881 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
26883         Go back to grave quoting in source-code docstrings etc.
26884         This reverts almost all my recent changes to use curved quotes
26885         in docstrings and/or strings used for error diagnostics.
26886         There are a few exceptions, e.g., Bahá’í proper names.
26887         * admin/unidata/unidata-gen.el (unidata-gen-table):
26888         * lisp/abbrev.el (expand-region-abbrevs):
26889         * lisp/align.el (align-region):
26890         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
26891         (outlineify-sticky):
26892         * lisp/apropos.el (apropos-library):
26893         * lisp/bookmark.el (bookmark-default-annotation-text):
26894         * lisp/button.el (button-category-symbol, button-put)
26895         (make-text-button):
26896         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
26897         * lisp/calc/calc-embed.el (calc-do-embedded):
26898         * lisp/calc/calc-ext.el (calc-user-function-list):
26899         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
26900         * lisp/calc/calc-help.el (calc-describe-key)
26901         (calc-describe-thing, calc-full-help):
26902         * lisp/calc/calc-lang.el (calc-c-language)
26903         (math-parse-fortran-vector-end, math-parse-tex-sum)
26904         (math-parse-eqn-matrix, math-parse-eqn-prime)
26905         (calc-yacas-language, calc-maxima-language, calc-giac-language)
26906         (math-read-giac-subscr, math-read-math-subscr)
26907         (math-read-big-rec, math-read-big-balance):
26908         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
26909         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
26910         (calc-auto-recompute):
26911         * lisp/calc/calc-prog.el (calc-fix-token-name)
26912         (calc-read-parse-table-part, calc-user-define-invocation)
26913         (math-do-arg-check):
26914         * lisp/calc/calc-store.el (calc-edit-variable):
26915         * lisp/calc/calc-units.el (math-build-units-table-buffer):
26916         * lisp/calc/calc-vec.el (math-read-brackets):
26917         * lisp/calc/calc-yank.el (calc-edit-mode):
26918         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
26919         * lisp/calendar/appt.el (appt-display-message):
26920         * lisp/calendar/diary-lib.el (diary-check-diary-file)
26921         (diary-mail-entries, diary-from-outlook):
26922         * lisp/calendar/icalendar.el (icalendar-export-region)
26923         (icalendar--convert-float-to-ical)
26924         (icalendar--convert-date-to-ical)
26925         (icalendar--convert-ical-to-diary)
26926         (icalendar--convert-recurring-to-diary)
26927         (icalendar--add-diary-entry):
26928         * lisp/calendar/time-date.el (format-seconds):
26929         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
26930         (timeclock-make-hours-explicit, timeclock-log-data):
26931         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
26932         (todo-item-mark, todo-check-format)
26933         (todo-insert-item--next-param, todo-edit-item--next-key)
26934         (todo-mode):
26935         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
26936         * lisp/cedet/mode-local.el (describe-mode-local-overload)
26937         (mode-local-print-binding, mode-local-describe-bindings-2):
26938         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
26939         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
26940         * lisp/cus-start.el (standard):
26941         * lisp/cus-theme.el (describe-theme-1):
26942         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
26943         (custom--sort-vars-1, load-theme):
26944         * lisp/descr-text.el (describe-text-properties-1, describe-char):
26945         * lisp/dired-x.el (dired-do-run-mail):
26946         * lisp/dired.el (dired-log):
26947         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
26948         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
26949         (ad-disable-advice, ad-remove-advice, ad-set-argument)
26950         (ad-set-arguments, ad--defalias-fset, ad-activate)
26951         (ad-deactivate):
26952         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
26953         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
26954         (byte-optimize-while, byte-optimize-apply):
26955         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
26956         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
26957         (byte-compile-log-file, byte-compile-format-warn)
26958         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
26959         (byte-compile-cl-warn)
26960         (byte-compile-warn-about-unresolved-functions)
26961         (byte-compile-file, byte-compile--declare-var)
26962         (byte-compile-file-form-defmumble, byte-compile-form)
26963         (byte-compile-normal-call, byte-compile-check-variable)
26964         (byte-compile-variable-ref, byte-compile-variable-set)
26965         (byte-compile-subr-wrong-args, byte-compile-setq-default)
26966         (byte-compile-negation-optimizer)
26967         (byte-compile-condition-case--old)
26968         (byte-compile-condition-case--new, byte-compile-save-excursion)
26969         (byte-compile-defvar, byte-compile-autoload)
26970         (byte-compile-lambda-form)
26971         (byte-compile-make-variable-buffer-local, display-call-tree)
26972         (batch-byte-compile):
26973         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
26974         * lisp/emacs-lisp/chart.el (chart-space-usage):
26975         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
26976         (check-declare-warn, check-declare-file)
26977         (check-declare-directory):
26978         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
26979         (checkdoc-message-text-engine):
26980         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
26981         (cl--describe-class):
26982         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
26983         (cl--generic-describe, cl-generic-generalizers):
26984         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
26985         (cl-symbol-macrolet):
26986         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
26987         * lisp/emacs-lisp/copyright.el (copyright)
26988         (copyright-update-directory):
26989         * lisp/emacs-lisp/edebug.el (edebug-read-list):
26990         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
26991         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
26992         (eieio-oref):
26993         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
26994         * lisp/emacs-lisp/eieio-speedbar.el:
26995         (eieio-speedbar-child-make-tag-lines)
26996         (eieio-speedbar-child-description):
26997         * lisp/emacs-lisp/eieio.el (defclass, change-class):
26998         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
26999         (elint-init-form, elint-check-defalias-form)
27000         (elint-check-let-form):
27001         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
27002         (ert-results-pop-to-backtrace-for-test-at-point)
27003         (ert-results-pop-to-messages-for-test-at-point)
27004         (ert-results-pop-to-should-forms-for-test-at-point)
27005         (ert-describe-test):
27006         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
27007         (find-function-library):
27008         * lisp/emacs-lisp/generator.el (iter-yield):
27009         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
27010         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
27011         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
27012         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
27013         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
27014         (advice--make, define-advice):
27015         * lisp/emacs-lisp/package-x.el (package-upload-file):
27016         * lisp/emacs-lisp/package.el (package-version-join)
27017         (package-disabled-p, package-activate-1, package-activate)
27018         (package--download-one-archive)
27019         (package--download-and-read-archives)
27020         (package-compute-transaction, package-install-from-archive)
27021         (package-install, package-install-selected-packages)
27022         (package-delete, package-autoremove, describe-package-1)
27023         (package-install-button-action, package-delete-button-action)
27024         (package-menu-hide-package, package-menu--list-to-prompt)
27025         (package-menu--perform-transaction)
27026         (package-menu--find-and-notify-upgrades):
27027         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
27028         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
27029         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
27030         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
27031         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
27032         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
27033         (rx-form):
27034         * lisp/emacs-lisp/smie.el (smie-config-save):
27035         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
27036         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
27037         * lisp/emacs-lisp/testcover.el (testcover-1value):
27038         * lisp/emacs-lisp/timer.el (timer-event-handler):
27039         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
27040         (viper-toggle-search-style, viper-kill-buffer)
27041         (viper-brac-function):
27042         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
27043         * lisp/env.el (setenv):
27044         * lisp/erc/erc-button.el (erc-nick-popup):
27045         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
27046         * lisp/eshell/em-dirs.el (eshell/cd):
27047         * lisp/eshell/em-glob.el (eshell-glob-regexp)
27048         (eshell-glob-entries):
27049         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
27050         * lisp/eshell/esh-opt.el (eshell-show-usage):
27051         * lisp/facemenu.el (facemenu-add-new-face)
27052         (facemenu-add-new-color):
27053         * lisp/faces.el (read-face-name, read-face-font, describe-face)
27054         (x-resolve-font-name):
27055         * lisp/files-x.el (modify-file-local-variable):
27056         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
27057         (set-auto-mode, hack-one-local-variable--obsolete)
27058         (dir-locals-set-directory-class, write-file, basic-save-buffer)
27059         (delete-directory, copy-directory, recover-session)
27060         (recover-session-finish, insert-directory)
27061         (file-modes-char-to-who, file-modes-symbolic-to-number)
27062         (move-file-to-trash):
27063         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
27064         * lisp/find-cmd.el (find-generic, find-to-string):
27065         * lisp/finder.el (finder-commentary):
27066         * lisp/font-lock.el (font-lock-fontify-buffer):
27067         * lisp/format.el (format-write-file, format-find-file)
27068         (format-insert-file):
27069         * lisp/frame.el (get-device-terminal, select-frame-by-name):
27070         * lisp/fringe.el (fringe--check-style):
27071         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
27072         * lisp/help-fns.el (help-fns--key-bindings)
27073         (help-fns--compiler-macro, help-fns--parent-mode)
27074         (help-fns--obsolete, help-fns--interactive-only)
27075         (describe-function-1, describe-variable):
27076         * lisp/help.el (describe-mode)
27077         (describe-minor-mode-from-indicator):
27078         * lisp/image.el (image-type):
27079         * lisp/international/ccl.el (ccl-dump):
27080         * lisp/international/fontset.el (x-must-resolve-font-name):
27081         * lisp/international/mule-cmds.el (prefer-coding-system)
27082         (select-safe-coding-system-interactively)
27083         (select-safe-coding-system, activate-input-method)
27084         (toggle-input-method, describe-current-input-method)
27085         (describe-language-environment):
27086         * lisp/international/mule-conf.el (code-offset):
27087         * lisp/international/mule-diag.el (describe-character-set)
27088         (list-input-methods-1):
27089         * lisp/mail/feedmail.el (feedmail-run-the-queue):
27090         * lisp/mouse.el (minor-mode-menu-from-indicator):
27091         * lisp/mpc.el (mpc-playlist-rename):
27092         * lisp/msb.el (msb--choose-menu):
27093         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
27094         * lisp/net/imap.el (imap-interactive-login):
27095         * lisp/net/mairix.el (mairix-widget-create-query):
27096         * lisp/net/newst-backend.el (newsticker--sentinel-work):
27097         * lisp/net/newst-treeview.el (newsticker--treeview-load):
27098         * lisp/net/rlogin.el (rlogin):
27099         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
27100         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
27101         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
27102         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
27103         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
27104         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
27105         (org-babel-goto-named-result):
27106         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
27107         * lisp/org/ob-ref.el (org-babel-ref-resolve):
27108         * lisp/org/org-agenda.el (org-agenda-prepare):
27109         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
27110         (org-clock-resolve):
27111         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
27112         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
27113         * lisp/org/org-habit.el (org-habit-parse-todo):
27114         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
27115         (org-mouse-context-menu):
27116         * lisp/org/org-table.el (org-table-edit-formulas):
27117         * lisp/org/ox.el (org-export-async-start):
27118         * lisp/proced.el (proced-log):
27119         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
27120         (ada-check-matching-start, ada-goto-matching-start):
27121         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
27122         * lisp/progmodes/ada-xref.el (ada-find-executable):
27123         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
27124         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
27125         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
27126         (flymake-start-syntax-check-process):
27127         * lisp/progmodes/python.el (python-shell-get-process-or-error)
27128         (python-define-auxiliary-skeleton):
27129         * lisp/progmodes/sql.el (sql-comint):
27130         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
27131         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
27132         * lisp/recentf.el (recentf-open-files):
27133         * lisp/replace.el (query-replace-read-from)
27134         (occur-after-change-function, occur-1):
27135         * lisp/scroll-bar.el (scroll-bar-columns):
27136         * lisp/server.el (server-get-auth-key):
27137         * lisp/simple.el (execute-extended-command)
27138         (undo-outer-limit-truncate, list-processes--refresh)
27139         (compose-mail, set-variable, choose-completion-string)
27140         (define-alternatives):
27141         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
27142         (command-line-1):
27143         * lisp/subr.el (noreturn, define-error, add-to-list)
27144         (read-char-choice, version-to-list):
27145         * lisp/term/common-win.el (x-handle-xrm-switch)
27146         (x-handle-name-switch, x-handle-args):
27147         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
27148         * lisp/textmodes/reftex-ref.el (reftex-label):
27149         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
27150         * lisp/textmodes/two-column.el (2C-split):
27151         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
27152         (tutorial--find-changed-keys):
27153         * lisp/type-break.el (type-break-noninteractive-query):
27154         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
27155         (wdired-do-perm-changes):
27156         * lisp/whitespace.el (whitespace-report-region):
27157         Prefer grave quoting in source-code strings used to generate help
27158         and diagnostics.
27159         * lisp/faces.el (face-documentation):
27160         No need to convert quotes, since the result is a docstring.
27161         * lisp/info.el (Info-virtual-index-find-node)
27162         (Info-virtual-index, info-apropos):
27163         Simplify by generating only curved quotes, since info files are
27164         typically that ways nowadays anyway.
27165         * lisp/international/mule-diag.el (list-input-methods):
27166         Don’t assume text quoting style is curved.
27167         * lisp/org/org-bibtex.el (org-bibtex-fields):
27168         Revert my recent changes, going back to the old quoting style.
27170 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
27172         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
27173         (package--autoloads-file-name)
27174         (package--activate-autoloads-and-load-path): New function.
27175         (package-activate-1): Delegate autoloading and load-path
27176         configuration to `package--activate-autoloads-and-load-path'.
27177         (package--compile): Before compilation, call
27178         `package--activate-autoloads-and-load-path' instead of
27179         `package-activate-1'.
27181 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
27183         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
27185 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
27187         Fix deletion of symlinks to directories on MS-Windows
27188         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
27189         symlink to a directory, try again with 'rmdir'.
27190         (is_symlink): If the argument is a symlink to a directory, set a
27191         bit in the return value to indicate that fact.
27193 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
27195         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
27196         When `package-initialize' is called as part of loading the init file,
27197         the user probably doesn't want it to be called again afterwards.
27198         In this situation, `package-initialize' now sets
27199         `package-enable-at-startup' to nil to prevent that.  The user can have
27200         the old behavior by setting this variable to t after the call to
27201         `package-initialize'.  (Bug#21423)
27202         * doc/emacs/package.texi (Package Installation): Document it.
27203         * doc/lispref/package.texi (Packaging Basics): Document it.
27204         * etc/NEWS: Document it.
27206 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
27208         Bump version of ntlm.el to 2.00
27209         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
27210         Add comm keyword.
27212 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
27214         * doc/misc/gnus.texi (Mail Source Specifiers):
27215         Allow :mailbox to be a list.
27217 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
27219         * lisp/progmodes/etags.el (etags-tags-completion-table):
27220         Allow even one non-regular character before the implicit tag name.
27221         Reported at http://emacs.stackexchange.com/questions/15269/.
27223 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
27225         Add support for NTLMv2 authentication
27226         * lisp/net/ntlm.el (ntlm): New customization group.
27227         (ntlm-compatibility-level): New defcustom.
27228         (ntlm-compute-timestamp): New function.
27229         (ntlm-generate-nonce): Likewise.
27230         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
27232 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
27234         * lisp/emacs-lisp/package.el: Rename custom faces.
27235         All of the recently introduced faces, like `package-name-face', have
27236         been renamed to no end in `-face' to comply with the convention
27237         described in (info "(elisp) Defining Faces").
27238         (package-name, package-description)
27239         (package-status-built-in, package-status-external)
27240         (package-status-available, package-status-new)
27241         (package-status-held, package-status-disabled)
27242         (package-status-installed, package-status-dependency)
27243         (package-status-unsigned, package-status-incompat)
27244         (package-status-avail-obso): New faces.
27245         (package-menu--print-info-simple): Use them.
27247 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
27249         mail-source.el: Make the imap mail-source's :mailbox handle a list
27250         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
27251         Allow :mailbox to be  a list.
27253 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
27255         nnimap.el: Handle nil arg to nnimap-request-group
27256         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
27257         This arg isn't always passed in, check it's not nil before making it
27258         into a list.  The active arg will also be nil if the group is new,
27259         check for that.
27261 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
27263         File notifications: Support renaming over directory boundaries
27264         * lisp/filenotify.el (file-notify-handle-event):
27265         (file-notify--pending-event): Adapt docstring.
27266         (file-notify--descriptor, file-notify-callback): Reimplement in
27267         order to support renaming over directory boundaries.
27268         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
27269         * doc/lispref/os.texi (File Notifications): Remove limitation of
27270         file renaming to the same directory.
27272 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
27274         Spelling fix (Bug#21420)
27276 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
27278         Improve the semantic of map-some
27279         Update map-some to return the returned by the predicate, similar to
27280         seq-some.
27281         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
27282           return value of the predicate.
27283         * test/automated/map-tests.el (test-map-some): Update the test to check
27284           for non-nil values only.
27286         Rename map-contains-key-p and map-some-p
27287         Remove the "-p" suffix from both function names.
27288         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
27289           Rename the functions.
27290         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
27291           Update both test functions.
27293         Improve the semantic of seq-some
27294         Update seq-some to return non-nil if the predicate returns non-nil for
27295         any element of the seq, in which case the returned value is the one
27296         returned by the predicate.
27297         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
27298           docstring.
27299         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
27300         * doc/lispref/sequences.texi (Sequence Functions): Update the
27301           documentation for seq-some.
27303         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
27304         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
27305           without the "-p" prefix.
27306         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
27307           the tests accordingly.
27308         * doc/lispref/sequences.texi (Sequence Functions): Update the
27309           documentation for seq.el.
27311 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
27313         text-quoting-style for usage of fn names with ‘’
27314         * lisp/help.el (help--docstring-quote): Don’t assume
27315         text-quoting-style is ‘curve’ when generating usage strings for
27316         functions whose names contain curved quotes.
27318 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
27320         Fix fix for describe-function keybinding confusion
27321         This fixes a bug introduced by the previous patch.
27322         * lisp/help-fns.el (help-fns--signature):
27323         Last arg of help-fns--signature is now a buffer, or nil if a
27324         raw signature is wanted.  All callers changed.
27325         (describe-function-1): Use this to do the right thing with signatures.
27327 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
27329         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
27331         Use PAT rather than UPAT in pcase macros
27332         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
27333         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
27334           than UPAT.
27336 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
27338         Fix describe-function keybinding confusion
27339         * lisp/help-fns.el (describe-function-1): Compute signature
27340         in the original buffer, not in standard-output, so that
27341         substitute-command-keys uses the proper keybindings.
27342         This fixes Bug#21412, introduced in commit
27343         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
27345 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
27347         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
27349 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
27351         Avoid read error messages from 'inotify'
27352         * src/process.c (wait_reading_process_output): Add a
27353         'tls_available' set and manipulate it instead of 'Available' when
27354         checking TLS inputs.  Assign the value to 'Available' only if we
27355         find any TLS data waiting to be read.  This avoids error messages
27356         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
27358 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
27360         Avoid errors in thing-at-point with 2nd argument non-nil
27361         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
27362         sequences.  (Bug#21391)
27364 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
27366         Fix segfaults due to using a stale face ID
27367         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
27368         (display_echo_area_1, redisplay_internal): Call it to avoid
27369         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
27370         faces, which could case a segfault if the frame's face cache was
27371         freed since the last redisplay.  (Bug#21394)
27372         * src/xfaces.c (free_realized_faces):
27373         Call forget_escape_and_glyphless_faces.
27374         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
27376 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
27378         Fix minor problems with " in manual
27380 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
27382         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
27383         multi-hop files.
27385 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
27387         Support automated ‘make check’ in non-C locale
27388         This lets the builder optionally test Emacs behavior in other locales.
27389         The C locale is still the default for tests.
27390         * test/automated/Makefile.in (TEST_LOCALE): New macro.
27391         (emacs): Use it.
27392         * test/automated/flymake-tests.el (flymake-tests--current-face):
27393         Use C locale for subprocesses so that tests behave as expected.
27394         * test/automated/python-tests.el:
27395         (python-shell-prompt-validate-regexps-1)
27396         (python-shell-prompt-validate-regexps-2)
27397         (python-shell-prompt-validate-regexps-3)
27398         (python-shell-prompt-validate-regexps-4)
27399         (python-shell-prompt-validate-regexps-5)
27400         (python-shell-prompt-validate-regexps-6)
27401         (python-shell-prompt-set-calculated-regexps-1):
27402         Adjust expected output to match locale.
27403         * test/automated/tildify-tests.el (tildify-test--test)
27404         (tildify-space-test--test, tildify-space-undo-test--test):
27405         This test assumes UTF-8 encoding.
27407 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
27409         Fix some more docstring etc. quoting problems
27410         Mostly these fixes prevent the transliteration of apostrophes
27411         that should stay apostrophes.  Also, prefer curved quotes in
27412         Bahá’í proper names, as that’s the preferred Bahá’í style and
27413         these names are chock-full of non-ASCII characters anyway.
27414         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
27415         (eieio-defclass-internal):
27416         * lisp/emacs-lisp/eieio.el (defclass):
27417         * lisp/hi-lock.el (hi-lock-mode):
27418         Don’t transliterate Lisp apostrophes when generating a
27419         doc string or diagnostic.
27420         * lisp/international/mule-diag.el (list-coding-systems-1):
27421         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
27422         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
27423         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
27424         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
27425         Substitute quotes before putting them in the help buffer.
27427 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
27429         Re-add the notion of echo_prompt lost in the translation
27430         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
27431         echo_prompt which contains the actual string.  Update all uses.
27432         * src/keyboard.c (kset_echo_prompt): New function.
27433         (echo_update): Add echo_prompt at the very beginning.
27434         (read_char): Remove workaround for bug#19875, not needed any more.
27435         (read_key_sequence): Set echo_prompt rather than echo_string
27436         (bug#21403).
27437         (mark_kboards): Mark echo_prompt.
27439         Fix disassembly of non-compiled lexical functions (bug#21377)
27440         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
27441         * lisp/emacs-lisp/disass.el: Use lexical-binding.
27442         (disassemble): Recognize `closure's as well.
27443         (disassemble-internal): Use indirect-function and
27444         help-function-arglist, and accept `closure's.
27445         (disassemble-internal): Use interactive-form.
27446         (disassemble-1): Use functionp.
27448         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
27449         Don't compose inside verbatim blocks!
27451 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
27453         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
27454         (bug#19441).
27456         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
27458 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
27460         vc-git-mode-line-string: Explicitly re-apply the face
27461         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
27462         the face (bug#21404).
27464 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
27466         Treat initial-scratch-message as a doc string
27467         * doc/emacs/building.texi (Lisp Interaction):
27468         * doc/lispref/os.texi (Startup Summary):
27469         * etc/NEWS: Document this.
27470         * lisp/startup.el (initial-scratch-message):
27471         Look up find-file’s key rather than hardcoding it.
27472         (command-line-1): Substitute the doc string.
27473         This also substitutes the quotes, which will help test display
27474         quoting at startup.
27476         Fix describe-char bug with glyphs on terminals
27477         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
27478         buffers too, so don’t treat them differently from graphic displays.
27479         Without this fix, describe-char would throw an error on a terminal
27480         if given a glyph with a non-default face.
27482         Follow text-quoting-style in display table init
27483         This attempts to fix a problem reported by Alan Mackenzie in:
27484         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
27485         * doc/lispref/display.texi (Active Display Table):
27486         Mention how text-quoting-style affects it.
27487         * doc/lispref/help.texi (Keys in Documentation):
27488         Say how to set text-quoting-style in ~/.emacs.
27489         * etc/NEWS: Document the change.
27490         * lisp/startup.el (startup--setup-quote-display):
27491         Follow user preference if text-quoting-style is set.
27492         (command-line): Setup quote display again if user expresses
27493         a preference in .emacs.
27495 2015-09-02  K. Handa  <handa@gnu.org>
27497         Fix typo
27498         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
27499         -> OTF_positioning_type_components_mask.
27501         Fix previous change
27502         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
27503         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
27505 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
27507         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
27508         Rename from vc-find-file-hook and make interactive.
27509         (vc-find-file-hook): Redefine as obsolete alias.
27511 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
27513         Escape ` and ' in doc
27514         Escape apostrophes and grave accents in docstrings if they are
27515         are supposed to stand for themselves and are not quotes.  Remove
27516         apostrophes from docstring examples like ‘'(calendar-nth-named-day
27517         -1 0 10 year)’ that confuse source code with data.  Do some other
27518         minor docstring fixups as well, e.g., insert a missing close quote.
27520 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
27522         Generalize the prefix-command machinery of C-u
27523         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
27524         (prefix-command-preserve-state-hook): New hooks.
27525         (internal-echo-keystrokes-prefix): New function.
27526         (prefix-command--needs-update, prefix-command--last-echo): New vars.
27527         (prefix-command-update, prefix-command-preserve): New functions.
27528         (reset-this-command-lengths): New compatibility definition.
27529         (universal-argument--mode): Call prefix-command-update.
27530         (universal-argument, universal-argument-more, negative-argument)
27531         (digit-argument): Call prefix-command-preserve-state.
27532         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
27533         the "prefix argument" to echo.
27534         (this_command_key_count_reset, before_command_key_count)
27535         (before_command_echo_length): Delete variables.
27536         (echo_add_key): Always add a space.
27537         (echo_char): Remove.
27538         (echo_dash): Don't give up when this_command_key_count is 0, since that
27539         is now the case after a prefix command.
27540         (echo_update): New function, extracted from echo_now.
27541         (echo_now): Use it.
27542         (add_command_key, read_char, record_menu_key): Remove old disabled code.
27543         (command_loop_1): Don't refrain from pushing an undo boundary when
27544         prefix-arg is set.  Remove other prefix-arg special case, now handled
27545         directly in the prefix commands instead.  But call echo_now if there's
27546         a prefix state to echo.
27547         (read_char, record_menu_key): Use echo_update instead of echo_char.
27548         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
27549         (Freset_this_command_lengths): Delete function.
27550         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
27551         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
27552         * lisp/simple.el: Use those new hooks for C-u.
27553         (universal-argument--description): New function.
27554         (prefix-command-echo-keystrokes-functions): Use it.
27555         (universal-argument--preserve): New function.
27556         (prefix-command-preserve-state-hook): Use it.
27557         (command-execute): Call prefix-command-update if needed.
27558         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
27559         (kmacro-step-edit-prefix-index): Delete variables.
27560         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
27561         support for prefix arg commands.
27562         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
27563         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
27564         (cua--shift-control-prefix): Use prefix-command-preserve-state.
27565         Remove now unused arg `arg'.
27566         (cua--prefix-override-handler, cua--prefix-repeat-handler)
27567         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
27568         Update accordingly.
27569         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
27570         any more.
27571         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
27572         if the mark is not set.
27574 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
27576         Rework quoting in Emacs Lisp Introduction
27577         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
27578         (if in more detail, type-of-animal in detail, else): Rework the
27579         early example to use " rather than ' so that we don’t burden
27580         complete novices with the low-priority detail of text quoting style.
27581         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
27582         (kill-new function, kill-ring-yank-pointer)
27583         (Complete forward-sentence, Loading Files)
27584         (Code for current-kill, Code for current-kill, yank):
27585         Resurrect the Emacs 22 versions of the code, which uses grave
27586         quoting style in doc strings.
27587         (Complete zap-to-char): Mention how quoting works in doc strings.
27589         Setup quote display only if interactive
27590         * lisp/startup.el (command-line):
27591         Skip call to startup--setup-quote-display if noninteractive.
27592         Without this change, python-shell-prompt-validate-regexps-1
27593         fails in test/automated/python-tests.el when run in an
27594         en_US.utf8 locale on Fedora.
27596 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
27598         Use defalias at the top level
27599         * lisp/gnus/gnus-util.el (gnus-format-message):
27600         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
27601         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
27603 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
27605         terminal-init-w32console mimics command-line
27606         Problem reported by Eli Zaretskii.
27607         * lisp/startup.el (startup--setup-quote-display):
27608         New function, refactored from a part of ‘command-line’.
27609         (command-line): Use it.
27610         * lisp/term/w32console.el (terminal-init-w32console):
27611         Use it, so that this function stays consistent with ‘command-line’.
27613         Display replacement quotes with shadow glyphs
27614         * lisp/startup.el (command-line): When displaying ASCII
27615         replacements for curved quotes, use a shadow glyph instead of a
27616         regular one, to avoid ambiguity.
27618 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
27620         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
27622 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
27624         Docstring fixes re quotes in C code
27625         Fix some docstring quoting problems, mostly by escaping apostrophe.
27627 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
27629         Some Tramp password fixes
27630         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
27631         of the hops.
27632         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
27633         at the beginning of the command.  Otherwise, it could be
27634         interpreted as password prompt if the remote host echoes the
27635         command.
27636         (tramp-remote-coding-commands): Add "openssl enc -base64".
27638 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
27640         Make vc-git-working-revision always return the commit hash
27641         * lisp/vc/vc-git.el (vc-git-working-revision):
27642         Return the commit hash (bug#21383).
27643         (vc-git--symbolic-ref): New function, extracted from above.
27644         (vc-git-mode-line-string): Use it.
27646 2015-09-01  K. Handa  <handa@gnu.org>
27648         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
27649         * src/ftfont.c (MFLTGlyphFT): New type.
27650         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
27651         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
27652         elements in the array MFLTGlyphString.glyphs.
27654 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
27656         Improve comments in elisp-mode.el, elisp-mode-tests.el
27657         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
27659         Delete Emacs 25 test in mode-local.el
27660         * lisp/cedet/mode-local.el (describe-mode-local-overload):
27661         Fix missed an edit in previous commit.
27663         Show all known mode-local overrides in *Help*
27664         * lisp/cedet/mode-local.el (describe-mode-local-overload):
27665         Assume Emacs 25. Add all known mode-local overrides.
27667 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
27669         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
27670         Ensure that the article where the search word is found is displayed
27671         and pointed to in the summary buffer.
27673 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
27675         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
27676         When the region is active, but is empty (length 0), act as though
27677         the region was not active; that is, put a comment at the end of
27678         the line.  (Bug#21119)
27680 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
27682         Port tls.el to older Emacs
27683         * lisp/net/tls.el (tls-format-message):
27684         Alias to format-message, or format if not available.
27685         (open-tls-stream): Use it.
27687 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
27689         hideif.el: Recognize .h++ as C++ header
27690         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
27692         isearch: Document character folding mode
27693         * lisp/isearch.el (isearch-forward):
27694         Mention `isearch-toggle-character-fold' in doc string.
27696 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
27698         Quoting fixes in ERC and Eshell
27699         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
27700         * lisp/erc/erc-backend.el (define-erc-response-handler):
27701         * lisp/erc/erc-fill.el (erc-fill-static-center):
27702         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
27703         * lisp/eshell/em-glob.el (eshell-glob-entries):
27704         * lisp/eshell/em-hist.el (eshell-save-some-history):
27705         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
27706         (eshell-shuffle-files):
27707         * lisp/eshell/esh-cmd.el (eshell-do-eval):
27708         * lisp/eshell/esh-proc.el (eshell-process-interact)
27709         (eshell-query-kill-processes):
27710         Respect ‘text-quoting-style’ in diagnostics and doc strings.
27712         Quoting fixes in Gnus
27713         * lisp/gnus/gnus-agent.el:
27714         (gnus-agent-possibly-synchronize-flags-server):
27715         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
27716         * lisp/gnus/gnus-eform.el (gnus-edit-form):
27717         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
27718         (gnus-group-nnimap-edit-acl):
27719         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
27720         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
27721         * lisp/gnus/message.el (message-strip-subject-encoded-words)
27722         (message-check-recipients, message-send-form-letter):
27723         * lisp/gnus/mm-decode.el (mm-display-part):
27724         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
27725         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
27726         (mml-smime-get-ldap-cert):
27727         * lisp/gnus/spam-report.el (spam-report-process-queue):
27728         Respect ‘text-quoting-style’ in diagnostics.
27729         * lisp/gnus/gnus-art.el (article-display-face)
27730         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
27731         Use straight quoting in email.
27732         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
27733         Escape apostrophes in doc strings.
27735         Quoting fixes in lisp mail, mh-e, net, url
27736         * lisp/mail/emacsbug.el (report-emacs-bug)
27737         (report-emacs-bug-hook): Use straight quotes in outgoing email,
27738         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
27739         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
27740         * lisp/mail/rmailout.el (rmail-output-read-file-name):
27741         * lisp/net/imap.el (imap-interactive-login):
27742         * lisp/net/tls.el (open-tls-stream):
27743         * lisp/url/url-auth.el (url-register-auth-scheme):
27744         Respect ‘text-quoting-style’ in diagnostics.
27745         * lisp/mh-e/mh-e.el (mh-sortm-args):
27746         Quote docstring example using text quotes, not as a Lisp quote.
27748 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
27750         Fix some byte-compiler warnings in EDE
27751         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
27752         existing autoloader list, rather than add to it.
27753         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
27754         argument to eieio class constructor.
27755         (ede-show-supported-projects): New.
27756         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
27757         with (oref ... name).
27758         (ede-auto-load-project): Use slot name, not initarg key.
27759         * lisp/cedet/ede/generic.el (ede-generic-load)
27760         (ede-generic-find-matching-target): Use slot name, not initarg key.
27761         (ede-find-target): Use oref-default on class name.
27762         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
27763         class constructor.
27764         (ede-enable-generic-projects): Make project type names unique.
27766 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
27768         Fix directory accessibility tests for w32 network volumes
27769         * src/w32.c (faccessat): Don't fail with network volumes without a
27770         share.
27771         (w32_accessible_directory_p): Handle network volumes without a
27772         share.
27774         Fix handling long file names in readdir on MS-Windows
27775         * src/w32.c (sys_readdir): Append "\*" to the directory after
27776         converting it to UTF-16/ANSI, not before, to avoid overflowing the
27777         260-character limit on file names in filename_to_utf16/ansi.
27779         Make file-accessible-directory-p reliable on MS-Windows
27780         * src/w32.c (w32_accessible_directory_p): New function.
27781         * src/w32.h (w32_accessible_directory_p): Add prototype.
27782         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
27783         w32_accessible_directory_p to test a directory for accessibility
27784         by the current user.  (Bug#21346)
27785         (Ffile_accessible_directory_p): Remove the w32 specific caveat
27786         from the doc string.
27788 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
27790         Don't call do_pending_window_change in signal handlers (Bug#21380)
27791         * src/gtkutil.c (xg_frame_resized):
27792         * src/xterm.c (x_set_window_size):
27793         * src/w32term.c (x_set_window_size): Don't call
27794         do_pending_window_change.
27796 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
27798         Quoting fixes in lisp/org
27799         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
27800         (org-tags-view):
27801         * lisp/org/org-capture.el (org-capture-mode)
27802         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
27803         (org-ctags-ask-append-topic):
27804         * lisp/org/org.el (org-time-string-to-time)
27805         (org-time-string-to-absolute):
27806         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
27807         (org-ctags-ask-append-topic):
27808         * lisp/org/org.el (org-time-string-to-time)
27809         (org-time-string-to-absolute):
27810         Respect ‘text-quoting-style’ in diagnostics.
27811         * lisp/org/org-agenda.el (org-agenda-custom-commands)
27812         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
27813         * lisp/org/org-capture.el (org-capture-fill-template):
27814         Avoid contraction in output file that might be ASCII.
27815         * lisp/org/org-compat.el (format-message):
27816         Define if not already defined, for backward compatibility.
27817         * lisp/org/org-src.el (org-edit-src-save):
27818         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
27819         Escape apostrophes in diagnostics.
27821         Treat “instead” strings as docstrings
27822         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
27823         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
27824         Substitute quotes in instead strings.
27826 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
27828         Better documentation of seq-let
27829         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
27830         documentation of seq-let.
27832 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
27834         * lisp/international/ccl.el: Fix quoting.
27836         Quoting fixes in lisp/international and lisp/leim
27837         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
27838         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
27839         * lisp/international/mule-cmds.el:
27840         (select-safe-coding-system-interactively, leim-list-file-name):
27841         * lisp/international/quail.el (quail-use-package, quail-help):
27842         * lisp/international/titdic-cnv.el (tit-process-header)
27843         (miscdic-convert):
27844         Respect text quoting style in doc strings and diagnostics.
27845         * lisp/international/quail.el (lisp/international/quail.el):
27846         * lisp/leim/quail/ethiopic.el ("ethiopic"):
27847         Escape apostrophes in doc strings.
27849         Make ‘text-quoting-style’ a plain defvar
27850         It doesn’t need customization, as it’s likely useful only by experts.
27851         Suggested by Stefan Monnier in:
27852         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
27853         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
27855         Quoting fixes in lisp/textmodes
27856         * lisp/textmodes/bibtex.el (bibtex-validate)
27857         (bibtex-validate-globally, bibtex-search-entries):
27858         * lisp/textmodes/ispell.el (ispell-command-loop):
27859         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
27860         * lisp/textmodes/texinfmt.el (texinfmt-version)
27861         (texinfo-format-region, texinfo-format-buffer-1):
27862         * lisp/textmodes/two-column.el (2C-split):
27863         Respect text quoting style in doc strings and diagnostics.
27864         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
27865         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
27866         Escape apostrophes in doc strings.
27868         Documentation fixes re quotes
27869         Prefer curved quotes in examples if users will typically see
27870         curved quotes when the examples run.
27871         Mention format-message when appropriate.
27872         Don’t use @code in examples.
27873         Quote an apostrophe with @kbd.
27875         Quoting fixes in lisp/progmodes
27876         * lisp/progmodes/cc-engine.el (c-bos-report-error):
27877         * lisp/progmodes/cpp.el (cpp-edit-reset):
27878         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
27879         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
27880         (etags-tags-apropos, list-tags, tags-apropos):
27881         * lisp/progmodes/executable.el (executable-set-magic):
27882         * lisp/progmodes/octave.el (octave-sync-function-file-names)
27883         (octave-help, octave-find-definition-default-filename)
27884         (octave-find-definition):
27885         Respect text quoting style in doc strings and diagnostics.
27886         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
27887         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
27888         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
27889         Escape apostrophes in doc strings.
27890         * lisp/progmodes/cmacexp.el (c-macro-expansion):
27891         Use straight quoting in ASCII comment.
27892         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
27893         (idlwave-pad-keyword):
27894         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
27895         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
27896         (vhdl-electric-semicolon, vhdl-electric-comma)
27897         (vhdl-electric-period, vhdl-electric-equal):
27898         Use directed quotes in diagnostics and doc strings.
27900 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
27902         Minor documentation and NEWS tweak
27903         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
27904         Add an index entry.
27905         * etc/NEWS: Fix a typo in character-fold-to-regexp.
27907 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
27909         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
27910         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
27911         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
27912         Adapt test.
27914 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
27916         Text quoting fixes in cedet, emulation, emacs-lisp
27917         * lisp/cedet/ede.el (ede-check-project-directory):
27918         * lisp/cedet/semantic/analyze/debug.el
27919         (semantic-analyzer-debug-insert-include-summary):
27920         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
27921         * lisp/cedet/semantic/decorate/include.el
27922         (semantic-decoration-unknown-include-describe)
27923         (semantic-decoration-all-include-summary):
27924         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
27925         * lisp/emulation/edt.el (edt-load-keys):
27926         * lisp/emulation/viper-cmd.el
27927         (viper-display-current-destructive-command)
27928         (viper-query-replace, viper-brac-function):
27929         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
27930         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
27931         Respect text quoting style in doc string or diagnostic.
27932         * lisp/cedet/mode-local.el (describe-mode-local-overload):
27933         Use format-message to avoid overtranslating quotes.
27934         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
27935         Escape an apostrophe in a docstring.
27936         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
27938 2015-08-29  Daniel Colascione  <dancol@dancol.org>
27940         Fix which-func for curly quotes: look for symbol, not message
27941         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
27942         imenu-unavailable error symbol instead of trying to match message
27943         exactly.
27944         * lisp/imenu.el (imenu-unavailable): New error.
27945         (imenu-unavailable-error): New function.
27947 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
27949         Fix Python tests on MS-Windows
27950         * test/automated/python-tests.el
27951         (python-shell-calculate-command-1): Run python-shell-interpreter
27952         through shell-quote-argument before comparing with what
27953         python-shell-calculate-command returns.
27954         (python-shell-calculate-pythonpath-1)
27955         (python-shell-calculate-pythonpath-2)
27956         (python-shell-calculate-process-environment-2): Use path-separator
27957         instead of a literal ':'.
27958         (python-shell-calculate-exec-path-2)
27959         (python-shell-calculate-exec-path-3)
27960         (python-shell-calculate-exec-path-4)
27961         (python-shell-with-environment-1)
27962         (python-shell-with-environment-2): Run "/env/bin" through
27963         expand-file-name before comparing with exec-path.  (Bug#21375)
27965 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
27967         Use Core Text types/functions/variables/enumerators directly
27968         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
27969         (CharacterCollection): Remove typedefs.  All uses replaced with
27970         definitions.
27971         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
27972         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
27973         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
27974         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
27975         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
27976         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
27977         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
27978         definitions.
27979         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
27980         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
27981         (MAC_FONT_FORMAT_BITMAP)
27982         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
27983         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
27984         All uses replaced with definitions.
27985         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
27986         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
27987         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
27988         Add compatibility enumerators for older versions.
27989         (mac_font_descriptor_create_with_attributes)
27990         (mac_font_descriptor_create_matching_font_descriptors)
27991         (mac_font_descriptor_create_matching_font_descriptor)
27992         (mac_font_descriptor_copy_attribute)
27993         (mac_font_descriptor_supports_languages)
27994         (mac_font_create_with_name, mac_font_get_size)
27995         (mac_font_copy_family_name, mac_font_copy_character_set)
27996         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
27997         (mac_font_get_descent, mac_font_get_leading)
27998         (mac_font_get_underline_position)
27999         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
28000         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
28001         replaced with definitions.
28002         (mac_font_create_preferred_family_for_attributes)
28003         (mac_font_get_advance_width_for_glyph)
28004         (mac_font_get_bounding_rect_for_glyph)
28005         (mac_font_create_available_families, mac_font_shape):
28006         Remove macros for renamed functions.
28007         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
28008         * src/macfont.m (mac_font_descriptor_supports_languages):
28009         Rename from mac_ctfont_descriptor_supports_languages.
28010         (mac_font_create_preferred_family_for_attributes): Rename from
28011         mac_ctfont_create_preferred_family_for_attributes.
28012         (mac_font_get_advance_width_for_glyph): Rename from
28013         mac_ctfont_get_advance_width_for_glyph.
28014         Use kCTFontOrientationDefault also for older versions.
28015         (mac_font_get_bounding_rect_for_glyph): Rename from
28016         mac_ctfont_get_bounding_rect_for_glyph.
28017         Use kCTFontOrientationDefault also for older versions.
28018         (mac_font_create_available_families): Rename from
28019         mac_ctfont_create_available_families.
28020         (mac_font_equal_in_postscript_name): Rename from
28021         mac_ctfont_equal_in_postscript_name.  All uses changed.
28022         (mac_font_create_line_with_string_and_font): Rename from
28023         mac_ctfont_create_line_with_string_and_font.  All uses changed.
28024         (mac_font_shape): Rename from mac_ctfont_shape.
28025         (mac_font_family_compare): Remove unused declaration.
28027 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
28029         Fix minor text quoting in calc, calendar, vc
28030         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
28031         * lisp/calc/calc-help.el (calc-j-prefix-help):
28032         * lisp/calc/calc-misc.el (calc-help):
28033         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
28034         Escape an apostrophe in a docstring.
28035         * lisp/calc/calc-forms.el (calc-hms-notation):
28036         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
28037         Escape an apostrophe in a diagnostic.
28038         * lisp/calc/calc-misc.el (calc-help):
28039         * lisp/calendar/diary-lib.el (diary-include-files):
28040         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
28041         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
28042         * lisp/vc/ediff-diff.el (ediff-same-contents):
28043         * lisp/vc/ediff-merg.el (ediff-re-merge):
28044         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
28045         * lisp/vc/ediff-util.el (ediff-test-save-region)
28046         (ediff-status-info):
28047         * lisp/vc/ediff.el (ediff-merge-revisions)
28048         (ediff-merge-revisions-with-ancestor):
28049         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
28050         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
28051         Respect text quoting style in doc string or diagnostic.
28052         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
28053         * lisp/vc/add-log.el (change-log-goto-source):
28054         Avoid double-formatting.
28055         * lisp/vc/ediff-init.el (format-message):
28056         New backward-compatibility alias.
28058 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
28060         Fix minor text quoting problems in lisp top level
28061         * lisp/apropos.el (apropos-describe-plist):
28062         * lisp/cus-theme.el (customize-themes):
28063         * lisp/dired.el (dired-log):
28064         * lisp/help-fns.el (describe-variable):
28065         * lisp/hexl.el (hexl-insert-multibyte-char):
28066         * lisp/info.el (Info-finder-find-node):
28067         * lisp/json.el (json-read-string):
28068         * lisp/novice.el (disabled-command-function)
28069         (disabled-command-function):
28070         * lisp/startup.el (normal-mouse-startup-screen):
28071         * lisp/woman.el (WoMan-log, WoMan-warn):
28072         Respect text quoting style in doc string or diagnostic.
28073         * lisp/replace.el (replace-character-fold):
28074         * src/syntax.c (Fmodify_syntax_entry):
28075         Escape an apostrophe in a docstring.
28076         * lisp/tempo.el (tempo-define-template):
28077         Remove confusing apostrophe from docstring.
28078         * lisp/whitespace.el (whitespace-mark-x):
28079         Use directed quotes in docstring.
28081 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
28083         Fix indentation rule in css-mode
28084         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
28085         brackets in presence of pseudo-selectors.  (Bug#21328)
28087 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
28089         Fix a bug in recording a macro while flyspell-mode is active
28090         * lisp/subr.el (sit-for): Don't call read-event when recording a
28091         macro.  (Bug#21329)
28093 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
28095         Tweak startup screen quoting
28096         * lisp/startup.el (normal-splash-screen): Use standard
28097         "M-" abbrevation rather than a confusingly-different one.
28098         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
28100 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
28102         Add test case for ‘format’ bug and refactor
28103         * src/editfns.c (styled_format): Refactor internally, mostly by
28104         moving declarations closer to uses.  This should not affect behavior.
28105         * test/automated/textprop-tests.el (textprop-tests-format): New test.
28107         Fix ‘format’ bug with property offsets
28108         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
28109         bug in calculating string property offsets (Bug#21351).
28111         Use straight quotes in lib-src diagnostics
28112         These auxiliary programs can’t use Emacs’s text-quoting-style,
28113         and it’s too much trouble to redo that mechanism by hand.
28114         So just use straight quotes for now.
28115         * lib-src/ebrowse.c (main):
28116         * lib-src/emacsclient.c (decode_options, main):
28117         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
28118         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
28119         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
28120         (none_help, print_language_names, print_help, add_regex)
28121         (suggest_asking_for_help):
28122         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
28123         Use straight quotes in diagnostics.
28125         ‘text-quoting-style’ fixes for admin
28126         * admin/admin.el (cusver-scan, cusver-check):
28127         * admin/authors.el (authors-canonical-file-name):
28128         * admin/bzrmerge.el (bzrmerge-missing):
28129         Respect ‘text-quoting-style’ in diagnostics.
28131 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
28133         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
28134         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
28135         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
28136         * doc/lispref/internals.texi (Writing Emacs Primitives):
28137         * etc/NEWS:
28138         Document the change.
28139         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
28140         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
28141         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
28142         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
28143         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
28144         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
28145         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
28146         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
28147         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
28148         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
28149         Remove.  All uses removed.  The code now assumes
28150         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
28151         * src/bytecode.c (relocate_byte_stack):
28152         Rename from unmark_byte_stack, since it now only relocates.
28153         All callers changed.
28154         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
28155         with GCPROs removed.
28156         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
28157         * test/automated/finalizer-tests.el (finalizer-basic)
28158         (finalizer-circular-reference, finalizer-cross-reference)
28159         (finalizer-error):
28160         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
28161         Remove tests, as they depend on gc-precise.
28163 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
28165         Improve seq-concatenate for new sequence types
28166         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
28167         ensure that concatenation happens on sequences only.  This makes it
28168         possible to use `seq-concatenate' for new types of seqs.
28169         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
28170         New function used in `seq-concatenate'.
28171         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
28172         for seq-into-sequence.
28174 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
28176         Add mode local overrides to xref-find-definitions
28177         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
28178         (xref-mode-local-overload): New; add mode local overrides to
28179         xref-find-definitions.
28180         * test/automated/elisp-mode-tests.el: Add mode local override tests.
28181         (xref-elisp-test-run): Handle indented defuns.
28182         (xref-elisp-generic-*): Improve doc strings.
28183         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
28184         (elisp--xref-find-definitions): Use it.
28186         Add mode local overrides to describe-function
28187         * lisp/cedet/mode-local.el (describe-mode-local-overload):
28188         New; add mode local overrides to describe-function.
28189         * etc/NEWS: Document change.
28191 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
28193         Prefer straight quoting in some etc text files
28194         These files are plain text and might be used by non-Emacs apps.
28195         They’re mostly ASCII, so just use straight quotes.
28197         Fix quoting in ‘message_with_string’
28198         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
28199         should work now.
28200         * src/xdisp.c (message_to_stderr): New function, refactored from
28201         part of ‘message3_nolog’.
28202         (message3_nolog): Use it.
28203         (message_with_string): Use it.  Don’t mishandle NUL bytes when
28204         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
28205         Use ‘format-message’, not ‘format’, so that quotes are translated.
28207 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
28209         Mention false positives of file-accessible-directory on w32
28210         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
28211         (Bug#21346)
28213 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
28215         Treat error strings as help
28216         * src/print.c (print_error_message): Translate quotes and command
28217         keys in errmsg so that users see, e.g., "Symbol’s value as
28218         variable is void: foo" when text-quoting-style is curved.
28220 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
28222         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
28224 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
28226         Top-level elisp files respect ‘text-quoting-style’
28227         In top-level elisp files, use format-message in diagnostic formats,
28228         so that they follow user preference as per ‘text-quoting-style’
28229         rather than being hard-coded to quote `like this'.
28230         * lisp/allout.el (allout-get-configvar-values):
28231         * lisp/apropos.el (apropos-symbols-internal):
28232         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
28233         (dired-do-create-files-regexp, dired-create-files-non-directory):
28234         * lisp/dired-x.el (dired-do-run-mail):
28235         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
28236         * lisp/disp-table.el (standard-display-european):
28237         * lisp/find-dired.el (find-dired):
28238         * lisp/forms.el (forms-mode):
28239         * lisp/ido.el (ido-buffer-internal):
28240         * lisp/info.el (Info-index-next):
28241         * lisp/outline.el (outline-invent-heading):
28242         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
28243         * lisp/proced.el (proced-log):
28244         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
28245         * lisp/recentf.el (recentf-open-files, recentf-save-list):
28246         * lisp/savehist.el (savehist-save):
28247         * lisp/server.el (server-ensure-safe-dir):
28248         * lisp/ses.el (ses-rename-cell):
28249         * lisp/simple.el (list-processes--refresh):
28250         * lisp/startup.el (command-line):
28251         * lisp/strokes.el (strokes-unset-last-stroke)
28252         (strokes-execute-stroke):
28253         Use format-message so that quotes are restyled.
28254         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
28255         Don’t quote ‘raised’.
28256         * lisp/descr-text.el (describe-char):
28257         * lisp/dirtrack.el (dirtrack-debug-message):
28258         * lisp/hexl.el (hexl-insert-multibyte-char):
28259         Apply substitute-command-keys to help string.
28260         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
28261         (wdired-do-perm-changes):
28262         Let dired-log do the formatting.
28264 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28266         Go back to grave quoting in Tramp
28267         * lisp/net/tramp-adb.el:
28268         * lisp/net/tramp-cache.el:
28269         * lisp/net/tramp-compat.el:
28270         * lisp/net/tramp-gvfs.el:
28271         * lisp/net/tramp-gw.el:
28272         * lisp/net/tramp-sh.el:
28273         * lisp/net/tramp-smb.el:
28274         * lisp/net/tramp.el:
28275         Stick with grave quoting in diagnostics strings.  This is more
28276         portable to older Emacs, desirable for Tramp.
28277         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
28278         for diagnostic that needs requoting.
28279         * lisp/net/tramp-compat.el (format-message):
28280         Fall back on simple ‘format’, since that’s good enough now.
28282         Go back to grave quoting in Gnus
28283         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
28284         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
28285         (gnus-agent-fetch-headers):
28286         * lisp/gnus/gnus-int.el (gnus-start-news-server):
28287         * lisp/gnus/gnus-registry.el:
28288         (gnus-registry--split-fancy-with-parent-internal)
28289         (gnus-registry-post-process-groups):
28290         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
28291         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
28292         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
28293         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
28294         * lisp/gnus/spam.el (spam-check-blackholes):
28295         Stick with grave quoting in diagnostics strings.  This is more
28296         portable to older Emacs, desirable for Gnus.
28298         Fix customization of text-quoting-style
28299         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
28300         * lisp/wid-edit.el (widget-docstring):
28301         Get raw docstring here since it’s cooked later and should not be
28302         cooked twice.
28303         * lisp/cus-edit.el (custom-group-value-create):
28304         Cook the docstring before inserting it.
28305         * lisp/cus-start.el (text-quoting-style): Quote the customization
28306         docstrings according to the new rules.  Give curved examples.
28308         format-message now curves ` and '
28309         That way, the caller doesn’t have to use curved quotes to
28310         get diagnostics that match the text-quoting-style preferences.
28311         Suggested by Dmitry Gutov in:
28312         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
28313         This means we no longer need %qs, so remove that format.
28314         While we’re at it, fix an unlikely bug and lessen the pressure
28315         on the garbage collector by processing the string once rather
28316         than twice in the usual case.
28317         * doc/lispref/strings.texi (Formatting Strings):
28318         * etc/NEWS: Document this.
28319         * lisp/subr.el (format-message): Remove; now done in C.
28320         * src/callint.c (Fcall_interactively):
28321         * src/editfns.c (Fmessage, Fmessage_box):
28322         Use Fformat_message instead of Finternal__text_restyle
28323         followed by Fformat.
28324         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
28325         uLSQM and uRSQM.
28326         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
28327         when pure ASCII now suffices.  Fix unlikely bug when parsing
28328         unibyte string containing non-ASCII bytes.  Use inline code
28329         rather than memcpy, as it’s a tiny number of bytes.
28330         (Finternal__text_restyle): Remove; no longer used.
28331         (syms_of_doc): Don’t declare it.
28332         * src/editfns.c (Fformat): Rewrite in terms of new function
28333         ‘styled_format’.
28334         (Fformat_message): New function, moved here from subr.el.
28335         (styled_format): New function, with the old guts of Fformat,
28336         except it now optionally transliterates quotes, and it transliterates
28337         traditional grave accent and apostrophe quoting as well.
28338         Remove recently-added q flag; no longer needed or used.
28339         (syms_of_editfns): Define format-message.
28340         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
28341         Remove; no longer need to be global symbols.
28342         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
28343         so that callers can use `%s'.
28344         * src/image.c (image_size_error, xbm_load_image, xbm_load)
28345         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
28346         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
28347         (svg_load_image, gs_load, x_kill_gs_process):
28348         * src/lread.c (load_warn_old_style_backquotes):
28349         * src/xfaces.c (load_pixmap):
28350         * src/xselect.c (x_clipboard_manager_error_1):
28351         Use `%s' instead of %qs in formats.
28353 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
28355         Minor fixes in doc/emacs/search.texi
28356         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
28357         (Special Isearch): Use @w{} to generate several consecutive spaces
28358         with Texinfo 6.  (Bug#21345)
28360 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
28362         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
28363         (tramp-awk-coding-test): New defconsts.
28364         (tramp-remote-coding-commands): Use them.
28365         (tramp-find-inline-encoding): Check for Perl only if necessary.
28367 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
28369         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
28370         index entries for the special form `quote'.
28372 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28374         Spelling fixes
28376         Gnus format-message typo fix
28377         * lisp/gnus/gnus-util.el (gnus-format-message):
28378         Fix typo when running in older Emacs.
28380         Prefer directed to neutral quotes in docstings and diagnostics.
28381         In docstrings, escape apostrophes that would otherwise be translated
28382         to curved quotes using the newer, simpler rules.
28383         * admin/unidata/unidata-gen.el (unidata-gen-table):
28384         * lisp/align.el (align-region):
28385         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
28386         * lisp/bookmark.el (bookmark-default-annotation-text):
28387         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
28388         * lisp/calc/calc-lang.el (math-read-giac-subscr)
28389         (math-read-math-subscr):
28390         * lisp/calc/calc-misc.el (report-calc-bug):
28391         * lisp/calc/calc-prog.el (calc-fix-token-name)
28392         (calc-read-parse-table-part):
28393         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
28394         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
28395         * lisp/dabbrev.el (dabbrev-expand):
28396         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
28397         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
28398         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
28399         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
28400         * lisp/erc/erc-button.el (erc-nick-popup):
28401         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
28402         * lisp/eshell/em-dirs.el (eshell/cd):
28403         * lisp/eshell/em-glob.el (eshell-glob-regexp):
28404         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
28405         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
28406         * lisp/eshell/esh-opt.el (eshell-show-usage):
28407         * lisp/files-x.el (modify-file-local-variable):
28408         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
28409         (filesets-update-pre010505):
28410         * lisp/find-cmd.el (find-generic, find-to-string):
28411         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
28412         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
28413         (gnus-agent-fetch-headers):
28414         * lisp/gnus/gnus-int.el (gnus-start-news-server):
28415         * lisp/gnus/gnus-registry.el:
28416         (gnus-registry--split-fancy-with-parent-internal):
28417         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
28418         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
28419         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
28420         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
28421         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
28422         * lisp/gnus/spam.el (spam-check-blackholes):
28423         * lisp/mail/feedmail.el (feedmail-run-the-queue):
28424         * lisp/mpc.el (mpc-playlist-rename):
28425         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
28426         * lisp/net/mairix.el (mairix-widget-create-query):
28427         * lisp/net/tramp-cache.el:
28428         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
28429         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
28430         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
28431         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
28432         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
28433         (org-babel-goto-named-result):
28434         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
28435         * lisp/org/ob-ref.el (org-babel-ref-resolve):
28436         * lisp/org/org-agenda.el (org-agenda-prepare):
28437         * lisp/org/org-bibtex.el (org-bibtex-fields):
28438         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
28439         (org-clock-resolve):
28440         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
28441         * lisp/org/org-habit.el (org-habit-parse-todo):
28442         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
28443         (org-mouse-context-menu):
28444         * lisp/org/org-table.el (org-table-edit-formulas):
28445         * lisp/org/ox.el (org-export-async-start):
28446         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
28447         (dun-rooms, dun-endgame-questions):
28448         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
28449         * lisp/progmodes/ada-xref.el (ada-find-executable):
28450         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
28451         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
28452         (flymake-start-syntax-check-process):
28453         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
28454         * lisp/progmodes/sql.el (sql-comint):
28455         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
28456         * lisp/server.el (server-get-auth-key):
28457         * lisp/subr.el (version-to-list):
28458         * lisp/textmodes/reftex-ref.el (reftex-label):
28459         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
28460         * lisp/vc/ediff-diff.el (ediff-same-contents):
28461         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
28462         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
28463         Use directed rather than neutral quotes in diagnostics.
28465         Treat ' like ’ even when not matching `
28466         This is simpler and easier to explain, and should encourage better
28467         typography.  Do this in Electric Quote mode and when translating
28468         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
28469         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
28470         * doc/emacs/text.texi (Quotation Marks):
28471         * doc/lispref/help.texi (Keys in Documentation):
28472         * etc/NEWS:
28473         Document this.
28474         * lisp/electric.el (electric-quote-post-self-insert-function):
28475         * src/doc.c (Fsubstitute_command_keys):
28476         Always treat ' like ’ even when not matched by an open quote.
28478 2015-08-25  Glenn Morris  <rgm@gnu.org>
28480         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
28481         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
28483 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28485         * src/macfont.m (macfont_create_family_with_symbol):
28486         Accept localized names.
28488 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
28490         Tramp diagnostics as per ‘text-quoting-style’
28491         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
28492         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
28493         (tramp-adb-handle-delete-directory)
28494         (tramp-adb-handle-delete-file)
28495         (tramp-adb-handle-file-local-copy)
28496         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
28497         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
28498         (tramp-adb-maybe-open-connection):
28499         * lisp/net/tramp-cache.el:
28500         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
28501         (tramp-compat-octal-to-decimal)
28502         (tramp-compat-coding-system-change-eol-conversion):
28503         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
28504         (tramp-gvfs-do-copy-or-rename-file)
28505         (tramp-gvfs-handle-delete-directory)
28506         (tramp-gvfs-handle-delete-file)
28507         (tramp-gvfs-handle-expand-file-name)
28508         (tramp-gvfs-handle-file-local-copy)
28509         (tramp-gvfs-handle-file-notify-add-watch)
28510         (tramp-gvfs-handle-make-directory)
28511         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
28512         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
28513         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
28514         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
28515         (tramp-sh-handle-set-visited-file-modtime)
28516         (tramp-sh-handle-set-file-modes)
28517         (tramp-sh-handle-file-name-all-completions)
28518         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
28519         (tramp-do-copy-or-rename-file-directly)
28520         (tramp-do-copy-or-rename-file-out-of-band)
28521         (tramp-sh-handle-make-directory)
28522         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
28523         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
28524         (tramp-sh-handle-start-file-process)
28525         (tramp-sh-handle-file-local-copy)
28526         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
28527         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
28528         (tramp-find-file-exists-command, tramp-open-shell)
28529         (tramp-find-shell)
28530         (tramp-open-connection-setup-interactive-shell)
28531         (tramp-find-inline-encoding, tramp-find-inline-compress)
28532         (tramp-compute-multi-hops, tramp-maybe-open-connection)
28533         (tramp-wait-for-output, tramp-send-command-and-check)
28534         (tramp-send-command-and-read, tramp-get-remote-path)
28535         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
28536         (tramp-get-ls-command-with-quoting-style)
28537         (tramp-get-test-command, tramp-get-remote-ln)
28538         (tramp-get-remote-perl, tramp-get-remote-stat)
28539         (tramp-get-remote-readlink, tramp-get-remote-trash)
28540         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
28541         (tramp-get-remote-inotifywait, tramp-get-remote-id)
28542         (tramp-get-remote-python):
28543         * lisp/net/tramp-smb.el (tramp-smb-errors)
28544         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
28545         (tramp-smb-handle-delete-directory)
28546         (tramp-smb-handle-delete-file)
28547         (tramp-smb-handle-file-local-copy)
28548         (tramp-smb-handle-make-directory)
28549         (tramp-smb-handle-make-directory-internal)
28550         (tramp-smb-handle-make-symbolic-link)
28551         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
28552         (tramp-smb-handle-set-file-modes)
28553         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
28554         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
28555         (tramp-process-actions):
28556         Generate diagnostics according to ‘text-quoting-style’, by
28557         using curved quotes in format strings and ‘format-message’
28558         when appropriate.
28559         * lisp/net/tramp-compat.el (format-message):
28560         Define a replacement, if it’s an older version of Emacs
28561         that doesn’t have it already.
28563         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
28565 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
28567         Fix documentation for `save-excursion'
28568         * doc/lispref/positions.texi (Excursions):
28569         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
28570         (Template for save-excursion, Point and mark): `save-excursion'
28571         does not save&restore the mark any more.
28573 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
28575         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
28576         New defconsts.
28577         (tramp-do-file-attributes-with-stat)
28578         (tramp-do-directory-files-and-attributes-with-stat): Use them.
28579         (tramp-convert-file-attributes): Remove double slashes in symlinks.
28580         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
28581         Handle symlinks with "//" in the file name.
28583         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
28585 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
28587         Fix cl-subseq and cl-concatenate
28588         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
28589         seq functions.
28590         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
28591         seq-concatenate.
28593 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
28595         Fix full-screen code when there is no window manager (Bug#21317)
28596         * src/xterm.h (x_wm_supports): Declare external.
28597         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
28598         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
28599         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
28600         `fullscreen' frame parameter.
28601         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
28602         without a window manager.
28604 2015-08-24  Glenn Morris  <rgm@gnu.org>
28606         * lisp/version.el (emacs-version): No longer include build host.
28607         * doc/lispref/intro.texi (Version Info): Update example.
28609 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
28611         * doc/lispref/elisp.texi: Fix typo in previous change.
28613         More-conservative ‘format’ quote restyling
28614         Instead of restyling curved quotes for every call to ‘format’,
28615         create a new function ‘format-message’ that does the restyling,
28616         and using the new function instead of ‘format’ only in contexts
28617         where this seems appropriate.
28618         Problem reported by Dmitry Gutov and Andreas Schwab in:
28619         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
28620         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
28621         * doc/lispref/commands.texi (Using Interactive):
28622         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
28623         * doc/lispref/display.texi (Displaying Messages, Progress):
28624         * doc/lispref/elisp.texi:
28625         * doc/lispref/help.texi (Keys in Documentation):
28626         * doc/lispref/minibuf.texi (Minibuffer Misc):
28627         * doc/lispref/strings.texi (Formatting Strings):
28628         * etc/NEWS:
28629         Document the changes.
28630         * lisp/abbrev.el (expand-region-abbrevs):
28631         * lisp/apropos.el (apropos-library):
28632         * lisp/calc/calc-ext.el (calc-record-message)
28633         (calc-user-function-list):
28634         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
28635         * lisp/calc/calc-lang.el (math-read-big-balance):
28636         * lisp/calc/calc-store.el (calc-edit-variable):
28637         * lisp/calc/calc-units.el (math-build-units-table-buffer):
28638         * lisp/calc/calc-yank.el (calc-edit-mode):
28639         * lisp/calendar/icalendar.el (icalendar-export-region)
28640         (icalendar--add-diary-entry):
28641         * lisp/cedet/mode-local.el (mode-local-print-binding)
28642         (mode-local-describe-bindings-2):
28643         * lisp/cedet/semantic/complete.el (semantic-completion-message):
28644         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
28645         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
28646         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
28647         * lisp/descr-text.el (describe-text-properties-1, describe-char):
28648         * lisp/dframe.el (dframe-message):
28649         * lisp/dired-aux.el (dired-query):
28650         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
28651         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
28652         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
28653         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
28654         (cconv-analyze-form):
28655         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
28656         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
28657         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
28658         * lisp/emacs-lisp/edebug.el (edebug-format):
28659         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
28660         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
28661         (eldoc-message):
28662         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
28663         * lisp/emacs-lisp/find-func.el (find-function-library):
28664         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
28665         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
28666         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
28667         * lisp/emacs-lisp/package.el (package-compute-transaction)
28668         (package-install-button-action, package-delete-button-action)
28669         (package-menu--list-to-prompt):
28670         * lisp/emacs-lisp/timer.el (timer-event-handler):
28671         * lisp/emacs-lisp/warnings.el (lwarn, warn):
28672         * lisp/emulation/viper-cmd.el:
28673         (viper-toggle-parse-sexp-ignore-comments)
28674         (viper-kill-buffer, viper-brac-function):
28675         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
28676         * lisp/facemenu.el (facemenu-add-new-face):
28677         * lisp/faces.el (face-documentation, read-face-name)
28678         (face-read-string, read-face-font, describe-face):
28679         * lisp/files.el (find-alternate-file, hack-local-variables)
28680         (hack-one-local-variable--obsolete, write-file)
28681         (basic-save-buffer, delete-directory):
28682         * lisp/format.el (format-write-file, format-find-file)
28683         (format-insert-file):
28684         * lisp/help-fns.el (help-fns--key-bindings)
28685         (help-fns--compiler-macro, help-fns--obsolete)
28686         (help-fns--interactive-only, describe-function-1)
28687         (describe-variable):
28688         * lisp/help.el (describe-mode):
28689         * lisp/info-xref.el (info-xref-output):
28690         * lisp/info.el (Info-virtual-index-find-node)
28691         (Info-virtual-index, info-apropos):
28692         * lisp/international/kkc.el (kkc-error):
28693         * lisp/international/mule-cmds.el:
28694         (select-safe-coding-system-interactively)
28695         (select-safe-coding-system, describe-input-method):
28696         * lisp/international/mule-conf.el (code-offset):
28697         * lisp/international/mule-diag.el (describe-character-set)
28698         (list-input-methods-1):
28699         * lisp/international/quail.el (quail-error):
28700         * lisp/minibuffer.el (minibuffer-message):
28701         * lisp/mpc.el (mpc--debug):
28702         * lisp/msb.el (msb--choose-menu):
28703         * lisp/net/ange-ftp.el (ange-ftp-message):
28704         * lisp/net/gnutls.el (gnutls-message-maybe):
28705         * lisp/net/newst-backend.el (newsticker--sentinel-work):
28706         * lisp/net/newst-treeview.el (newsticker--treeview-load):
28707         * lisp/net/nsm.el (nsm-query-user):
28708         * lisp/net/rlogin.el (rlogin):
28709         * lisp/net/soap-client.el (soap-warning):
28710         * lisp/net/tramp.el (tramp-debug-message):
28711         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
28712         * lisp/nxml/nxml-parse.el (nxml-parse-error):
28713         * lisp/nxml/rng-cmpct.el (rng-c-error):
28714         * lisp/nxml/rng-match.el (rng-compile-error):
28715         * lisp/nxml/rng-uri.el (rng-uri-error):
28716         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
28717         * lisp/org/org-ctags.el:
28718         (org-ctags-ask-rebuild-tags-file-then-find-tag):
28719         * lisp/proced.el (proced-log):
28720         * lisp/progmodes/ebnf2ps.el (ebnf-log):
28721         * lisp/progmodes/flymake.el (flymake-log):
28722         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
28723         * lisp/replace.el (occur-1):
28724         * lisp/simple.el (execute-extended-command)
28725         (undo-outer-limit-truncate, define-alternatives):
28726         * lisp/startup.el (command-line):
28727         * lisp/subr.el (error, user-error, add-to-list):
28728         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
28729         (tutorial--find-changed-keys):
28730         * src/callint.c (Fcall_interactively):
28731         * src/editfns.c (Fmessage, Fmessage_box):
28732         Restyle the quotes of format strings intended for use as a
28733         diagnostic, when restyling seems appropriate.
28734         * lisp/subr.el (format-message): New function.
28735         * src/doc.c (Finternal__text_restyle): New function.
28736         (syms_of_doc): Define it.
28738 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
28740         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
28742 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28744         python.el: Fix python-shell-buffer-substring on indented code
28745         (Bug#21086)
28746         * lisp/progmodes/python.el (python-shell-buffer-substring):
28747         Respect current line indentation when calculating string.
28748         * test/automated/python-tests.el
28749         (python-shell-buffer-substring-10)
28750         (python-shell-buffer-substring-11)
28751         (python-shell-buffer-substring-12): New tests.
28753 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
28755         Fix minor glitches from ‘format’ reversion
28756         * doc/lispref/strings.texi (Formatting Strings):
28757         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
28758         Documentation’, not below.
28759         * src/syntax.c (Finternal_describe_syntax_value):
28760         Prefer AUTO_STRING to build_string where either will do, as
28761         AUTO_STRING is a bit faster.
28763 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28765         python.el: Defer shell setup code until first interactive prompt
28766         * lisp/progmodes/python.el
28767         (python-shell-comint-watch-for-first-prompt-output-filter):
28768         New function.
28769         (inferior-python-mode): Use it.
28770         (python-shell-first-prompt-hook): New hook.
28771         (python-shell-send-setup-code)
28772         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
28773         this hook instead of inferior-python-hook.
28775 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
28777         Remove the calls to `seq-into` from `seq-concatenate`
28778         Since most new types of seq would have to be defined as sequences (cons
28779         cells or CL structs, mostly), there is no need to convert the seqs to
28780         sequences (which can be a fairly expensive operation).
28781         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
28782         sequences.
28784 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28786         python.el: Fix completion for pdb interactions
28787         * lisp/progmodes/python.el (python-shell-completion-setup-code):
28788         Simplify.  Toggle print_mode for native wrapped completer.
28789         (python-shell-completion-native-setup): Ensure process buffer.
28790         Add print_mode attribute to completer wrapper to toggle returning
28791         or printing candidates.
28792         (python-shell-completion-native-get-completions): Cleanup.
28793         (python-shell-completion-get-completions): Cleanup.
28794         (python-shell-completion-at-point): Perform prompt checks.
28795         Force fallback completion in pdb interactions.
28797 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
28799         Make seq.el more extensible by using cl-defmethod
28800         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
28801         make it easier to extend seq.el with new "seq types".
28802         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
28803         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
28804         subseq in cl-extra.el, and use it in seq.el.
28806 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28808         python.el: Fix prompt detection with user overridden interpreter
28809         * lisp/progmodes/python.el (python-shell-prompt-detect):
28810         Honor buffer local python-shell-interpreter and
28811         python-shell-interpreter-interactive-arg.
28813 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
28815         Support exec-directory with non-ASCII characters on Windows
28816         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
28817         in the system's ANSI codepage, when it is used for invoking
28818         cmdproxy.
28820 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
28822         Revert "Extend ‘format’ to translate curved quotes"
28823         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
28825         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
28826         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
28828 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
28830         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
28831         Clarify "invisible window".
28833 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
28835         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
28836         magic-fallback-mode-alist.
28838 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28840         python.el: fallback completion, ffap and eldoc setup enhancements
28841         Setup codes are now sent continuously so that the current frame is
28842         always taken into account.  This allows working within debuggers
28843         and always keeping a fresh version of setup codes that will return
28844         proper results.
28845         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
28846         (python-shell-send-setup-code): Send code only when
28847         python-shell-setup-codes is non-nil.
28848         (python-shell-completion-string-code): Cleanup trailing newline.
28849         (python-shell-completion-get-completions): Always use
28850         python-shell-completion-setup-code.
28851         (python-ffap-setup-code): Work with any object, not only modules.
28852         (python-ffap-string-code): Cleanup trailing newline.
28853         (python-ffap-module-path): Always use python-ffap-setup-code.
28854         (python-eldoc-string-code): Cleanup trailing newline.
28855         (python-eldoc--get-doc-at-point): Always use
28856         python-eldoc-setup-code.  Return non-nil only if docstring is
28857         found.
28859         python.el: Increase native completion robustness
28860         * lisp/progmodes/python.el (python-shell-completion-native-setup):
28861         Make completer print real candidates and just return dummy ones to
28862         avoid input modification.
28863         (python-shell-completion-native-get-completions): Set
28864         comint-redirect-insert-matching-regexp to non-nil and make
28865         comint-redirect-finished-regexp match the last dummy candidate.
28866         Use python-shell-accept-process-output to wait for the full list
28867         of candidates.
28869 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
28871         Fix invocation of programs via cmdproxy.exe
28872         * src/w32proc.c (sys_spawnve): Use exec-directory, not
28873         invocation-directory, for finding cmdproxy.exe.  When Emacs is
28874         run from the source tree, look for cmdproxy.exe in the same source
28875         tree.  (Bug#21323)
28877 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
28879         Handle comments inside unquoted URIs in css-mode
28880         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
28881         (css-syntax-propertize-function): New defconst.
28882         (css--font-lock-keywords): Handle parens around unquoted URIs.
28883         (css-mode): Set `syntax-propertize-function'.
28885 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
28887         Support invocation of Hunspell with multiple dictionaries
28888         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
28889         Support lists of dictionaries of the form "DICT1,DICT2,...".
28890         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
28892         Minor formatting changes in ispell.el
28893         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
28894         (ispell-print-if-debug, ispell-aspell-find-dictionary)
28895         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
28896         (ispell-hunspell-dictionary-alist)
28897         (ispell-hunspell-fill-dictionary-entry)
28898         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
28899         (ispell-buffer-with-debug, ispell-complete-word)
28900         (ispell-current-dictionary, ispell-current-personal-dictionary)
28901         (ispell-accept-output, ispell-minor-mode)
28902         (ispell-personal-dictionary, ispell-dictionary-alist)
28903         (ispell-really-aspell, ispell-really-hunspell)
28904         (ispell-encoding8-command, ispell-aspell-supports-utf8)
28905         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
28906         Fix whitespace, inconsistent capitalization, and arguments in doc
28907         strings.
28909 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
28911         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
28912         function refused to resize a size-preserved window.
28914 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
28916         * doc/lispref/windows.texi (Selecting Windows): Improve
28917         documentation and indexing of 'window-use-time'.
28919 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
28921         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
28922         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
28923         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
28924         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
28925         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
28926         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
28927         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
28928         Fix up commenting style.
28930 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
28932         text-quoting-style in emacs-lisp diagnostics
28933         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
28934         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
28935         (ad-disable-advice, ad-remove-advice, ad-set-argument)
28936         (ad-set-arguments):
28937         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
28938         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
28939         (byte-optimize-while, byte-optimize-apply):
28940         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
28941         (byte-compile-log-file, byte-compile-format-warn)
28942         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
28943         (byte-compile-cl-warn)
28944         (byte-compile-warn-about-unresolved-functions)
28945         (byte-compile-file, byte-compile-fix-header)
28946         (byte-compile--declare-var, byte-compile-file-form-defmumble)
28947         (byte-compile-form, byte-compile-normal-call)
28948         (byte-compile-variable-ref, byte-compile-variable-set)
28949         (byte-compile-subr-wrong-args, byte-compile-setq-default)
28950         (byte-compile-negation-optimizer)
28951         (byte-compile-condition-case--old)
28952         (byte-compile-condition-case--new, byte-compile-save-excursion)
28953         (byte-compile-defvar, byte-compile-autoload)
28954         (byte-compile-lambda-form)
28955         (byte-compile-make-variable-buffer-local, display-call-tree)
28956         (batch-byte-compile):
28957         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
28958         (cconv-analyze-form):
28959         * lisp/emacs-lisp/chart.el (chart-space-usage):
28960         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
28961         (check-declare-warn, check-declare-file)
28962         (check-declare-directory):
28963         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
28964         (checkdoc-message-text-engine):
28965         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
28966         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
28967         (cl-symbol-macrolet):
28968         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
28969         * lisp/emacs-lisp/copyright.el (copyright)
28970         (copyright-update-directory):
28971         * lisp/emacs-lisp/edebug.el (edebug-read-list):
28972         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
28973         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
28974         (eieio-oref, eieio-oset-default):
28975         * lisp/emacs-lisp/eieio-speedbar.el:
28976         (eieio-speedbar-child-make-tag-lines)
28977         (eieio-speedbar-child-description):
28978         * lisp/emacs-lisp/eieio.el (defclass, change-class):
28979         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
28980         (elint-init-form, elint-check-defalias-form)
28981         (elint-check-let-form):
28982         * lisp/emacs-lisp/ert.el (ert-get-test):
28983         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
28984         (find-function-library):
28985         * lisp/emacs-lisp/generator.el (iter-yield):
28986         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
28987         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
28988         * lisp/emacs-lisp/package-x.el (package-upload-file):
28989         * lisp/emacs-lisp/package.el (package-version-join)
28990         (package-disabled-p, package-activate-1, package-activate)
28991         (package--download-one-archive)
28992         (package--download-and-read-archives)
28993         (package-compute-transaction, package-install-from-archive)
28994         (package-install, package-install-selected-packages)
28995         (package-delete, package-autoremove)
28996         (package-install-button-action, package-delete-button-action)
28997         (package-menu-hide-package, package-menu--list-to-prompt)
28998         (package-menu--perform-transaction)
28999         (package-menu--find-and-notify-upgrades):
29000         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
29001         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
29002         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
29003         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
29004         * lisp/emacs-lisp/smie.el (smie-config-save):
29005         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
29006         * lisp/emacs-lisp/testcover.el (testcover-1value):
29007         Use curved quotes in diagnostic format strings.
29009 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
29011         python.el: Ensure remote process-environment on non-interactive processes
29012         * lisp/progmodes/python.el
29013         (python-shell-tramp-refresh-process-environment): New function.
29014         (python-shell-with-environment): Use it.
29015         * test/automated/python-tests.el (python-shell-with-environment-2):
29016         Update.
29018         python.el: Enhancements to process environment setup.
29019         * lisp/progmodes/python.el (python-shell-process-environment)
29020         (python-shell-extra-pythonpaths, python-shell-exec-path)
29021         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
29022         (python-shell-setup-codes): Remove :safe.
29023         (python-shell-remote-exec-path): New defcustom.
29024         (python-shell--add-to-path-with-priority): New macro.
29025         (python-shell-calculate-pythonpath): Give priority to
29026         python-shell-extra-pythonpaths.  Update docstring.
29027         (python-shell-calculate-process-environment): Give priority to
29028         python-shell-process-environment.  Update docstring.
29029         (python-shell-calculate-exec-path): Give priority to
29030         python-shell-exec-path and calculated virtualenv bin directory.
29031         Update docstring.
29032         (python-shell-tramp-refresh-remote-path): New function.
29033         (python-shell-with-environment): Use it when working remotely and
29034         do not modify tramp-remote-path.  Allow nesting.
29035         (python-shell-calculate-command): Remove useless
29036         python-shell-with-environment call.
29037         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
29038         (python-shell-calculate-pythonpath-2)
29039         (python-shell-calculate-process-environment-6)
29040         (python-shell-calculate-process-environment-7)
29041         (python-shell-calculate-process-environment-8)
29042         (python-shell-calculate-exec-path-3)
29043         (python-shell-calculate-exec-path-4)
29044         (python-shell-calculate-exec-path-5)
29045         (python-shell-calculate-exec-path-6)
29046         (python-shell-with-environment-3): New tests.
29047         (python-shell-calculate-process-environment-2)
29048         (python-shell-calculate-process-environment-3)
29049         (python-shell-calculate-process-environment-4)
29050         (python-shell-calculate-process-environment-5)
29051         (python-shell-calculate-exec-path-1)
29052         (python-shell-calculate-exec-path-2)
29053         (python-shell-with-environment-1)
29054         (python-shell-with-environment-2): Update and simplify.
29056 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
29058         Avoid hard-coding "M-x command" in docstrings
29059         * lisp/calendar/todo-mode.el (todo-mode):
29060         * lisp/desktop.el (desktop-save-mode):
29061         * lisp/edmacro.el (edit-kbd-macro):
29062         * lisp/emacs-lisp/package.el (package-menu-execute):
29063         * lisp/emulation/viper-cmd.el (viper-ask-level):
29064         * lisp/emulation/viper-init.el (viper-expert-level):
29065         * lisp/filesets.el (filesets-add-buffer):
29066         * lisp/follow.el (follow-mode):
29067         * lisp/gnus/auth-source.el (auth-sources):
29068         * lisp/international/ogonek.el (ogonek-informacja)
29069         (ogonek-information):
29070         * lisp/net/tramp.el (tramp-process-actions):
29071         * lisp/org/org-gnus.el (org-gnus-no-new-news):
29072         * lisp/org/org.el (org-ellipsis):
29073         * lisp/progmodes/python.el (python-shell-get-process-or-error):
29074         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
29075         * lisp/server.el (server-start):
29076         * lisp/type-break.el (type-break-noninteractive-query):
29077         * lisp/userlock.el (ask-user-about-supersession-help):
29078         * lisp/whitespace.el (whitespace-report-region):
29079         Prefer (substitute-command-keys "`\\[foo-command]'")
29080         to "`M-x foo-command'" in docstrings and the like.
29082 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
29084         Use add-function for prettify-symbols-compose-predicate
29085         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
29086         prettify-symbols-compose-predicate in terms of add-function.
29087         * etc/NEWS: Mention prettify-symbols-compose-predicate and
29088         prettify-symbols-mode support in tex-mode.
29090 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
29092         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
29093         (smie-indent-exps, smie-indent-keyword): Use it.
29094         * test/indent/css-mode.css: Test alignment with leading comment.
29096 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
29098         Respect text-quoting-style in (*Finder*) menus
29099         * lisp/info.el (info--prettify-description):
29100         Treat description as a docstring, so that it's requoted as
29101         per text-quoting-style.
29103 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
29105         Document `window-use-time' in Elisp manual
29106         * doc/lispref/windows.texi (Selecting Windows): Document
29107         `window-use-time'.
29109 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
29111         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
29112         This is a cleaner fix for Bug#21260 than the previous change.
29114 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
29116         Respect text-quoting-style in calc
29117         In calc, tespect text-quoting-style preference in diagnostic
29118         formats and fix a few similar problems in docstrings.
29119         * lisp/calc/calc-aent.el (math-read-factor):
29120         * lisp/calc/calc-embed.el (calc-do-embedded):
29121         * lisp/calc/calc-ext.el (calc-user-function-list)
29122         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
29123         * lisp/calc/calc-help.el (calc-describe-key)
29124         (calc-describe-thing):
29125         * lisp/calc/calc-lang.el (calc-c-language)
29126         (math-parse-fortran-vector-end, math-parse-tex-sum)
29127         (math-parse-eqn-matrix, math-parse-eqn-prime)
29128         (calc-yacas-language, calc-maxima-language, calc-giac-language)
29129         (math-read-big-rec, math-read-big-balance):
29130         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
29131         (calc-auto-recompute):
29132         * lisp/calc/calc-prog.el (calc-user-define-invocation)
29133         (math-do-arg-check):
29134         * lisp/calc/calc-store.el (calc-edit-variable):
29135         * lisp/calc/calc-units.el (math-build-units-table-buffer):
29136         * lisp/calc/calc-vec.el (math-read-brackets):
29137         * lisp/calc/calc-yank.el (calc-edit-mode):
29138         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
29139         Use curved quotes in diagnostic format strings.
29140         * lisp/calc/calc-help.el (calc-describe-thing):
29141         Format docstrings with substitute-command-keys.
29142         * lisp/calc/calc-help.el (calc-j-prefix-help):
29143         * lisp/calc/calc-misc.el (calc-help):
29144         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
29145         Escape a docstring "`".
29147 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
29149         Fix documentation of 'menu-set-font' and 'set-frame-font'
29150         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
29151         * doc/lispref/frames.texi (Frame Font): Document that
29152         set-frame-font with the last argument 't' will also make the font
29153         the default for the future GUI frames.
29155         Document '--create-frame' option to emacsclient
29156         * doc/emacs/misc.texi (emacsclient Options): Document the
29157         '--create-frame' option.  (Bug#21308)
29159 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
29161         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
29163 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
29165         Document 'get-mru-window' in the ELisp manual
29166         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
29167         'get-mru-window'.  (Bug#21306)
29169         Clarify documentation of 'get-buffer-window-list'
29170         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
29171         current window, if relevant, will be the first in the list
29172         returned by 'get-buffer-window-list'.
29173         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
29175 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
29177         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
29178         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
29179         `switch-to-buffer'.
29181 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
29183         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
29184         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
29185         `display-buffer' instead of `switch-to-buffer'.
29187 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
29189         Follow user preference in calendar diagnostics
29190         Respect text-quoting-style preference in diagnostic formats by
29191         using curved quotes (which are translated as per text-quoting-style)
29192         instead of grave accent and apostrophe (which are not).
29193         * lisp/calendar/appt.el (appt-display-message):
29194         * lisp/calendar/diary-lib.el (diary-check-diary-file)
29195         (diary-mail-entries, diary-from-outlook):
29196         * lisp/calendar/icalendar.el (icalendar-export-region)
29197         (icalendar--convert-float-to-ical)
29198         (icalendar--convert-date-to-ical)
29199         (icalendar--convert-ical-to-diary)
29200         (icalendar--convert-recurring-to-diary)
29201         (icalendar--add-diary-entry):
29202         * lisp/calendar/time-date.el (format-seconds):
29203         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
29204         (timeclock-make-hours-explicit):
29205         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
29206         (todo-item-mark, todo-check-format)
29207         (todo-insert-item--next-param, todo-edit-item--next-key)
29208         (todo-mode):
29209         Use curved quotes in diagnostic format strings.
29210         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
29211         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
29212         Just use straight quoting for simple test case.
29214 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
29216         * src/gfilenotify.c (Fgfile_add_watch):
29217         Handle errors from g_file_monitor.
29219 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
29221         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
29222         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
29223         frame" instead of "non-minibuffer frame".
29225         Fix frame geometry related text
29226         * doc/lispref/frames.texi (Frame Layout):
29227         Rename `x-frame-geometry' to `frame-geometry'.
29228         * doc/lispref/frames.texi (Mouse Position):
29229         * doc/lispref/windows.texi (Coordinates and Windows):
29230         Use `set-mouse-absolute-pixel-position' instead of
29231         `x-set-mouse-absolute-pixel-position'.
29233         Sanitize frame geometry related functions
29234         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
29235         (Fx_frame_edges): Rename to Fns_frame_edges.
29236         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
29237         (Fx_frame_edges): Rename to Fw32_frame_edges.
29238         (Fx_mouse_absolute_pixel_position): Rename to
29239         Fw32_mouse_absolute_pixel_position.
29240         (Fx_set_mouse_absolute_pixel_position): Rename to
29241         Fw32_set_mouse_absolute_pixel_position.
29242         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
29243         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
29244         (ns-frame-edges, w32-mouse-absolute-pixel-position)
29245         (x-mouse-absolute-pixel-position)
29246         (w32-set-mouse-absolute-pixel-position)
29247         (x-set-mouse-absolute-pixel-position): Declare.
29248         (frame-geometry, mouse-absolute-pixel-position)
29249         (set-mouse-absolute-pixel-position): New functions.
29250         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
29252 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
29254         Fix MinGW64 build broken by latest w32uniscribe.c changes
29255         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
29256         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
29257         (Bug#21260)
29259 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
29261         Add TeX defaults for prettify-symbol-mode
29262         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
29263         Rename from tex-prettify-symbols-alist.
29264         (tex--prettify-symbols-compose-p): New function.
29265         (tex-common-initialization): Use them as prettify-symbols-alist
29266         and prettify-symbols-compose-predicate.
29268         Generalize prettify-symbols to arbitrary modes
29269         * lisp/progmodes/prog-mode.el
29270         (prettify-symbols-default-compose-p): New function.
29271         (prettify-symbols-compose-predicate): New variable.
29272         (prettify-symbols--compose-symbol): Use it.
29274 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
29276         Don't quote symbols 'like-this' in docstrings etc.
29277         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
29278         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
29279         * lisp/allout.el (allout-add-resumptions, allout-mode):
29280         * lisp/calculator.el (calculator-operators):
29281         * lisp/cedet/data-debug.el (dd-propertize):
29282         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
29283         * lisp/cedet/semantic/analyze/debug.el:
29284         (semantic-analyzer-debug-global-miss-text):
29285         * lisp/cedet/semantic/lex-spp.el:
29286         (semantic-lex-spp-replace-or-symbol-or-keyword):
29287         * lisp/cedet/semantic/symref.el:
29288         (semantic-symref-cleanup-recent-buffers-fcn):
29289         * lisp/cedet/semantic/tag.el (semantic-tag-class):
29290         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
29291         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
29292         * lisp/gnus/pop3.el (pop3-authentication-scheme):
29293         * lisp/help-fns.el (describe-function-orig-buffer):
29294         * lisp/imenu.el (imenu--history-list):
29295         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
29296         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
29297         (feedmail-queue-default-file-slug)
29298         (feedmail-queue-buffer-file-name):
29299         * lisp/net/mairix.el (mairix-searches-mode-map):
29300         * lisp/net/newst-backend.el (newsticker-retrieval-method)
29301         (newsticker-auto-mark-filter-list):
29302         * lisp/obsolete/vi.el (vi-mode):
29303         * lisp/progmodes/cc-engine.el (c-literal-type):
29304         * lisp/progmodes/cpp.el (cpp-face):
29305         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
29306         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
29307         * lisp/progmodes/pascal.el (pascal-auto-lineup):
29308         * lisp/progmodes/prog-mode.el (prog-widen):
29309         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
29310         (verilog-auto-lineup, verilog-auto-reset-widths)
29311         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
29312         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
29313         (flyspell-maybe-correct-doubling):
29314         * lisp/textmodes/table.el (table-justify, table-justify-cell)
29315         (table-justify-row, table-justify-column, table-insert-sequence)
29316         (table--justify-cell-contents):
29317         * lisp/url/url-auth.el (url-get-authentication):
29318         * lisp/window.el (display-buffer-record-window):
29319         * lisp/xml.el (xml-parse-file, xml-parse-region):
29320         * src/gfilenotify.c (Fgfile_add_watch):
29321         Don't quote symbols with apostrophes in doc strings.
29322         Use asymmetric quotes instead.
29323         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
29324         Likewise for symbol in diagnostic.
29325         * lisp/image.el (image-extension-data):
29326         * lisp/register.el (frame-configuration-to-register):
29327         * src/buffer.c (syms_of_buffer):
29328         Remove bogus apostrophes after symbols.
29329         * lisp/thumbs.el (thumbs-conversion-program):
29330         Quote Lisp string values using double-quotes, not apostrophes.
29332 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
29334         Describe frame geometry and related functions in Elisp manual
29335         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
29336         (Showing Images): Update references.
29337         * doc/lispref/elisp.texi (Top): Update node listing.
29338         * doc/lispref/frames.texi (Frame Geometry): New node.
29339         Move `Size and Position' section here.
29340         (Size Parameters): Update references.
29341         (Mouse Position): Update references and nomenclature.
29342         Describe new functions `x-mouse-absolute-pixel-position' and
29343         `x-set-mouse-absolute-pixel-position'.
29344         * doc/lispref/windows.texi (Window Sizes): Update references.
29345         (Resizing Windows): Update references.  Move description of
29346         `fit-frame-to-buffer' here.
29347         (Coordinates and Windows): Update nomenclature and references.
29348         Describe new arguments of `window-edges'.  Comment out
29349         descriptions of `window-left-column', `window-top-line',
29350         `window-pixel-left' and `window-pixel-top'.  Describe
29351         `window-absolute-pixel-position'.
29353 2015-08-20  Alan Mackenzie  <acm@muc.de>
29355         Handling of `c-parse-state'.  Fix low level bug.
29356         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
29357         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
29359 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
29361         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
29362         window instead of deleting it.
29364 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
29366         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
29367         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
29368         determine whether frame has a titlebar.
29369         Suggested by Eli Zaretskii <eliz@gnu.org>
29371 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
29373         Add a prettify-symbols-alist for (La)TeX
29374         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
29375         New variable holding an alist suitable as prettify-symbols-alist in
29376         (La)TeX modes.
29378 2015-08-19  Alan Mackenzie  <acm@muc.de>
29380         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
29381         Fixes debbugs#21275.
29382         In Emacs >= 25, let electric-pair-mode take precedence over
29383         delete-selection-mode.
29384         * lisp/delsel.el (delete-selection-uses-region-p): New function,
29385         previously a lambda expression in a property value for
29386         `self-insert-command'.
29387         (top-level): Set the `delete-selection' property of
29388         `self-insert-command' to `delete-selection-uses-region-p'.
29389         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
29390         property for c-electric-\(brace\|paren\) the value
29391         `delete-selection-uses-region-p' when the latter function exists.
29393 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
29395         Fix key binding quoting in tutorial *Help*
29396         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
29397         When generating help for custom key bindings, use the user-preferred
29398         quoting style rather than hardcoding the grave style.
29400 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
29402         Improve and future-proof OTF fonts support in w32uniscribe.c
29403         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
29404         about the expected results and why the new Uniscribe APIs are not
29405         used in this function.
29406         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
29407         (ScriptGetFontFeatureTags_Proc): New function typedefs.
29408         (uniscribe_new_apis): New static variable.
29409         (uniscribe_check_features): New function, implements OTF features
29410         verification while correctly accounting for features in the list
29411         after the nil member, if any.
29412         (uniscribe_check_otf_1): New function, retrieves the features
29413         supported by the font for the requested script and language using
29414         the Uniscribe APIs available from Windows Vista onwards.
29415         (uniscribe_check_otf): If the new Uniscribe APIs are available,
29416         use them in preference to reading the font data directly.  Call
29417         uniscribe_check_features to verify that the requested features are
29418         supported, replacing the original incomplete code.
29419         (syms_of_w32uniscribe): Initialize function pointers for the new
29420         Uniscribe APIs.  (Bug#21260)
29421         (otf_features): Scan the script, langsys, and feature arrays back
29422         to front, so that the result we return has them in alphabetical
29423         order, like ftfont.c does.
29424         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
29425         New variable for debugging w32uniscribe.c code.
29427 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
29429         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
29430         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
29431         clause of `isearch-search-fun-default'.  That lax variable does not
29432         refer to lax-whitespacing.  Related to (bug#21777).
29433         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
29434         * lisp/character-fold.el (character-fold-search): Set to nil.
29435         Default to nil for now, until someone implements proper
29436         lax-whitespacing with char-fold searching.
29438 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
29440         Fix doc-string of `help-mode-finish'.
29441         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
29443         In nsimage.m include coding.h (Bug#21292)
29444         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
29446         Move window edge functions to Elisp.
29447         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
29448         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
29449         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
29450         Move to window.el.
29451         (calc_absolute_offset): Remove.
29452         * lisp/frame.el (frame-edges): New function.
29453         * lisp/window.el (window-edges, window-pixel-edges)
29454         (window-absolute-pixel-edges): Move here from window.c.
29455         (window-body-edges, window-body-pixel-edges)
29456         (window-absolute-body-pixel-edges): Move here from window.c and
29457         rename "inside" to "body".  Keep old names as aliases.
29458         (window-absolute-pixel-position): New function.
29460 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
29462         [Gnus]: Use overlay functions directly
29463         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
29464         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
29465         (gnus-article-highlight-signature, gnus-article-extend-url-button)
29466         (gnus-article-add-button, gnus-insert-prev-page-button)
29467         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
29468         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
29469         (gnus-cite-add-face):
29470         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
29471         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
29472         (gnus-tree-recenter, gnus-highlight-selected-tree):
29473         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
29474         (gnus-summary-show-thread, gnus-summary-hide-thread)
29475         (gnus-highlight-selected-summary):
29476         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
29477         * lisp/gnus/message.el (message-fix-before-sending)
29478         (message-toggle-image-thumbnails):
29479         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
29480         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
29481         Use overlay functions directly instead of using gnus-overlay-*,
29482         message-overlay-*, and sieve-overlay-*.
29483         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
29484         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
29485         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
29486         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
29487         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
29488         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
29489         (message-overlay-get, message-overlay-put, message-overlays-in):
29490         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
29491         (sieve-overlays-at): Remove.
29493 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
29495         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
29496         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
29497         builds can use the declaration from the system headers.
29498         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
29499         definition of TITLEBAR_INFO.
29500         Suggested by Eli Zaretskii  <eliz@gnu.org>
29502 2015-08-19  Glenn Morris  <rgm@gnu.org>
29504         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
29506 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
29508         Use new q ‘format’ flag when fixing quotes in C
29509         * src/image.c (image_size_error): New function.  All uses of
29510         image_error with "Invalid image size ..."  changed to use it.
29511         * src/image.c (image_size_error, xbm_load_image, xbm_load)
29512         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
29513         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
29514         (imagemagick_load, svg_load, svg_load_image, gs_load)
29515         (x_kill_gs_process):
29516         * src/lread.c (load_warn_old_style_backquotes):
29517         * src/xfaces.c (load_pixmap):
29518         * src/xselect.c (x_clipboard_manager_error_1):
29519         Use %qs, not uLSQM and uRSQM.
29520         * src/syntax.c (Finternal_describe_syntax_value):
29521         Prefer Fsubstitute_command_keys to Fformat, as this lets
29522         us use AUTO_STRING.
29523         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
29524         as it's now guaranteed to be ASCII.
29525         * src/xselect.c (x_clipboard_manager_error_2):
29526         Avoid grave accent in low-level stderr diagnostic.
29528 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
29530         New q flag for ‘format’
29531         * doc/lispref/processes.texi (Sentinels):
29532         Don't hardwire grave quoting style in example.
29533         * doc/lispref/strings.texi (Formatting Strings):
29534         * etc/NEWS:
29535         Document new q flag.
29536         * src/editfns.c (Fformat): Implement it.
29538 2015-08-18  Daiki Ueno  <ueno@gnu.org>
29540         pinentry.el: Add debugging support
29541         * lisp/net/pinentry.el (pinentry-debug): New variable.
29542         (pinentry-debug-buffer): New variable.
29543         (pinentry--process-filter): Send input to the debug buffer, if
29544         `pinentry-debug' is set.
29546         pinentry.el: Improve multiline prompt
29547         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
29548         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
29549         command.
29551 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
29553         Fix multibyte confusion in diagnostics
29554         * src/print.c (print_error_message):
29555         Don't assume that the caller's name is unibyte.
29556         * src/xdisp.c (vadd_to_log):
29557         Don't assume that the formatted diagnostic is unibyte.
29559         Fix file name encodings in diagnostics
29560         Also, close some minor races when opening image files, by opening
29561         them once instead of multiple times.
29562         * src/gtkutil.c (xg_get_image_for_pixmap):
29563         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
29564         (svg_load):
29565         * src/nsimage.m (allocInitFromFile:):
29566         * src/xfns.c (xg_set_icon):
29567         Encode file name, since x_find_image_file no longer does that.
29568         * src/image.c (x_find_image_fd): New function.
29569         (x_find_image_file): Use it.  Do not encode resulting file name,
29570         since callers sometimes need it decoded.
29571         (slurp_file): File arg is now a fd, not a file name.
29572         All callers changed.  This saves us having to open the file twice.
29573         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
29574         (svg_load):
29575         Use x_find_image_fd and fdopen to save a file-open.
29576         Report file name that failed.
29577         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
29579 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
29581         Allow blink-matching-paren to jump off screen
29582         * doc/emacs/programs.texi (Matching): Mention the
29583         `blink-matching-paren' value `jump-offscreen'.
29584         * lisp/simple.el (blink-matching-paren): New possible value.
29585         (blink-matching-paren-on-screen): Clarify the docstring.
29586         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
29588         Refine the previous change
29589         * lisp/simple.el (blink-matching-open): Use minibuffer-message
29590         outside of save-excursion (bug#21286).
29592 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
29594         Rewrite and add frame geometry related functions.
29595         * src/frame.c (Fframe_position): New function.
29596         (Fset_frame_position): Rename parameters and rewrite doc-string.
29597         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
29598         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
29599         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
29600         Qtitle_bar_size.
29601         * src/nsfns.m (frame_geometry): New function.
29602         (Fx_frame_geometry): Call frame_geometry.
29603         (Fx_frame_edges): New function.
29604         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
29605         (GetTitleBarInfo_Proc): Define these so we can use the
29606         GetTitleBarInfo API.
29607         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
29608         (Fx_frame_geometry): Rewrite.
29609         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
29610         (Fx_set_mouse_absolute_pixel_position): New functions.
29611         * src/xfns.c (frame_geometry): New function.
29612         (Fx_frame_geometry): Call frame_geometry.
29613         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
29614         (Fx_set_mouse_absolute_pixel_position): New functions.
29616 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
29618         Improve Tramp's compatibility
29619         * lisp/net/tramp.el (tramp-get-method-parameter):
29620         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
29621         (tramp-adb-get-device):
29622         * lisp/net/trampver.el (tramp-repository-get-version):
29623         Use `tramp-compat-replace-regexp-in-string'.
29625 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
29627         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
29628         Encode/decode string.
29630 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
29632         Clarify what happens to match data on failure
29633         Problem reported by Ernesto Alfonso (Bug#21279).
29634         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
29635         Document more carefully what happens to match data after a failed
29636         search.
29637         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
29638         the return value is undefined if the last search failed.
29639         (Fmatch_data): Simplify doc string line 1.
29641 2015-08-18  Daiki Ueno  <ueno@gnu.org>
29643         Revert "pinentry.el: Support external passphrase cache"
29644         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
29645         pinentry.el shouldn't directly interact with the secrets service,
29646         but ask the caller to cache the passphrase.
29648 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
29650         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
29651         Message mode hooks.
29653 2015-08-17  Daiki Ueno  <ueno@gnu.org>
29655         epg.el: Make gpgconf output parsing future proof
29656         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
29657         --list-options" output.
29659         pinentry.el: Support external passphrase cache
29660         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
29661         (pinentry--allow-external-password-cache): New local variable.
29662         (pinentry--key-info): New local variable.
29663         (secrets-enabled, secrets-search-items, secrets-get-secret):
29664         Declare.
29665         (pinentry--send-passphrase): New function, split from
29666         `pinentry--process-filter'.
29667         (pinentry--process-filter): Use secrets.el to retrieve passphrase
29668         from login keyring.
29670         pinentry.el: Popup window for multiline prompt
29671         * lisp/net/pinentry.el (pinentry): New custom group.
29672         (pinentry-popup-prompt-window): New user option.
29673         (pinentry-prompt-window-height): New user option.
29674         (pinentry--prompt-buffer): New variable.
29675         (pinentry-prompt-mode-map): New variable.
29676         (pinentry-prompt-mode): New function.
29677         (pinentry--prompt): New function.
29678         (pinentry--process-filter): Use `pinentry--prompt' instead of
29679         `read-passwd' and `y-or-n-p'.
29681 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
29683         message.el: Silent the byte compiler
29684         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
29685         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
29686         (message-delete-overlay, message-window-inside-pixel-edges):
29687         Declare before using.
29689         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
29690         (message-window-inside-pixel-edges): XEmacs compatible functions.
29692 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
29694         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
29696 2015-08-17  Noah Friedman  <friedman@splode.com>
29698         * lisp/simple.el (blink-matching-open): Restore point before
29699         calling minibuffer-message.
29701 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
29703         * lisp/play/dunnet.el: Update version number in header (now
29704         matches help).
29706 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
29708         Curved quotes in --batch diagnostics in non-UTF-8
29709         When run with --batch, check that curved quotes are compatible with
29710         the system locale before outputting them in diagnostics.
29711         Problem reported by Eli Zaretskii in:
29712         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
29713         * lisp/startup.el (command-line): Set internal--text-quoting-flag
29714         after the standard display table is initialized.
29715         * src/doc.c (default_to_grave_quoting_style): New function.
29716         (text_quoting_style): Use it.
29717         (text_quoting_flag): New static var, visible to Lisp as
29718         internal--text-quoting-flag.
29719         * src/emacs.c: Include <wchar.h> if available.
29720         (using_utf8): New function.
29721         (main): Use it to initialize text_quoting_flag.
29722         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
29723         Don't define, as it's not needed and it clashes with wchar.h.
29725 2015-08-17  Glenn Morris  <rgm@gnu.org>
29727         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
29728         from makeinfo about spurious "Note:" cross-reference, and for grammar.
29730 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
29732         Minor change in variable initialization on MS-Windows
29733         * src/w32fns.c <after_dead_key>: Initialize to -1.
29734         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
29735         non-zero.
29737         Fix a bug with LWindow key remapping on MS-Windows
29738         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
29740 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
29742         Improve fontset support for latest OTF script tags
29743         * lisp/international/fontset.el (otf-script-alist): Add some
29744         missing script tags.
29745         (setup-default-fontset): Include settings for v2 versions of the
29746         script tags used by some modern OTF/TTF fonts.
29748 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
29750         Spelling fixes
29752 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
29754         Use curved quotes in core elisp diagnostics
29755         In the core elisp files, use curved quotes in diagnostic formats,
29756         so that they follow user preference as per ‘text-quoting-style’
29757         rather than being hard-coded to quote `like this'.
29758         * lisp/abbrev.el (expand-region-abbrevs):
29759         * lisp/button.el (button-category-symbol, button-put)
29760         (make-text-button):
29761         * lisp/cus-start.el:
29762         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
29763         (custom--sort-vars-1, load-theme):
29764         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
29765         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
29766         (cl-generic-generalizers):
29767         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
29768         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
29769         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
29770         (advice--make, define-advice):
29771         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
29772         * lisp/emacs-lisp/timer.el (timer-event-handler):
29773         * lisp/env.el (setenv):
29774         * lisp/facemenu.el (facemenu-add-new-face)
29775         (facemenu-add-new-color):
29776         * lisp/faces.el (face-documentation, read-face-name)
29777         (face-read-string, read-face-font, face-spec-set-match-display)
29778         (read-color, x-resolve-font-name):
29779         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
29780         (set-auto-mode, hack-local-variables)
29781         (hack-one-local-variable--obsolete)
29782         (dir-locals-set-directory-class, write-file)
29783         (basic-save-buffer, delete-directory, copy-directory)
29784         (recover-session, recover-session-finish, insert-directory)
29785         (file-modes-char-to-who, file-modes-symbolic-to-number)
29786         (move-file-to-trash):
29787         * lisp/font-lock.el (font-lock-fontify-buffer):
29788         * lisp/format.el (format-write-file, format-find-file)
29789         (format-insert-file):
29790         * lisp/frame.el (get-device-terminal, select-frame-by-name):
29791         * lisp/fringe.el (fringe--check-style):
29792         * lisp/help.el (describe-minor-mode-from-indicator):
29793         * lisp/image.el (image-type):
29794         * lisp/international/fontset.el (x-must-resolve-font-name):
29795         * lisp/international/mule-cmds.el (prefer-coding-system)
29796         (select-safe-coding-system-interactively)
29797         (select-safe-coding-system, activate-input-method)
29798         (toggle-input-method, describe-current-input-method):
29799         * lisp/international/mule-conf.el (code-offset):
29800         * lisp/mouse.el (minor-mode-menu-from-indicator):
29801         * lisp/replace.el (query-replace-read-from)
29802         (occur-after-change-function, occur-1):
29803         * lisp/scroll-bar.el (scroll-bar-columns):
29804         * lisp/simple.el (execute-extended-command)
29805         (undo-outer-limit-truncate, compose-mail, set-variable)
29806         (choose-completion-string, define-alternatives):
29807         * lisp/startup.el (site-run-file, tty-handle-args)
29808         (command-line, command-line-1):
29809         * lisp/subr.el (noreturn, define-error, add-to-list)
29810         (read-char-choice):
29811         * lisp/term/common-win.el (x-handle-xrm-switch)
29812         (x-handle-name-switch, x-handle-args):
29813         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
29814         Use curved quotes in diagnostics.
29815         * lisp/international/mule.el (find-auto-coding):
29816         Use " to quote in a diagnostic, to be consistent with the rest of
29817         this file.
29819         Convert lisp/term/x-win.el to UTF-8
29820         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
29821         runtime behavior, and the file is multilingual so compile-time
29822         appearance shouldn't be an issue.
29823         * admin/notes/unicode: Document this.
29825 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
29827         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
29828         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
29829         issues and comments, bug#943.
29830         (verilog-type-font-keywords): Cycle delay operators like ##1 and
29831         ##[0:$] are now highlighted in their entirety similarly to the #
29832         delay-control operator.  Likewise, the followed-by operators #-#
29833         and #=# are no longer partially highlighed.
29834         (verilog-backward-syntactic-ws-quick)
29835         (verilog-skip-backward-comments): Minor performance improvements
29836         to buffer traversal functions for reduced latency.
29837         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
29838         keyword 'final' follows 'assert/assume/cover', then it is part of
29839         a deferred immediate assertion item and should not be treated as a
29840         final construct for indentation.  Reported by Yuri Sugihara.
29841         (verilog-do-indent): Virtual task/function/class definition lines
29842         should not be considered as declarations.  Reported by Enzo Chi.
29843         (verilog-do-indent): Do not falsely indent to '=' of
29844         property/sequence operators on subsequent lines of a multi-line
29845         statement.
29846         (verilog-assignment-operator-re): Fix '!==' operator and add
29847         support for '<->', ':/', '#-#', and '#=#' operators.
29848         (verilog-calculate-indent, verilog-label-be): Enable
29849         case-sensitive regular expression parsing when looking for
29850         keywords.
29851         (verilog-calc-1): Detect 'pure virtual method' declarations which
29852         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
29853         (verilog-backward-ws&directives): When moving back to the start of
29854         a line and the preceeding line ended with an escaped-newline, then
29855         jump up one line.  This properly consumes a multi-line
29856         pre-processor directive.  Reported by Kaushal Modi.
29857         (verilog-dpi-import-export-re, verilog-extended-complete-re)
29858         (verilog-calc-1): Teach verilog-mode to properly indent after a
29859         DPI import/export statement that resides outside of a module.
29860         Reported by Kaushal Modi.
29861         (verilog-extended-complete-re): Update regexp to match both
29862         "DPI-C" and "DPI".  Reported by Kaushal Modi.
29864 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
29866         substitute-command-keys a few more doc strings
29867         * lisp/allout.el (outlineify-sticky):
29868         * lisp/files.el (hack-one-local-variable--obsolete):
29869         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
29870         Use substitute-command-keys on some doc strings so that
29871         they don't use hard-coded key bindings or quoting styles.
29873         Fix quoting in Fformat calls
29874         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
29875         (xpm_load, xpm_load_image, pbm_load, png_load_body)
29876         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
29877         (imagemagick_load, svg_load, svg_load_image, gs_load)
29878         (x_kill_gs_process):
29879         * src/lread.c (load_warn_old_style_backquotes):
29880         * src/xfaces.c (load_pixmap):
29881         * src/xselect.c (x_clipboard_manager_error_1):
29882         Quote diagnostics according to user preference when calling
29883         Fformat or its derivatives.
29885 2015-08-15  Glenn Morris  <rgm@gnu.org>
29887         * admin/admin.el (set-version, set-copyright): Remove deleted files.
29889 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
29891         Allow describe-function helpers to access buffer-local values
29892         This will be used by cedet/mode-local.el `describe-mode-local-override'
29893         on `help-fns-describe-function-functions' in upstream CEDET.
29894         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
29895         `describe-function'.
29896         (describe-function): Bind it, save it on the help xref stack.
29898         Handle pulse-background being nil
29899         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
29900         pulse-background, handle it being nil.
29902 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
29904         Fix "\`" confusion in Lisp strings
29905         * admin/authors.el (authors-canonical-author-name):
29906         Fix typo by using "\\`" not "\`" in string RE.
29907         * lisp/obsolete/complete.el (PC-complete-as-file-name):
29908         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
29909         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
29910         Use plain "`", not the equivalent-but-confusing "\`", in strings.
29911         * lisp/textmodes/texinfmt.el: Fix comment likewise.
29913 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
29915         * nt/zipdist.bat: Remove -- no longer used.
29917 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
29919         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
29920         rather than "getenforce".
29921         (tramp-sh-handle-set-file-selinux-context): Do not
29922         cache SELinux context if not all context components are given.
29924 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
29926         Add doc strings to 2 help-mode.el functions
29927         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
29928         strings.  (Bug#21263)
29930         Remove files used by the old MS-Windows specific build procedure
29931         * admin/unidata/makefile.w32-in:
29932         * doc/emacs/makefile.w32-in:
29933         * doc/lispintro/makefile.w32-in:
29934         * doc/lispref/makefile.w32-in:
29935         * doc/misc/makefile.w32-in:
29936         * leim/makefile.w32-in:
29937         * lib-src/makefile.w32-in:
29938         * lib/makefile.w32-in:
29939         * lisp/makefile.w32-in:
29940         * nt/INSTALL.OLD:
29941         * nt/config.nt:
29942         * nt/emacs-src.tags:
29943         * nt/envadd.bat:
29944         * nt/gmake.defs:
29945         * nt/makefile.w32-in:
29946         * nt/multi-install-info.bat:
29947         * nt/nmake.defs:
29948         * nt/paths.h:
29949         * src/makefile.w32-in: Files deleted.
29950         * nt/configure.bat: Remove everything except the blurb about the
29951         new build procedure.
29952         * make-dist: Remove references to makefile.w32-in in various
29953         directories, and to files in nt/ that were deleted.
29954         * etc/NEWS: Mention the fact that the files were dropped.
29956 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
29958         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
29959         (Bug#21248)
29961 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
29963         Default to inotify instead of gfile
29964         * configure.ac (with_file_notification): Fix typo that
29965         prevented suppression of file notification if HAVE_NS.
29966         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
29967         with_file_notification is 'yes' (Bug#21241).
29968         * etc/NEWS: Mention this.
29970         Fix broken URLs for ISO-IR
29971         * doc/emacs/mule.texi (Charsets):
29972         * lisp/international/mule-conf.el:
29973         Fix broken URL (Bug#21248).
29975         Low-level diagnostics now use ‘text-quoting-style’
29976         * src/doprnt.c (doprnt):
29977         Format ` and ' as per ‘text-quoting-style’.
29978         * src/xdisp.c (vmessage, message): Mention that the format should
29979         not contain ` or '.
29981         Prefer ‘format’ to ‘substitute-command-keys’
29982         * src/character.h (uLSQM, uRSQM): Move here ...
29983         * src/doc.c (uLSQM, uRSQM): ... from here.
29984         * src/doc.c (Fsubstitute_command_keys):
29985         * src/syntax.c (Finternal_describe_syntax_value):
29986         * lisp/cedet/mode-local.el (mode-local-print-binding)
29987         (mode-local-describe-bindings-2):
29988         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
29989         * lisp/cus-theme.el (describe-theme-1):
29990         * lisp/descr-text.el (describe-text-properties-1, describe-char):
29991         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
29992         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
29993         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
29994         * lisp/emacs-lisp/package.el (describe-package-1):
29995         * lisp/faces.el (describe-face):
29996         * lisp/help-fns.el (help-fns--key-bindings)
29997         (help-fns--compiler-macro, help-fns--parent-mode)
29998         (help-fns--obsolete, help-fns--interactive-only)
29999         (describe-function-1, describe-variable):
30000         * lisp/help.el (describe-mode):
30001         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
30002         to implement quoting style.  This generally makes the code simpler.
30004         Extend ‘format’ to translate curved quotes
30005         This is a followup to the recent doc string change, and deals with
30006         diagnostics and the like.  This patch is more conservative than
30007         the doc string change, in that the behavior of ‘format’ changes
30008         only if its first arg contains curved quotes and the user prefers
30009         straight or grave quotes.  (Come to think of it, perhaps we should
30010         be similarly conservative with doc strings too, but that can wait.)
30011         The upside of this conservatism is that existing usage is almost
30012         surely unaffected.  The downside is that we'll eventually have to
30013         change Emacs's format strings to use curved quotes in places where
30014         the user might want curved quotes, but that's a simple and
30015         mechanical translation that I'm willing to do later.  (Bug#21222)
30016         * doc/lispref/help.texi (Keys in Documentation):
30017         Move description of text-quoting-style from here ...
30018         * doc/lispref/strings.texi (Formatting Strings):
30019         ... to here, and describe new behavior of ‘format’.
30020         * etc/NEWS: Describe new behavior.
30021         * lisp/calc/calc-help.el (calc-describe-thing):
30022         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
30023         * lisp/info.el (Info-find-index-name):
30024         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
30025         of recently-added curved quotes.
30026         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
30027         Move from here ...
30028         * src/lisp.h: ... to here.
30029         * src/doc.c (text_quoting_style): New function.
30030         (Fsubstitute_command_keys): Use it.
30031         * src/editfns.c (Fformat): Implement new behavior.
30032         * src/lisp.h (enum text_quoting_style): New enum.
30034 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
30036         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
30037         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
30039 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
30041         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
30042         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
30044 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
30046         Flush file properties in Tramp
30047         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
30048         (tramp-sh-handle-set-file-times):
30049         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
30050         (tramp-adb-handle-set-file-times): Flush the file properties of
30051         the directory.
30053 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
30055         * doc/emacs/misc.texi (Amusements): Fixed typo.
30057 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
30059         Don't miss warnings about removing string text properties while dumping
30060         * src/alloc.c (purecopy): Warn about removing a string's text
30061         properties even when the same string was already pure-copied
30062         earlier.
30063         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
30064         (elisp--xref-format-extra): Fix the commentary.
30066 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
30068         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
30070 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
30072         * lisp/progmodes/compile.el: Use lexical-binding.
30073         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
30075 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
30077         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
30078         * lisp/uniquify.el: Remove redundant `:group's.
30080 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
30082         * lisp/net/tramp-adb.el
30083         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
30084         result to prevent modification of the tramp-cache by side effects.
30085         Use the correct cache key.
30087 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
30089         Make add_to_log varargs
30090         * src/alloc.c (run_finalizer_handler):
30091         * src/charset.c (load_charset_map_from_vector):
30092         * src/nsimage.m (ns_load_image):
30093         * src/xfaces.c (load_pixmap, load_color2):
30094         Simplify, now that add_to_log has a variable number of args.
30095         * src/image.c (image_error): Take a variable number of args.
30096         Callers simplified.
30097         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
30098         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
30099         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
30100         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
30102         Optional args for holiday-greek-orthodox-easter
30103         * etc/NEWS: Document this.
30104         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
30105         Add optional args N and STRING, mimicking the API and code of
30106         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
30108 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
30110         xref-find-definitions: Exclude more generic function items.
30111         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
30112         Add doc string.
30113         (cl--generic-find-defgeneric-regexp): New.
30114         (find-function-regexp-alist): Add it.
30115         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
30116         elisp-mode.el, change to search for ";;; Code:"
30117         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
30118         (find-function-regexp-alist): Add them.
30119         * lisp/progmodes/elisp-mode.el:
30120         (elisp--xref-format, elisp--xref-format-extra): Change back to
30121         defvar due to bug#21237.
30122         (elisp--xref-find-definitions): Exclude co-located default methods for
30123         generic functions.  Also exclude implicitly declared defgeneric.
30124         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
30125         mode variables defined by 'define-minor-mode'.
30126         * test/automated/elisp-mode-tests.el: Declare generic functions, add
30127         tests for them.
30128         (xref-elisp-test-run): Fix bug.
30129         (emacs-test-dir): Improve initial value.
30130         (find-defs-defun-defvar-el): Don't expect defvar.
30131         (find-defs-feature-el): Match change to find-feature-regexp.
30133 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
30135         Improve warning about purecopy of strings with properties
30136         * src/alloc.c (purecopy): Show the offending string with the
30137         warning about removing its text properties.
30139 2015-08-12  Alan Mackenzie  <acm@muc.de>
30141         Introduce new macros to cover Emacs's new names in cl-lib.el
30142         This also eliminates `mapcan' warnings in XEmacs.
30143         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
30144         characterise [X]Emacs versions.
30145         (top-level): Require either 'cl or 'cl-lib, depending on
30146         c--mapcan-status.
30147         Change this back to cc-external-require from an eval-when-compile
30148         require.
30149         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
30150         (c--delete-duplicates): New macros which expand into either old or new
30151         names.
30152         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
30153         rather than the old names.
30154         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
30155         rather than mapcan.
30156         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
30157         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
30158         depending on c--mapcan-status.
30159         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
30160         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
30161         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
30162         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
30163         (c-decl-block-key, c-keywords, c-keywords-obarray)
30164         (c-regular-keywords-regexp, c-primary-expr-regexp)
30165         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
30166         (c-known-type-key, c-nonlabel-token-key)
30167         (c-make-init-lang-vars-fun): Use the new macros rather than the old
30168         names.
30170 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
30172         loadhist.el (read-feature): Conform to completing-read
30173         * lisp/loadhist.el (read-feature): According to `completing-read'
30174         documentation, if collection is a list, then it must be a list of
30175         strings, not a list of symbols like before.
30177 2015-08-12  David Kastrup  <dak@gnu.org>
30179         Deal gracefully with up-events (Bug#19746)
30180         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
30181         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
30182         those may easily be injected by user-level Lisp code.
30183         (read_key_sequence): Discard unbound up-events like unbound
30184         down-events: they are even more likely only relevant for special
30185         purposes.
30186         While Emacs will not produce up-events on its own currently (those are
30187         converted to drag or click events before being converted to
30188         Lisp-readable structures), the input queue can be made to contain them
30189         by synthesizing events to `unread-command-events'.  Emacs should deal
30190         consistently with such events.
30192 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
30194         Fix display of thin lines whose newline has line-height property of t
30195         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
30196         and descent values of non-empty glyph rows, since they could have
30197         forced low values deliberately.  (Bug#21243)
30199 2015-08-12  Richard Stallman  <rms@gnu.org>
30201         Offer to combine multiple To or CC fields.
30202         * lisp/mail/sendmail.el (mail-combine-fields): New function.
30203         (mail-send): Call 'mail-combine-fields'.
30205         Don't decrypt encrypted files.
30206         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
30208         Handle encrypted mbox files.
30209         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
30210         the mbox file if necessary.
30212         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
30213         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
30214         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
30215         In a mime message, reenable Mime and show the parts that
30216         were shown before.
30217         Add keyword "decrypt" if anything decrypted.
30219         epa-inhibit inhibits auto-recognition of .gpg files
30220         * lisp/epa-file.el (epa-inhibit): New variable.
30221         (epa-file-handler): Check epa-inhibit.
30223 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
30225         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
30227 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
30229         Respect python.el imenu when semantic-mode is off
30230         Fixes bug#21220
30231         * lisp/cedet/semantic/wisent/python.el: Do not force
30232         wisent-python-default-setup on python-mode-hook.
30234 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
30236         Give names to Unicode code points in C code
30237         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
30238         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
30239         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
30240         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
30241         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
30242         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
30243         (OBJECT_REPLACEMENT_CHARACTER):
30244         New named constants for Unicode code points.
30245         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
30246         * src/composite.c (char_composable_p):
30247         * src/lread.c (readevalloop, read1):
30248         * src/xdisp.c (get_next_display_element):
30249         Use them.
30250         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
30251         Remove; now in character.h.
30253 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
30255         elisp--xref-find-definitions handle cl-defstuct default constructor
30256         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
30257         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
30258         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
30259         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
30260         from xref-elisp-test for ease of debugging.
30261         (xref-elisp-deftest): Rename from xref-elisp-test.
30262         (find-defs-constructor): New test.
30263         (find-defs-defgeneric-el): Match batch test config.
30264         (compile): Required for find-defs compilation-minor-mode test.
30265         (find-defs-defvar-el): Match code change.
30266         (find-defs-face-el): Match code change.
30267         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
30268         Improve doc string.
30270 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
30272         * lisp/replace.el (perform-replace): Document `replacements'.
30273         (perform-replace): Move the description of the format of `replacements'
30274         from the body's comment to the doc string.
30276 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
30278         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
30279         sequence.  Recent adb version send initial escape sequences, even
30280         when terminal type is set to TERM=dumb.
30282 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
30284         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
30285         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
30286         Function deleted.
30287         (elisp--xref-format-cl-defmethod): New defconst.
30288         (find-feature-regexp, find-alias-regexp): New defcustoms.
30289         (elisp--xref-make-xref): New function.
30290         (elisp--xref-find-definitions): Rewrite using the above, handle many
30291         more cases.  Always output all available definitions.
30292         (xref-location-marker): No need for special cases.
30293         * test/automated/elisp-mode-tests.el: Add more tests of
30294         elisp--xref-find-definitions, improve current tests.
30296 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
30298         Fix recording of events pushed onto unread-command-events
30299         * src/keyboard.c (read_char): Make sure events read from
30300         unread-command-events and unread-post-input-method-events are
30301         always recorded by record_char.  Reported by David Kastrup
30302         <dak@gnu.org>, see
30303         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
30305 2015-08-10  Samer Masterson  <samer@samertm.com>
30307         Set file buffer as current for "--file"
30308         * lisp/startup.el (command-line-1): Set file buffer as current before
30309         it is displayed so it can be used with options like "--eval".
30310         (Bug#21095)
30312 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
30314         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
30315         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
30316         after setting LC_ALL to the desired locale, to avoid affecting how
30317         numbers are read and printed.  (Bug#21223)
30319 2015-08-10  Alan Mackenzie  <acm@muc.de>
30321         Fix "Invalid search bound (wrong side of point)" in fontification
30322         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
30323         an initialization expression, check point is not beyond the
30324         fontification limit.
30326 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
30328         Fix DPI calculation when Xft/DPI is default
30329         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
30330         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
30331         Remove unnecessary cast while we're in the neighborhood.
30333 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
30335         Add project-vc-search-path and project-vc-ignores
30336         * lisp/progmodes/project.el (project-vc): New group.
30337         (project-vc-search-path, project-vc-ignores): New variables.
30338         (project--value-in-dir): Utility function.
30339         (project-search-path, project-ignores): Use them.
30340         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
30341         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
30343 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
30345         Fix some minor quoting issues with grave accent
30346         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
30347         Remove redundant quotes.
30348         * src/doc.c (uLSQM, uRSQM): New macros.
30349         * src/doc.c (Fsubstitute_command_keys):
30350         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
30351         preference for quotes rather than hardcoding the ‘grave’ style.
30352         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
30353         (re_match_2_internal) [DEBUG]: In debugging output, quote C
30354         strings with "...", not `...'.
30356         ChangeLog.2 ignores remote-tracking merges
30357         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
30358         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
30359         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
30361 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
30363         Use kpsewhich in ffap-latex-mode, if available
30364         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
30365         (ffap-latex-mode): Use kpsewhich if available.
30367         ffap: disallow braces in filenames for tex modes
30368         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
30369         braces in tex-related modes.
30371         Remove useless backslashes from ffap-string-at-point-mode-alist
30372         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
30373         misleading backslashes from default value.
30375         Augment docstring of ffap-string-at-point-mode-alist
30376         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
30377         and END are handled.
30379 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
30381         * lisp/org/org-src.el (org-edit-src-code)
30382         (org-edit-fixed-width-region):
30383         * lisp/simple.el (completion-setup-function):
30384         Remove calls to substitute-command-keys that always just return
30385         their argument.
30387 2015-08-09  Daiki Ueno  <ueno@gnu.org>
30389         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
30390         (Bug#21210)
30392 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
30394         Fix link to source code in help window
30395         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
30396         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
30397         'No longer include timestamp in header of .elc files'.  Add code
30398         that will return .el source file in load-path.
30400 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
30402         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
30403         Respect `isearch-lax-whitespace' when searching through
30404         `isearch-word'.
30406 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
30408         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
30410         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
30411         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
30412         (org-set-regexps-and-options, org-assign-fast-keys)
30413         (org-contextualize-keys, org-contextualize-validate-key)
30414         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
30415         (org-find-olp, org-find-exact-heading-in-directory)
30416         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
30417         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
30418         (org-replace-escapes): Use dolist.
30419         (org-mode): Optimize away XEmacs-only code.
30420         (org-refile-get-targets): Remove unused var `f'.
30421         (org-fast-todo-selection): Remove unused var `e'.
30422         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
30423         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
30424         (org-format-latex): Use dolist.  Remove unused var `e'.
30425         (org-toggle-heading): Access vars lexically rather than dynamically.
30426         (org-backward-sentence, org-forward-sentence, org-meta-return)
30427         (org-kill-line): Mark arg as unused.
30428         (org-submit-bug-report): Silence compiler warning.
30429         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
30430         (org-get-cursor-date): Remove unused var `tm'.
30431         (org-comment-or-uncomment-region): Use standard name `_'.
30432         (reftex-docstruct-symbol, reftex-cite-format): Declare to
30433         silence byte-compiler.
30434         (org-reftex-citation): Add `org--' prefix to dynamically scoped
30435         `rds' var.
30437 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
30439         Electric quote if coding is undecided or no conv
30440         * lisp/electric.el (electric--insertable-p): Also say that a
30441         string is insertable if the buffer file coding system is undecided
30442         or uses no conversion, as curved quotes will work in either case.
30444         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
30446 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
30448         Fix overlay string display regressions introduced in Emacs 24.5
30449         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
30450         buffer position, if we move the iterator to a new position as
30451         result of jumping over text covered by a "replacing" display
30452         property.
30453         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
30455         Support recovery from C stack overflow on MS-Windows
30456         * src/w32fns.c (w32_reset_stack_overflow_guard)
30457         (stack_overflow_handler): New functions for handling C stack
30458         overflow exceptions.
30459         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
30460         specially, and zero out except_addr if we do.
30461         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
30462         mode.
30463         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
30464         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
30465         the MinGW build, but the code guarded by that is for Posix hosts.
30466         * src/keyboard.c (command_loop) [WINDOWSNT]:
30467         Call w32_reset_stack_overflow_guard.
30468         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
30469         (sigsetjmp): New macro.
30470         (w32_reset_stack_overflow_guard): Declare the prototype.
30471         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
30473 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
30475         Improve error signalling for seq-subseq
30476         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
30477         when indexes are too large, but to silently ignore numbers which
30478         are too negative for lists.  String and vector handling errors in
30479         both cases.  This has been regularized.  Error signaling behavior
30480         has been explicitly added to the doc string.
30482         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
30483         therefore also impacted by this change.  Update the doc string
30484         to reflect this.
30486         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
30487         added for these exceptional cases, as well as one non exceptional
30488         base case.
30490 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
30492         Improve error checking in tramp-adb.el
30493         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
30494         Improve error checking.  "ls -l" on Android in Enforcing mode can
30495         print "lstat './FILENAME failed: Permission denied".
30497 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
30499         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
30500         non-struct vectors.
30502 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
30504         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
30505         * lisp/window.el: Fix typo that broke build.
30506         (display-buffer--action-function-custom-type):
30507         Add `display-buffer-use-some-frame'.
30508         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
30510         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
30511         * lisp/window.el (display-buffer-use-some-frame): Add support for
30512         'inhibit-same-window in alist.
30513         * doc/lispref/windows.texi (display-buffer-use-some-frame):
30514         Doc support for 'inhibit-same-window in alist.
30516 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
30518         Avoid infinite loop in display of invisible text in strings
30519         * src/xdisp.c (handle_invisible_prop): If the next change of
30520         invisibility spec does not mean the beginning of a visible text,
30521         update the string position from which to start the search for the
30522         next invisibility change.  This avoids an infinite loop when we
30523         have more than one invisibility spec that are made inactive by
30524         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
30525         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
30526         for the situation that caused bug #21200.
30528 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
30530         * lisp/emacs-lisp/package.el: Simplify describe-package-1
30531         (package-help-section-name-face): New face.
30532         (package--print-help-section): New function.
30533         (describe-package-1): Refactor section printing.
30534         (package-make-button): Use face instead of font-lock-face, which
30535         doesn't work on buttons.
30537         * lisp/emacs-lisp/package.el: Define custom faces
30538         (package-name-face, package-description-face)
30539         (package-status-built-in-face, package-status-external-face)
30540         (package-status-available-face, package-status-new-face)
30541         (package-status-held-face, package-status-disabled-face)
30542         (package-status-installed-face, package-status-dependency-face)
30543         (package-status-unsigned-face, package-status-incompat-face)
30544         (package-status-avail-obso-face): New faces.
30545         (package-menu--print-info-simple): Use them.
30547 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
30549         Fix some confusion with ‘format’
30550         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
30551         (allout-graphics-modification-handler):
30552         Protect arbitrary string in a format context with "%s" format.
30553         * lisp/avoid.el:
30554         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
30555         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
30556         * lisp/erc/erc-button.el (erc-button-beats-to-time):
30557         * lisp/gnus/message.el (message-send-form-letter):
30558         * lisp/org/ob-core.el (org-babel-check-evaluate)
30559         (org-babel-confirm-evaluate):
30560         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
30561         * lisp/org/ox-latex.el (org-latex-compile):
30562         * lisp/org/ox-man.el (org-man-compile):
30563         * lisp/org/ox-odt.el (org-odt-template):
30564         * lisp/org/ox-texinfo.el (org-texinfo-compile):
30565         * lisp/progmodes/prolog.el (prolog-help-info)
30566         (prolog-view-predspec):
30567         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
30568         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
30569         * lisp/textmodes/rst.el (rst-replace-lines):
30570         Change (message (format ...)) to (message ...), and likewise
30571         for ‘error’.  This lessens the probability of confusion when the
30572         output of ‘format’ contains ‘%’.
30574 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
30576         * lisp/replace.el (replace-character-fold): Default to nil.
30578         * lisp/character-fold.el: Fix lax whitespace.
30579         (character-fold-table): Don't make space match other whitespace chars.
30580         (character-fold-to-regexp): Simplify lax behavior.
30582 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
30584         Preserve window point in xref-find-definitions-other-window
30585         Fix the problem reported by Ingo Logmar in
30586         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
30587         * lisp/progmodes/xref.el (xref--goto-char): Extract from
30588         xref--goto-location.
30589         (xref--pop-to-location): Use it.  Replace xref--goto-location with
30590         a direct xref-location-marker call.
30591         (xref--show-location): Likewise.
30592         (xref--display-position): Use xref--goto-char.
30594         * lisp/progmodes/project.el: Add a paragraph to the front matter.
30596 2015-08-04  David Kastrup  <dak@gnu.org>
30598         * lisp/vc/emerge.el (emerge-show-file-name):
30599         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
30600         (vhdl-comment-insert, vhdl-hooked-abbrev):
30601         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
30602         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
30603         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
30604         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
30605         * lisp/obsolete/vip.el (vip-escape-to-emacs)
30606         (vip-prefix-arg-value, vip-prefix-arg-com):
30607         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
30608         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
30609         (quail-tibkey-update-translation):
30610         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
30611         * lisp/leim/quail/lao.el (quail-lao-update-translation):
30612         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
30613         (quail-japanese-self-insert-and-switch-to-alpha):
30614         * lisp/leim/quail/hangul.el (hangul2-input-method)
30615         (hangul3-input-method, hangul390-input-method):
30616         * lisp/language/hanja-util.el (hangul-to-hanja-char):
30617         * lisp/international/robin.el (robin-input-method):
30618         * lisp/international/quail.el (quail-start-translation)
30619         (quail-start-conversion):
30620         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
30621         (gnus-article-describe-key-briefly):
30622         * lisp/eshell/em-hist.el (eshell-list-history):
30623         * lisp/term.el (term-dynamic-list-input-ring)
30624         (term-dynamic-list-completions):
30625         * lisp/subr.el (momentary-string-display):
30626         * lisp/simple.el (read-quoted-char):
30627         * lisp/pcomplete.el (pcomplete-show-completions):
30628         * lisp/kmacro.el (kmacro-repeat-on-last-key):
30629         * lisp/info.el (Info-summary):
30630         * lisp/ehelp.el (electric-help-command-loop):
30631         * lisp/ebuff-menu.el (electric-buffer-list)
30632         (Electric-buffer-menu-exit):
30633         * lisp/double.el (double-translate-key):
30634         * lisp/comint.el (comint-dynamic-list-input-ring)
30635         (comint-dynamic-list-completions): Do not overwrite preexisting
30636         contents of `unread-command-events' when putting new events into it.
30638 2015-08-04  Daniel Colascione  <dancol@dancol.org>
30640         Improve ansi-color filtering of unrecognized escape sequences
30641         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
30642         escape sequences.
30643         (ansi-color-filter-apply, ansi-color-apply): Filter out
30644         unrecognized escape sequences.
30646 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
30648         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
30649         definitions to `easy-menu-define', improve a couple to account for
30650         async, and add a couple of new commands.
30652 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
30654         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
30656 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
30658         Add new 'calendar-weekend-days' option
30659         Make the days receiving the 'calendar-weekend-header' face freely
30660         customizable, as they differ by region/culture.
30661         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
30662         new variable.
30663         * lisp/calendar/calendar.el (calendar-generate-month): New variable
30664         calendar-weekend-days to customize day header fontification.
30666 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
30668         Redo text-quoting-style variable
30669         Rename help-quote-translation to text-quoting-style,
30670         and use symbols rather than characters as values.
30671         This follows suggestions along these lines by Alan Mackenzie in:
30672         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
30673         and by Drew Adams in:
30674         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
30675         * doc/lispref/help.texi (Keys in Documentation)
30676         * etc/NEWS:
30677         * lisp/cus-start.el (standard):
30678         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
30679         Document and/or implement the new behavior instead of the old.
30680         (syms_of_doc): New symbols 'grave' and 'straight'.
30682 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
30684         nnimap.el: Use IMAP MOVE extension if available
30685         * lisp/gnus/nnimap.el (nnimap-request-move-article)
30686         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
30687         Use MOVE extension if available.
30689         nnimap.el: Explicitly ask for server capabilities
30690         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
30691         capabilities will be returned in the login-result.
30693 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
30695         Treat help strings like other doc strings
30696         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
30697         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
30698         substitute-command-keys.
30699         * src/keyboard.c (show_help_echo, parse_menu_item): Call
30700         substitute-command-keys on the help string before displaying it.
30702         Also mention "curly quotes"
30703         See Drew Adams's email in:
30704         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
30705         * doc/lispref/help.texi (Keys in Documentation):
30706         Add index entry "curly quotes".
30707         * etc/NEWS: Use the phrase "curly quotes" too.
30709         ede-proj-target-makefile docstring tweaks
30710         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
30711         Consistently use "all:" to describe the all: target,
30712         replacing three different and confusingly-quoted usages.
30714 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
30716         Don't abort emacsclientw when -a was specified
30717         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
30718         out if we are in emacsclientw and -a was specified.
30720 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
30722         Fix handling of 1st keystroke on MS-Windows
30723         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
30724         This is needed to correctly handle the session's first keystroke,
30725         if it has any modifiers.  (Bug#19994)
30727 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
30729         Substitute some customization etc. doc strings
30730         These changes apply substitute-command-keys to some
30731         doc strings that were going through untranslated
30732         when creating customization or other widgets.
30733         * lisp/cus-edit.el (custom-group-value-create):
30734         * lisp/wid-edit.el (widget-default-create):
30735         (widget-push-button-value-create):
30736         Treat the widget tag as a doc string.
30737         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
30738         Treat the :documentation value as a doc string.
30739         * lisp/wid-edit.el (widget-choose):
30740         Treat the choice names as doc strings.
30741         (widget-default-create): Treat the :doc value as a doc string.
30742         (widget-toggle-value-create): Treat the :on and :off values
30743         as doc strings.
30744         (widget-documentation-string-value-create):
30745         Substitute the doc string.
30747 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
30749         Add a second argument to project-ignores
30750         * lisp/progmodes/project.el (project-ignores): Add a second
30751         argument DIR.
30752         * lisp/progmodes/project.el (project-ignores): Only include the VC
30753         ignores if DIR is the VC root.
30754         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
30756 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
30758         Prevent incorrect display when 'line-spacing' variable is set
30759         * src/xdisp.c (try_window_id): Give up this optimization if the
30760         buffer has its 'line-spacing' variable set non-nil.
30762 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
30764         Don't pass NOVISIT to find-file
30765         * lisp/progmodes/etags.el (next-file):
30766         Don't pass NOVISIT to find-file (bug#21175).
30768         Ignore buffer restriction for tags-loop-eval
30769         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
30770         restriction (bug#21167).
30772 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
30774         Fix a thinko in 'ffap-gopher-at-point'
30775         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
30777         Honor 'line-spacing' for empty lines
30778         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
30779         property and 'line-spacing' frame parameter or variable or
30780         property for empty lines, by doing the same processing as in
30781         x_produce_glyph for newline characters.  (Bug#21165)
30783 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
30785         Simplify by assuming C99 integer division
30786         * src/floatfns.c (ceiling2, floor2, truncate2):
30787         Assume C99 (i.e., Fortran) semantics for integer division.
30788         This simplifies the code.
30790 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
30792         Don't overflow if computing approximate percentage
30793         * lisp/align.el (align-region):
30794         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
30795         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
30796         * lisp/cus-edit.el (custom-buffer-create-internal):
30797         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
30798         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
30799         (checkdoc-next-message-error):
30800         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
30801         * lisp/epa.el (epa-progress-callback-function):
30802         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
30803         * lisp/ffap.el (ffap-menu-rescan):
30804         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
30805         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
30806         * lisp/gnus/nneething.el (nneething-retrieve-headers):
30807         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
30808         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
30809         * lisp/gnus/nnml.el (nnml-retrieve-headers):
30810         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
30811         * lisp/gnus/nntp.el (nntp-retrieve-headers)
30812         (nntp-retrieve-articles):
30813         * lisp/imenu.el (imenu--relative-position):
30814         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
30815         (skkdic-convert-okuri-nasi):
30816         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
30817         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
30818         * lisp/org/org-list.el (org-update-checkbox-count):
30819         * lisp/org/org.el (org-table-map-tables)
30820         (org-update-parent-todo-statistics):
30821         * lisp/play/decipher.el (decipher-insert-frequency-counts)
30822         (decipher-analyze-buffer):
30823         * lisp/profiler.el (profiler-format-percent):
30824         * lisp/progmodes/cc-cmds.el (c-progress-update):
30825         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
30826         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
30827         (idlwave-list-load-path-shadows):
30828         * lisp/progmodes/opascal.el (opascal-step-progress):
30829         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
30830         (vhdl-scan-directory-contents):
30831         * lisp/textmodes/bibtex.el (bibtex-progress-message):
30832         * lisp/textmodes/flyspell.el (flyspell-small-region)
30833         (flyspell-external-point-words):
30834         * lisp/textmodes/table.el (table-recognize):
30835         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
30836         progress-report percentages and the like.  This avoids problems
30837         if (* 100 NUMERATOR) would overflow.
30838         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
30839         * lisp/gnus/registry.el (registry-reindex):
30840         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
30841         * lisp/descr-text.el (describe-char):
30842         * lisp/org/org-colview.el (org-nofm-to-completion):
30843         * lisp/ps-print.el (ps-plot):
30844         * lisp/simple.el (what-cursor-position):
30845         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
30846         more-complicated and less-accurate approximation.
30848         Fix some int overflows in profiler.c
30849         * src/profiler.c (make_log): Make args EMACS_INT, not int,
30850         to avoid unwanted behavior on 'int' overflow.
30851         (make_log, evict_lower_half, record_backtrace):
30852         Use ptrdiff_t, not int, for object indexes.
30854         Port to pedantic memcpy
30855         * src/keyboard.c (menu_bar_items, tool_bar_items):
30856         * src/xrdb.c (magic_db):
30857         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
30859         Merge from gnulib
30860         This incorporates:
30861         2015-07-29 time_rz: port to pedantic memcpy
30862         * lib/time_rz.c: Copy from gnulib.
30864 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
30866         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
30867         When updating the very last entry, tabulated-list-print would
30868         erase it and then try to look at the next one (which obviously
30869         isn't there).
30871 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
30873         Allow to use the old key processing code on MS-Windows
30874         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
30875         New variable.
30876         (w32_wnd_proc): Use it to invoke the old code that processed
30877         character keys, as fallback, when this variable is non-nil.
30878         Fix typos in comments.  (Bug#19994)
30880 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
30882         Improve handling of Unicode keyboard input on MS-Windows
30883         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
30884         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
30885         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
30886         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
30887         successful, don't call TranslateMessage.  (Bug#19994)
30889 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
30891         Fix default-directory in changeset diffs after vc-print-log
30892         * lisp/vc/log-view.el (log-view-diff-common): Move the
30893         revision-granularity check back into log-view-diff-changeset.
30894         (log-view-diff-changeset): Bind default-directory to the current
30895         VC root.
30897         Rename project-directories to project-roots
30898         * lisp/progmodes/project.el (project-search-path-function)
30899         (project-search-path): Update the docstring.
30900         (project-directories): Rename to `project-roots', update all
30901         callers and implementations accordingly.
30902         (project-root): Remove.
30903         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
30904         as the default file mask.
30906 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
30908         Support long URLs in w32-shell-execute
30909         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
30910         and filename_to_ansi to convert the DOCUMENT argument, as it could
30911         be a URL that is not limited to MAX_PATH characters.  Instead, use
30912         MultiByteToWideChar directly, and allocate heap storage as
30913         required to accommodate the converted string.  Likewise with
30914         non-Unicode operation.  Ensure OPERATION is null-terminated, even
30915         if it is longer than 32K bytes.  (Bug#21158)
30917 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
30919         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
30921 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
30923         Add docs for display-buffer action display-buffer-use-some-frame
30924         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
30925         * doc/lispref/windows.texi (Display Action Functions):
30926         Add display-buffer-use-some-frame.
30927         * etc/NEWS: Mention display-buffer-use-some-frame.
30929         Add display-buffer action display-buffer-use-some-frame
30930         * lisp/window.el (display-buffer-use-some-frame): New.
30932         Handle vc-mtn error more gently
30933         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
30934         branch is nil.
30936 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
30938         Fix Tramp problems with multihops, and nc
30939         * lisp/net/tramp-cache.el (tramp-get-file-property)
30940         (tramp-set-file-property, tramp-flush-file-property)
30941         (tramp-get-connection-property, tramp-set-connection-property)
30942         (tramp-flush-connection-property): Remove hop from vector.
30943         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
30944         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
30945         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
30946         netstat to 60".
30947         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
30948         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
30949         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
30950         Keep hop in result.
30951         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
30952         Add hop tests.
30954 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
30956         Resurrect highlighting of repeated words by Flyspell Mode
30957         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
30958         characters between point and the doublon candidate, so that
30959         flyspell-word-search-backward finds it.  (Bug#21157)
30961         Fix redisplay of large images on expose events
30962         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
30963         between signed negative values and unsigned values.  This
30964         prevented redisplay on expose events when the window showed a very
30965         large image.
30967 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
30969         Remove unnecessary stack overflow dependency
30970         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
30971         Don't worry about $ac_cv_header_sys_resource_h and
30972         $ac_cv_func_getrlimit, as they're no longer needed for this.
30973         Problem reported by Eli Zaretskii in:
30974         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
30976 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
30978         Pacify compilation -Wincompatible-pointer-types warnings
30979         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
30980         warning.
30981         (CompareStringW_Proc): New typedef.
30982         (w32_compare_strings): Use it, to pacify compiler warnings under
30983         "-Wincompatible-pointer-types".
30984         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
30985         (GetDiskFreeSpaceExA_Proc): New typedefs.
30986         (Ffile_system_info): Use them, to pacify compiler warnings under
30987         "-Wincompatible-pointer-types".
30989 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
30991         Fix subscript error in calculate_direct_scrolling
30992         Use slightly-longer cost vectors.  Without this change,
30993         calculate_direct_scrolling can have a subscript violation when
30994         FRAME_LINES (frame) <= delta.
30995         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
30996         (line_ins_del, do_line_insertion_deletion_costs):
30997         Allocate and use slightly-larger cost vectors, ones based on
30998         FRAME_TOTAL_LINES instead of FRAME_LINES.
31000         Fix uninitalized value in encode_coding_object
31001         * src/coding.c (encode_coding_object): Also initialize
31002         coding->src_pos and coding->src_pos_byte when NILP (src_object).
31003         This avoids later use of uninitialized storage.
31005 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
31007         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
31008         (Bug#21141)
31010 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
31012         Merge from gnulib
31013         This incorporates:
31014         2015-07-27 time_rz: port better to MinGW
31015         2015-07-27 time: port __need_time_t to MinGW
31016         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
31017         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
31018         * lib/time-internal.h: New file, from gnulib.
31020 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
31022         Handle NULL pointers in w32heap.c allocation routines
31023         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
31024         freeable".
31025         (realloc_after_dump, realloc_before_dump, free_before_dump):
31026         Handle NULL pointers gracefully, as Emacs now seems to expect that.
31028         Fix Cairo build without PNG
31029         * src/image.c: Define PNG function when USE_CAIRO is defined, even
31030         if HAVE_PNG is not.  (Bug#21133)
31032         MS-Windows follow-up for recent TZ-related changes
31033         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
31034         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
31035         picking up 'struct timespec' from pthread.h, if it is installed on
31036         the user's system.  We want either the definitions from MinGW
31037         system headers, if available, or the Gnulib replacements if not.
31038         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
31039         lib/time.h.
31040         * lib/time.in.h: Don't let __need_* symbols affect what happens on
31041         MinGW.  These symbols are defined by MinGW system headers, but we
31042         don't want that to affect whether Gnulib portions of the header
31043         are or aren't used.
31045 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
31047         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
31049         New optional ZONE arg for format-time-string etc.
31050         This simplifies time conversions in other time zones.
31051         It also prevents display-time-world tampering with TZ (Bug#21020).
31052         * admin/admin.el (add-release-logs):
31053         Use improved add-log-time-format API.
31054         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
31055         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
31056         * configure.ac (tzalloc): Remove test for this, since
31057         Emacs no longer uses HAVE_TZALLOC directly.
31058         * doc/lispref/os.texi (Time of Day, Time Conversion)
31059         (Time Parsing):
31060         * etc/NEWS: Document the new behavior.
31061         Merge from gnulib, incorporating:
31062         2015-07-25 strftime: fix newly-introduced bug on Solaris
31063         2015-07-23 fprintftime, strftime: use timezone_t args
31064         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
31065         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
31066         * m4/time_h.m4:
31067         Update from gnulib.
31068         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
31069         New files from gnulib.
31070         * lisp/time-stamp.el (time-stamp-string):
31071         * lisp/time.el (display-time-world-list)
31072         (display-time-world-display):
31073         Use new API, with time zone arg.
31074         * lisp/time.el (display-time-world-display):
31075         Fix race when current-time advances while we're running.
31076         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
31077         (add-log-iso8601-time-string): Accept optional time zone arg.
31078         * lisp/vc/add-log.el (add-change-log-entry):
31079         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
31080         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
31081         Add rules for the time module, since they're now needed
31082         for tzalloc etc.
31083         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
31084         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
31085         * src/editfns.c: Include errno.h.
31086         (set_time_zone_rule): Omit unnecessary forward decl.
31087         (initial_tz): Remove, replacing with ...
31088         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
31089         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
31090         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
31091         (tzlookup): New static functions.
31092         (init_editfns): New arg DUMPING.  All uses changed.
31093         (init_editfns): Omit most initialization if dumping, not if
31094         !initialized.  Initialize wall_clock_tz and local_tz.
31095         (emacs_nmemftime, format_time_string): Time zone argument can now
31096         be any time zone, not just a boolean for UTC or local time.  All
31097         callers changed.
31098         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
31099         (Fcurrent_time_zone): New optional arg ZONE.
31100         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
31101         the same form as with the other new additions.
31102         (decode_time_zone): Remove; no longer needed.
31103         (tzvalbuf): Now file-scope.
31104         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
31105         (syms_of_editfns): Define Qwall.
31106         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
31107         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
31108         [!HAVE_TZALLOC]:
31109         Remove; now supplied by gnulib.
31110         * src/emacs.c (main):
31111         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
31113 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
31115         Fix infinite loop in delete-consecutive-dups
31116         * lisp/subr.el (delete-consecutive-dups): Work even if the last
31117         element is nil (Bug#20588).  Avoid rescan of a circular list in
31118         deletion of last element.
31120 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
31122         Have `x-frame-geometry' return nil for terminal and initial
31123         frames (Bug#21132)
31124         * src/nsfns.m (Fx_frame_geometry):
31125         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
31126         terminal frames.
31127         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
31128         (Fx_frame_geometry): Return nil for terminal frames
31130 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
31132         * etc/tutorials/TUTORIAL.ja: Improve translation.
31134 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
31136         Avoid crashes when w32 GUI functions are called in -batch
31137         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
31138         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
31139         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
31141         Fix flyspell-check-previous-highlighted-word
31142         * lisp/textmodes/flyspell.el
31143         (flyspell-check-previous-highlighted-word): Really accept a
31144         numeric argument, as the doc string describes.  Fix an off-by-one
31145         error in looking up overlays, so invocation with point immediately
31146         after a word would check that word.  Clarify the doc string as
31147         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
31149 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
31151         Minor cleanup in tramp-tests.el
31152         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
31153         Implement using the documented interface
31154         `tramp-connection-properties', rather than with internal functions.
31156 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
31158         Pass lambdas to `skeleton-read'
31159         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
31160         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
31161         lambdas to `skeleton-read' (bug#20386).
31163 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
31165         * INSTALL (DETAILED BUILDING AND INSTALLATION):
31166         Mention --without-imagemagick.
31168         Don't require GUI frames and mouse for Flyspell menus
31169         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
31170         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
31171         support, since pop-up menus work with text terminals and can be
31172         controlled via the keyboard.
31174         Improve documentation of Flyspell commands
31175         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
31176         can be invoked via the keyboard.  Mention those commands by name
31177         and add them to the fn index.  (Bug#21125)
31179 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
31181         Fix some Tramp problems with HP-UX
31182         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
31183         Add "tab0" to stty call.
31184         * test/automated/tramp-tests.el (tramp-persistency-file-name):
31185         Set to nil.
31186         (tramp--test-hpux-p): New defun.
31187         (tramp--test-utf8): Use it.
31189 2015-07-22  Glenn Morris  <rgm@gnu.org>
31191         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
31193 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
31195         Fix point positioning in ffap-next-guess
31196         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
31197         as our callers expect.  This was clobbered as part of fixing
31198         bug#5673.  (Bug#21107)
31199         (ffap-gopher-at-point): Set ffap-string-at-point-region.
31201 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
31203         * lisp/window.el (even-window-sizes): Fix customization type.
31205         Optionally even widths of `display-buffer' windows.  (Bug#21100)
31206         * lisp/window.el (quit-restore-window): Restore width if
31207         requested.
31208         (display-buffer-record-window): Record width when window is
31209         reused and horizontally combined.
31210         (even-window-sizes): New option to allow evening window widths.
31211         (even-window-heights): Defalias to `even-window-sizes'.
31212         (window--even-window-heights): Rename to
31213         `window--even-window-sizes'.  Handle side-by-side windows.
31214         (display-buffer-use-some-window): Call `window--even-window-sizes'
31215         instead of `window--even-window-heights'.
31216         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
31217         * doc/lispref/windows.texi (Choosing Window Options): Describe
31218         `even-window-sizes'.
31219         (Coordinates and Windows): Fix typo.
31221 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
31223         Add file name to autoload error messages
31224         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
31225         Add condition-case to add file name to error message.
31227 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
31229         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
31230         Use 0.0.0.1 as test host.
31232 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
31234         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
31235         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
31236         Fix inf-loop (bug#21083).
31238 2015-07-21  Glenn Morris  <rgm@gnu.org>
31240         * test/automated/package-test.el (package-test-signed):
31241         Update for recent changes.
31243         * test/automated/elisp-mode-tests.el
31244         (elisp-xref-finds-both-function-and-variable)
31245         (elisp-xref-finds-only-function-for-minor-mode):
31246         Update for recent xref name changes.
31248 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
31250         Make eldoc timer non-repeatable
31251         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
31252         non-repeatable.  Since it's on post-command hook, that just wasted
31253         CPU cycles.
31255 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
31257         Mention `tramp-connection-properties' in NEWS
31259         Sync with Tramp repository
31260         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
31261         required prior changing its configuration.
31262         (Connection caching, Predefined connection information)
31263         (Remote shell setup): Fix typos.
31264         (Predefined connection information): Describe, how to overwrite
31265         parameters of `tramp-methods'.
31266         (Remote programs, Remote processes, Traces and Profiles):
31267         Simplify example.
31268         (Remote programs): Remove superfluous comment.
31269         * doc/misc/trampver.texi: Update release number.
31270         * lisp/net/tramp-cache.el (tramp-connection-properties):
31271         Adapt docstring.
31272         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
31273         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
31274         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
31275         "gvfs-mkdir -p ..." does not work robust.
31276         (tramp-gvfs-maybe-open-connection):
31277         Adapt `tramp-get-method-parameter' call.
31278         * lisp/net/tramp-sh.el (tramp-methods):
31279         Add `tramp-remote-shell-login' parameter where it fits.
31280         (tramp-get-remote-path): Use it.
31281         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
31282         (all): Adapt `tramp-get-method-parameter' calls.
31283         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
31284         (tramp-get-method-parameter): Replace argument METHOD by VEC.
31285         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
31286         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
31287         (all): Adapt `tramp-get-method-parameter' calls.
31288         * lisp/net/trampver.el: Update release number.
31289         * test/automated/tramp-tests.el (tramp--instrument-test-case):
31290         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
31291         (tramp-test13-make-directory, tramp--test-adb-p)
31292         (tramp--test-smb-or-windows-nt-p): Simplify.
31293         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
31294         (tramp--test-special-characters): Fix docstring.  Add gvfs and
31295         ftp tests.
31296         (tramp--test-utf8): Fix docstring.
31298 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
31300         Add new xref-query-replace command
31301         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
31302         New function, extracted from xref-pulse-momentarily.
31303         (xref-query-replace): New command.
31304         (xref--query-replace-1): New helper function.
31305         (xref--xref-buffer-mode-map): Add `r' binding.
31307 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
31309         Simplify icalendar decoding of Z dates
31310         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
31311         Simplify calculation of time strings with trailing "Z".
31313 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
31315         Do not corrupt grep-find-ignored-files
31316         * lisp/progmodes/project.el (project-ignores): Change the order of
31317         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
31319         Add xref-match-item, and use it
31320         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
31321         (xref-file-location): Add reader for the column slot.
31322         (xref-match-item): New class.
31323         (xref-match-bounds): A method implementation for it.
31324         (xref-make-match): New constructor function.
31325         (xref--current-item): New private variable.
31326         (xref-pulse-momentarily): Use it.
31327         (xref--pop-to-location): Change the first argument to an xref
31328         item, instead of location, bind xref--current-item.
31329         Update all callers.
31330         (xref-next-line, xref-prev-line, xref--next-error-function)
31331         (xref--mouse-2): Look for the property `xref-item',
31332         instead of `xref-location'.
31333         (xref--item-at-point): Likewise.  This function replaces
31334         `xref-location-at-point'.  Update all callers.
31335         (xref--insert-xrefs): Add the `xref-item' text property, instead
31336         of `xref-location'.
31337         (xref--collect-match): Use xref-make-match.
31339         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
31340         Update all references.
31342         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
31343         slot to `summary'.
31345         vc-hg: Perform the print-log call asynchronously
31346         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
31347         asynchronously (bug#21067).
31349         Add xref-after-jump-hook and xref-after-return-hook
31350         * lisp/progmodes/xref.el (xref-after-jump-hook)
31351         (xref-after-return-hook): New hooks.
31352         (xref-pulse-on-jump): Remove, in favor of the above.
31353         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
31354         (xref--pop-to-location, xref--display-position)
31355         (xref-pop-marker-stack): Use the new hooks, as requested in
31356         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
31358 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
31360         * lisp/progmodes/js.el (js-mode): Correct the lighter.
31362 2015-07-19  Leo Liu  <sdl.web@gmail.com>
31364         Fix a bug in cfengine3-mode
31365         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
31366         eldoc-documentation-function.
31368 2015-07-18  Julien Danjou  <julien@danjou.info>
31370         sieve-mode: support "body" test command
31371         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
31372         Add missing "body" test command.
31374 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
31376         Fix info-apropos when the default encoding is Latin-N
31377         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
31378         'undecided', so that it is set to the encoding of the Info file we
31379         are about to insert.  Otherwise, 'info-apropos' will fail to find
31380         some index nodes in some UTF-8 encoded files, if the buffer's
31381         previous encoding is Latin-N or some such.
31383 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
31385         * lisp/epg.el (epg--start): Check that gpgconf can be found
31386         before calling it.
31388         Expose more file types to OS X that Emacs understands
31389         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
31390         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
31392 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
31394         Fix visual-order cursor movement when lines are truncated
31395         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
31396         simulate display in a window of infinite width, to allow move_it_*
31397         functions reach positions outside of normal window dimensions.
31398         Remove code that tried to handle a subset of these situations by
31399         manual iteration of buffer text.  (Bug#17777)
31401         Fix following Info cross-references to anchors
31402         * lisp/info.el (Info-read-subfile): Add to the returned value the
31403         length of subfile preamble, after converting it to file's byte
31404         offset, as expected by the caller.  Use bufferpos-to-filepos.
31405         (Info-find-node-2): If searching for a node with a
31406         1000-character slop fails, try again with a 10000-character slop,
31407         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
31408         * lisp/international/mule-util.el (bufferpos-to-filepos): New
31409         function.
31410         * etc/NEWS: Mention bufferpos-to-filepos.
31412         Fix scrolling backwards on TTY frames under scroll-conservatively
31413         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
31414         in moving backwards on TTY frames.  (Bug#21080)
31416 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
31418         Consider a jsdoc tag to be a beginning of a paragraph as well
31419         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
31420         consider a jsdoc tag to be a beginning of a paragraph as well.
31422 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
31424         * lisp/emacs-lisp/package.el: Fix warnings.
31426         * lisp/emacs-lisp/package.el (package-buffer-info):
31427         Add author and maintainers to `package-buffer-info'.
31429         * lisp/emacs-lisp/package.el: Many small changes.
31430         Replace all instances of 'face with 'font-lock-face.
31431         (describe-package-1): Improve some strings and move the summary
31432         up the list.
31433         (package-install-file): Update docstring.
31434         (package-menu-hide-package): Bind to `H'.
31436         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
31437         Fix error handling.
31439 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
31441         Fix hang with large yanks This should fix the bug fixed by Mike
31442         Crowe's patch in:
31443         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
31444         A problem in this area has been reported by several users; see
31445         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
31446         This fix differs from Mike Crowe's patch in that it should avoid a
31447         race condition that could lose SIGIO signals.  ignore_sigio dates
31448         back to the 1980s when some platforms couldn't block signals, and
31449         could only ignore them, which led to races when signals arrived
31450         while being ignored.  We shouldn't have to worry about those old
31451         platforms now.
31452         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
31453         * src/emacs.c (shut_down_emacs):
31454         Don't call ignore_sigio; unrequest_sigio should suffice.
31455         * src/keyboard.c (kbd_buffer_store_buffered_event):
31456         Use unrequest_sigio, not ignore_sigio.
31457         (kbd_buffer_get_event):
31458         Call request_sigio when getting the ball rolling again.
31460 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
31462         * lisp/obsolete/longlines.el (longlines-search-function):
31463         Fallback on `isearch-search-fun-default'.
31465 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
31467         Support @-mentions
31468         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
31469         of mentions/messages with @nick instead of just nick.
31471 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
31473         Fix bug#20943
31474         * lisp/autorevert.el (auto-revert-handler): Do not check for
31475         `buffer-modified-p'.
31476         * lisp/files.el (buffer-stale--default-function): Check for
31477         `buffer-modified-p'.
31478         * test/automated/auto-revert-tests.el
31479         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
31481 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
31483         Fix delete-dups bug on long lists
31484         * lisp/subr.el (delete-dups):
31485         Don't mistakenly keep some dups when applied to long lists.
31487 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
31489         Better heuristic for C stack overflow
31490         Improve the heuristic for distinguishing stack overflows from
31491         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
31492         the getrlimit method wasn't portable to Cygwin; see:
31493         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
31494         Corinna suggested pthread_getattr_np but this also has problems.
31495         Instead, replace the low-level system stuff with a simple
31496         heuristic based on known good stack addresses.
31497         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
31498         * src/sysdep.c: Don't include <sys/resource.h>.
31499         (stack_direction): Remove.  All uses removed.
31500         (stack_overflow): New function.
31501         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
31502         Make SEGV fatal in non-main threads.
31504 2015-07-16  Daiki Ueno  <ueno@gnu.org>
31506         epg: Automatically start pinentry server
31507         * lisp/epg-config.el (epg-gpgconf-program): New variable.
31508         * lisp/epg.el (epg--start): Call `pinentry-start' if
31509         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
31511 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
31513         * lisp/gnus/nnimap.el: Fix my last bogus change.
31514         Reinstall Stefan Monnier's change that was made in
31515         <83d824bc4041332f338ad7e5e830f443535aa300>.
31517 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
31519         Merge from gnulib
31520         This incorporates:
31521         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
31522         2015-07-05 acl-permissions: Fix on FreeBSD
31523         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
31524         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
31525         * lib/set-permissions.c: Copy from gnulib.
31527         Port to stricter C99
31528         * src/keyboard.h (kbd_buffer_store_event_hold):
31529         Don't return a void expression.
31531 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
31533         * doc/emacs/frames.texi (Creating Frames):
31534         Fix the command `C-x 5 m' runs.
31536 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
31538         New autorevert tests
31539         * test/automated/auto-revert-tests.el: New file.
31541 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
31543         Clear gcprolist etc. after stack overflow
31544         After stack overflow, command_loop calls init_eval, and this needs to
31545         clear gcprolist and byte_stack_list (Bug#20996).
31546         * src/alloc.c (init_alloc):
31547         Move gcprolist and byte_stack_list initialization from here ...
31548         * src/eval.c (init_eval): ... to here.
31550 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
31552         * doc/emacs/windows.texi (Pop Up Window): Fix the description
31553         of `C-x 4 m'.
31555 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
31557         Avoid deprecated enums in mac-ct font backend driver
31558         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
31559         (mac_ctfont_get_advance_width_for_glyph)
31560         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
31562         Cache font family in mac-ct font backend driver
31563         * src/macfont.m (macfont_family_cache): New variable.
31564         (syms_of_macfont): Initialize it.
31565         (macfont_available_families_cache): New variable.
31566         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
31567         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
31568         (macfont_handle_font_change_notification)
31569         (macfont_init_font_change_handler)
31570         (macfont_copy_available_families_cache): New functions.
31571         (macfont_create_family_with_symbol): Use font family caches.
31572         (macfont_list, macfont_list_family):
31573         Use macfont_copy_available_families_cache instead of
31574         mac_font_create_available_families.
31576 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
31578         Show the default value in the prompt
31579         * lisp/progmodes/xref.el: Add `M-?' binding for
31580         xref-find-references.  Declare functions `grep-read-files' and
31581         `grep-expand-template'.
31582         (xref--read-identifier): Show the default value in the prompt.
31584         * lisp/progmodes/xref.el (xref-find-regexp): When called with
31585         prefix argument, ask for file patterns to search as well.  When
31586         prompting for the directory, require an existing one.
31587         (xref-collect-matches): Add a new argument, FILES.  Use it in the
31588         above function.
31590         Add `project-ignores'
31591         * lisp/progmodes/project.el (project-ignores): New generic
31592         function, and an implementation for the VC project type.
31593         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
31594         variant of rgrep-default-command that handles a generic list of
31595         ignores.
31596         (xref-collect-matches): Use it, and pass through to it the value
31597         of the newly added argument.
31598         (xref-find-regexp): Handle ignored paths within the project.
31599         Remove outdated comment.
31600         * lisp/vc/vc.el (vc-default-ignore-completion-table):
31601         Skip the comments and the empty lines.
31603 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
31605         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
31607 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
31609         gnus-registry.el: Correct function argument order
31610         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
31611         Reverse the order of function arguments.
31613 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
31615         Bind grep-highlight-matches to nil
31616         * lisp/progmodes/xref.el (xref-collect-matches):
31617         Bind grep-highlight-matches to nil (bug#20728).
31619 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
31621         nnimap.el: Fix IMAP message size parsing
31622         * lisp/gnus/nnimap.el (nnimap-transform-headers):
31623         Don't assume that UID comes before RFC822.SIZE.
31625 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
31627         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
31628         (auth-source-creation-prompts): Declare.
31629         (nnimap-retrieve-headers, nnimap-status-message)
31630         (nnimap-request-create-group, nnimap-request-delete-group)
31631         (nnimap-close-group, nnimap-request-move-article)
31632         (nnimap-request-accept-article, nnimap-request-newgroups)
31633         (nnimap-request-post, nnimap-dummy-active-number)
31634         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
31635         (nnimap-parse-flags): Remove unused var `p'.
31636         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
31637         (nnimap-flags-to-marks): Remove unused var `totalp'.
31639 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
31641         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
31643 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
31645         * src/macfont.m (macfont_list): Ignore font families lacking
31646         font descriptors.
31648 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
31650         Don't check the exit status, it can be misleading
31651         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
31652         exit status, it can be misleading.
31654         Introduce a Project API
31655         * lisp/progmodes/project.el: New file.
31656         * lisp/cedet/ede.el (project-try-ede): New function.
31657         (project-root): New implementation.
31658         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
31659         Set project-search-path-function.
31660         (elisp--xref-find-references): Delegate some logic to
31661         project-search-path.
31662         (elisp-search-path): New function.
31663         (elisp-xref-find): Don't implement `matches' anymore.
31664         * lisp/progmodes/etags.el: Don't implement `matches'.
31665         Delegate some logic to project-search-path.
31666         (etags-search-path): New function.
31667         * lisp/progmodes/xref.el (xref-find-function):
31668         Remove `matches' from the API.
31669         (xref-find-regexp): Move whatever common logic was in elisp and
31670         etags implementations, and search the directories returned by
31671         project-directories and project-search-path.
31673 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
31675         * test/automated/map-tests.el (test-map-delete-return-value):
31676         Uncomment test.
31678         Add support for gv.el in map.el
31679         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
31680         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
31681         * test/automated/map-tests.el: Update tests to work with the new
31682         implementations of map-elt and map-put.
31684 2015-07-09  Glenn Morris  <rgm@gnu.org>
31686         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
31688 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
31690         Syntax-propertize until the end of the line first
31691         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
31692         until the end of the line first.
31694 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
31696         * doc/emacs/files.texi (File Archives): Add a cross reference.
31698 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
31700         nnimap.el: Handle plain value for nnimap-stream
31701         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
31702         capabilities, so that a 'plain value for the `nnimap-stream' server
31703         variable is handled correctly.
31704         * doc/misc/gnus.texi (Customizing the IMAP Connection):
31705         Document the 'plain option.
31707 2015-07-08  Leo Liu  <sdl.web@gmail.com>
31709         Fix bug in thing-at-point--bounds-of-well-formed-url
31710         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
31711         sure boundary contains current point.
31713 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
31715         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
31716         in the end.
31718         Declare whitespace-line-column a safe file-local
31719         * lisp/whitespace.el (whitespace-line-column): Declare to be a
31720         safe file-local when the value is an integer.
31722 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
31724         gnus-group.el: Check if group names are already strings
31725         * lisp/gnus/gnus-group.el (gnus-group-group-name):
31726         The group name may already be a string.
31727         Specifically, in the group list reached from the *Server* buffer,
31728         the 'gnus-group text property returns a string.  Everywhere else
31729         it returns a symbol.
31731         nnimap.el: Remove unused let variables
31732         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
31734 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
31736         Support "maximized" property of runemacs's shortcut
31737         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
31738         the '--maximized' switch to Emacs.
31740         Support "minimized" property of runemacs's shortcut
31741         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
31742         pass the '--iconic' switch to Emacs.  (Bug#20991)
31744 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
31746         Doc fixes
31747         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
31748         C-w' in Diff mode.
31749         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
31750         Add a cross reference.
31752 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
31754         * lisp/obsolete/landmark.el: Add Obsolete-since header.
31756 2015-07-07  Glenn Morris  <rgm@gnu.org>
31758         * test/automated/ert-tests.el (ert-test-deftest):
31759         Update for recent changes.
31761 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
31763         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
31764         * lisp/emacs-lisp/gv.el (gv-setter): New function.
31765         (gv-invalid-place): New error.
31766         (gv-get): Use them.
31767         (gv-synthetic-place, gv-delay-error): New places.
31768         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
31769         (cl-defgeneric, cl-defmethod): Use gv-setter.
31771 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
31773         Make vc-tests work with MSYS svn program
31774         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
31775         svn is an MSYS program.
31777 2015-07-07  Ken Brown  <kbrown@cornell.edu>
31779         Improve recent change to emacsclient on Cygwin
31780         * lisp/server.el (server-process-filter): Remove redundant check
31781         that 'cygwin-convert-file-name-from-windows' is defined as a
31782         function on Cygwin.  Don't call that function unless its argument
31783         starts with a drive letter.
31785 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
31787         * lisp/emacs-lisp/package.el (package-compute-transaction):
31788         Fix void variable due to `found-something' being in the wrong `let'.
31790 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
31792         * lisp/play/landmark.el: Move to lisp/obsolete/.
31794 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
31796         Have `x-show-tip' handle `right' and `bottom' frame parameters
31797         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
31798         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
31799         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
31800         tooltips also via `right' and `bottom' frame parameters.
31802 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
31804         Add online-help support to describe types
31805         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
31806         (describe-symbol): Improve the selection of default.
31807         * lisp/help-mode.el: Require cl-lib.
31808         (describe-symbol-backends): Move from help-fns.el.
31809         (help-make-xrefs): Use it.
31810         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
31811         for types.
31812         (cl--typedef-regexp): New const.
31813         (find-function-regexp-alist): Add entry for types.
31814         (cl-help-type, cl-type-definition): New buttons.
31815         (cl-find-class): New function.
31816         (cl-describe-type): New command.
31817         (cl--describe-class, cl--describe-class-slot)
31818         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
31819         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
31820         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
31821         New functions.  Moved from eieio-opt.el.
31822         (cl--generic-class-parents): New function, extracted from
31823         cl--generic-struct-specializers.
31824         (cl--generic-struct-specializers): Use it.
31825         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
31826         Improve constructor's docstrings.
31827         (cl-struct-unknown-slot): New error.
31828         (cl-struct-slot-offset): Use it.
31829         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
31830         definition in current-load-list.
31831         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
31832         (eieio--add-new-slot): Set it.
31833         (eieio-defclass-internal): Use new name for current-load-list.
31834         (eieio-oref): Add compiler-macro to warn about unknown slots.
31835         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
31836         as compile-time as well.  Improve constructor docstrings.
31837         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
31838         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
31839         (eieio-class-def): Remove button.
31840         (eieio-help-constructor): Use new name for load-history element.
31841         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
31842         (eieio-method-documentation): Move to cl-generic.el.
31843         (eieio-display-method-list): Use new names.
31844         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
31845         Add "define-linline".
31846         (lisp-fdefs): Remove "defsubst".
31847         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
31848         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
31849         (macroexp--warn-and-return): Use it to avoid inf-loops.
31850         Add `compile-only' argument.
31852 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
31854         python.el: Fix local/remote shell environment setup
31855         * lisp/progmodes/python.el (python-shell-with-environment):
31856         Fix remote/local environment setup.
31857         * test/automated/python-tests.el (python-shell-with-environment-1)
31858         (python-shell-with-environment-2): New tests.
31860 2015-07-06  Glenn Morris  <rgm@gnu.org>
31862         * lisp/simple.el (set-variable): Tweak recent doc fix.
31864 2015-07-06  Ken Brown  <kbrown@cornell.edu>
31866         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
31868 2015-07-06  Glenn Morris  <rgm@gnu.org>
31870         * lisp/simple.el (set-variable): Use user-error for type mismatch.
31872 2015-07-06  Ken Brown  <kbrown@cornell.edu>
31874         * src/emacs.c (main): Don't increase the stack size on Cygwin.
31876 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
31878         (describe-symbol): Rewrite describe-function-or-variable
31879         * lisp/help-fns.el (describe-symbol-backends): New var.
31880         (help-xref-stack-item): Declare.
31881         (describe-symbol): Rename from describe-function-or-variable.
31882         Rewrite using describe-symbol-backends instead of help-xref-interned.
31883         * lisp/help.el (help-map): Use it.
31884         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
31885         (help-xref-interned): Make it into an obsolete alias.
31887         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
31888         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
31889         and cl-letf.
31891 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
31893         Fix parsing glitches in dired-mark-sexp (bug#13575)
31894         * lisp/dired-x.el (dired-x--string-to-number): New function.
31895         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
31896         of directory-listing-before-filename-regexp.  Consider
31897         forward-word harmful and replace it.  Add more verbiage in
31898         comments and doc string.
31900 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
31902         python.el: Respect process environment for remote shells
31903         * lisp/progmodes/python.el
31904         (python-shell-calculate-process-environment): Calculate
31905         process-environment or tramp-remote-process-environment depending
31906         whether current file is remote.
31907         (python-shell-calculate-exec-path): Calculate exec-path or
31908         tramp-remote-path depending whether current file is remote.
31909         (python-shell-with-environment): New macro.
31910         (python-shell-prompt-detect, python-shell-calculate-command)
31911         (python-shell-make-comint, python-check): Use it.
31913         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
31914         * lisp/progmodes/python.el (python-shell--interpreter)
31915         (python-shell--interpreter-args): New vars.
31916         (inferior-python-mode, python-shell-make-comint): Use them.
31918         python.el: Fixes for IPython 3.x  (Bug#20580)
31919         * lisp/progmodes/python.el:
31920         (python-shell-completion-native-setup): Fix IPython 3.x setup.
31921         (python-shell-completion-native-get-completions): Fix timeout
31922         logic.
31924         python.el: Fix mark-defun behavior  (Bug#19665)
31925         * lisp/progmodes/python.el (python-mark-defun): New function.
31926         * test/automated/python-tests.el (python-mark-defun-1)
31927         (python-mark-defun-2, python-mark-defun-3): New tests.
31929 2015-07-05  Glenn Morris  <rgm@gnu.org>
31931         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
31932         such as "extends(parent), private".  (Bug#20969)
31933         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
31934         New tests.
31936 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
31938         Avoid duplicate calls to current_timespec
31939         * src/process.c (wait_reading_process_output):
31940         Cache current_timespec results as long as we're not waiting.
31942 2015-07-05  Ian Kelling  <ian@iankelling.org>
31944         Avoid returning early reading process output due to SIGIO
31945         * src/process.c (wait_reading_process_output): Extend the behavior of
31946         not breaking due to not finding output when a timer has lowered the
31947         timeout to include when SIGIO lowers the timeout.
31949         Don't return as fast reading any process output
31950         * src/process.c (wait_reading_process_output):
31951         The patch for Bug#17647 returns too fast sometimes when reading
31952         from any processes.  Revert part of it, and limit the timeout more
31953         sensibly (Bug#20978).
31955         Refactor timeouts in wait_reading_process_output
31956         * src/process.c (wait_reading_process_output):
31957         Simplify timeouts with an enum.  Remove a redundant condition.
31958         (Bug#20978)
31960         Remove ADAPTIVE_READ_BUFFERING ifdef
31961         * src/process.c (make-process, make-pipe-process, deactivate_process)
31962         (wait_reading_process_output, read_process_output, send_process)
31963         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
31964         added in case there was an operating system in which it was not
31965         useful.  That was 11 years ago and it hasn't happened.  Make
31966         development easier by not considering the effect of changes on a
31967         theoretical OS where this is disabled (Bug#20978).
31969 2015-07-05  Glenn Morris  <rgm@gnu.org>
31971         * lisp/simple.el (set-variable): Doc fix.
31973         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
31975 2015-07-05  Ian Kelling  <ian@iankelling.org>
31977         accept-process-output fix
31978         This is a followon to the fix for bug#17647 (Bug#20976).
31979         * src/process.c (status_notify): Fix too high return in some cases.
31981 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
31983         * lisp/character-fold.el (character-fold-table):
31984         Only fold decompositions if at least one character is non-spacing.
31985         (Bug#20975)
31987 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
31989         Merge from gnulib
31990         This incorporates:
31991         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
31992         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
31993         2015-07-02 update-copyright: fix test failure with perl >= 5.22
31994         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
31995         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
31996         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
31997         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
31999 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
32001         Respect `prog-indentation-context' in python.el
32002         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
32003         (python-indent-context, python-indent--calculate-indentation)
32004         (python-info-current-defun)
32005         (python-info-dedenter-opening-block-message)
32006         (python-info-line-ends-backslash-p)
32007         (python-info-beginning-of-backslash)
32008         (python-info-continuation-line-p): Use `prog-widen'.
32009         (python-indent--calculate-indentation)
32010         (python-indent--calculate-levels)
32011         (python-indent-calculate-indentation): Use `prog-first-column'.
32012         (python-indent--calculate-levels): Simplify.
32013         Ignore also initial empty lines for syntax calculation.
32014         * lisp/progmodes/python.el (python-indent-context): Return
32015         :no-indent for first non-empty line, not just in line 1.
32016         * test/automated/python-tests.el (python-indent-base-case)
32017         (python-indent-inside-paren-1, python-indent-inside-paren-2)
32018         (python-indent-inside-paren-3, python-indent-inside-paren-4)
32019         (python-indent-inside-paren-5, python-indent-inside-paren-6)
32020         (python-indent-after-backslash-1)
32021         (python-indent-after-backslash-2)
32022         (python-indent-after-backslash-3)
32023         (python-indent-after-backslash-4, python-indent-inside-string-1):
32024         Expect :no-indent for first non-empty line.
32026 2015-07-04  Daniel Colascione  <dancol@dancol.org>
32028         Factor isearch word description into new function
32029         * lisp/isearch.el (isearch--describe-word-mode): New function.
32030         (isearch-message-prefix, isearch-query-replace): Use it.
32032 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
32034         Fix mouse pointer on w32 when a menu is active
32035         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
32036         shape while a menu is in use.  This started happening since we now
32037         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
32039 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
32041         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
32042         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
32043         parameter.  (Bug#17344)
32045         Have `compilation-set-window' use right window for getting fringes
32046         (Bug#20829)
32047         * lisp/progmodes/compile.el (compilation-set-window):
32048         Take `window-fringes' from argument window.
32050 2015-07-03  Glenn Morris  <rgm@gnu.org>
32052         Update eieio tests for recent eieio-core change.
32053         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
32054         * test/automated/eieio-tests.el
32055         (eieio-test-32-slot-attribute-override-2):
32056         Replace the deleted eieio--class-v with cl--find-class.
32058 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
32060         Fix some issues with `window-divider-mode'
32061         * lisp/frame.el (window-divider-default-places): New option.
32062         (window-divider-mode): Remove option.
32063         (window-divider-mode): Make it a "regular" minor mode.
32064         (window-divider-width-valid-p): Drop frame- prefix.
32065         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
32066         prefix.  Handle `window-divider-default-places'.
32067         (frame--window-divider-mode-set-and-apply): Remove.
32068         (window-divider-default-bottom-width)
32069         (window-divider-default-right-width): Drop :group entries.
32070         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
32071         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
32072         (menu-bar-no-window-divider): Set `window-divider-default-places'
32073         and call `window-divider-mode'.
32074         * doc/emacs/frames.texi (Window Dividers): Document
32075         `window-divider-default-places'.
32077 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
32079         * doc/emacs/display.texi (Displaying Boundaries):
32080         * doc/emacs/search.texi (Word Search): Add cross references.
32082 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
32084         -batch should not affect ‘’ -> `' display
32085         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
32086         -batch (Bug#20926).
32088 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
32090         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
32091         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
32092         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
32093         Use cl--find-class instead.
32095         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
32097 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
32099         Some further fixes in Change Window node (Bug#20183)
32100         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
32101         by "resizing" in section title.  Add some concept indices.
32102         Suggested by N. Jackson (Bug#20183).
32104         * doc/emacs/windows.texi (Change Window): Reference window
32105         dividers.
32107         Document new `window-divider-mode'.
32108         * lisp/frame.el (window-divider-mode): Fix doc-string.
32109         * doc/emacs/frames.texi (Window Dividers): New section.
32111         Improve accessibility of window dividers (Bug#20183)
32112         * lisp/faces.el (window-divider)
32113         (window-divider-first-pixel, window-divider-last-pixel): Change
32114         membership from `frames' to `window-divider' customization group.
32115         * lisp/frame.el (window-divider): New customization group.
32116         (window-divider-mode): New minor mode.
32117         (window-divider-default-bottom-width)
32118         (window-divider-default-right-width): New options.
32119         (frame--window-divider-previous-mode): New variable.
32120         (frame-window-divider-width-valid-p)
32121         (frame--window-divider-mode-apply)
32122         (frame--window-divider-mode-set-and-apply): New functions.
32123         * lisp/menu-bar.el (menu-bar-options-save): Save
32124         window-divider-mode settings.
32125         (menu-bar-window-divider-customize)
32126         (menu-bar-bottom-and-right-window-divider)
32127         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
32128         (menu-bar-no-window-divider): New functions.
32129         (menu-bar-showhide-window-divider-menu): New variable.
32130         (menu-bar-showhide-menu): Show/hide window divider menu.
32131         * lisp/mouse.el (mouse-split-window-vertically)
32132         (mouse-split-window-horizontally): Replace `error' by
32133         `user-error'.  Bind `window-combination-resize' to nil.
32134         (top-level): Add/reorder mouse key bindings on mode- and
32135         vertical-line.
32137 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
32139         Don't display ‘’ as `' under X in en_GB
32140         The curved quote setup code invokes (char-displayable-p ?‘),
32141         but this isn’t reliable until after the X frame replaces the
32142         terminal frame (Bug#20926).
32143         * lisp/international/mule-cmds.el (set-locale-environment):
32144         Move curved quote setup code from here ...
32145         * lisp/startup.el (command-line): ... to here, after creating
32146         the X frame.
32148 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
32150         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
32152         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
32153         to reverse the meaning (Bug#15631).
32155 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
32157         Be more tolerant to fonts named "Foobar-12"
32158         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
32159         don't barf; instead, request a new fontset to be generated.  This
32160         avoids unnecessarily rejecting fonts named against XLFD rules.  See
32161         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
32162         for the description of the original problem.
32163         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
32164         by a hyphen in a font's name.
32166         Fix value of posn-at-pont in R2L lines
32167         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
32168         coordinate of -1, for a newline in a right-to-left line that
32169         overflowed into the left fringe.
32171 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
32173         (cl--copy-slot-descriptor): Copy the `props' alist as well
32174         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
32175         Rename from cl--copy-slot-descriptor.
32176         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
32178 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
32180         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
32181         (xterm-query-timeout): New var.
32182         (xterm--query): Use it.  Fallback on async method if we timeout before
32183         getting the first byte of the reply (bug#12354).
32185 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
32187         Spelling fixes
32188         * lisp/character-fold.el (character-fold-search):
32189         * lisp/emacs-lisp/package.el (package-hidden-regexps):
32190         Fix typos.
32192 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
32194         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
32196 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
32198         In strings, prefer plain ` and ' to \` and \'
32199         * lisp/allout.el (allout-insert-listified):
32200         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
32201         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
32202         (ls-lisp-string-lessp):
32203         * lisp/menu-bar.el (menu-bar-open):
32204         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
32205         * lisp/progmodes/compile.el (compile):
32206         * lisp/progmodes/etags.el (tags-loop-scan):
32207         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
32208         * lisp/subr.el (posn-actual-col-row):
32209         * lisp/term/pc-win.el (x-list-fonts):
32210         * lisp/textmodes/texinfmt.el (texinfmt-version):
32211         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
32212         * lisp/time.el (display-time-world-list):
32213         * lisp/tmm.el (tmm-menubar):
32214         * src/buffer.c (syms_of_buffer):
32215         * src/fileio.c (syms_of_fileio):
32216         Omit unnecessary and confusing backslash before quote.
32217         * lisp/erc/erc.el (erc-cmd-LASTLOG):
32218         * lisp/progmodes/flymake.el (flymake-fix-file-name):
32219         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
32220         Fix string that was intended to escape a backslash and not a quote.
32222 2015-06-30  Glenn Morris  <rgm@gnu.org>
32224         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
32226         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
32227         Replace hard-coded lists with wildcard + filter-out.
32229         * configure.ac (system-configuration-features): Add X11, NS.
32231         Improve reproducibility of generated loaddefs file
32232         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
32233         Make the return value the modtime of the input file (if no autoloads).
32234         (update-directory-autoloads): In the "no autoloads" section,
32235         use "most recent modtime" rather than "current time".
32237 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
32239         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
32240         (Bug#20930)
32242 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
32244         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
32246         Add seq-min and seq-max
32247         Bump version number.
32248         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
32249         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
32251 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
32253         Make sure sleep-for always delays for as long as it's told
32254         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
32255         a loop, to ensure we always wait exactly the required amount of
32256         time.  (Bug#15990)
32258 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
32260         Fix pointer signedness glitch
32261         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
32263 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
32265         Don't block changes in mouse pointer inside 'track-mouse'
32266         * etc/NEWS:
32267         * doc/lispref/frames.texi (Mouse Tracking): Document the special
32268         effect of setting 'track-mouse' to 'dragging'.
32269         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
32270         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
32271         * lisp/mouse-drag.el (mouse-drag-throw):
32272         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
32273         to avoid changes in the shape of the mouse pointer.
32274         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
32275         pointer shape when do_mouse_tracking has the value of 'dragging',
32276         not just any non-nil value.  (Bug#20934)
32277         (syms_of_xdisp): DEFSYM 'dragging'.
32279 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
32281         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
32283         * lisp/emacs-lisp/package.el (package-compute-transaction):
32284         Don't assume version sorting.
32286         * lisp/emacs-lisp/package.el (package--save-selected-packages):
32287         Don't save before init time, to avoid overwriting configurations.
32288         (Bug#20855)
32290 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
32292         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
32293         references.
32295 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
32297         Update for the upcoming CFEngine 3.7 release: support macros and
32298         quoted context strings; reformat JSON; indent promise attributes 2
32299         units by default; give function parameter descriptions in the eldoc
32300         glue.
32301         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
32302         Autoload `json-pretty-print'.  Support new features in 3.7.
32303         (cfengine-parameters-indent): Set default promise attribute indent to
32304         2 more than the promise itself.
32305         (cfengine3-macro-regex): New variable to match the new macro syntax.
32306         (cfengine3-font-lock-keywords): Use it to highlight macros.
32307         (cfengine3-indent-line): Use it to indent macros to column 0.
32308         (cfengine3-class-selector-regex): Update for the new quoted strings
32309         format.
32310         (cfengine3-reformat-json-string): New function to reformat a JSON
32311         string using `json-pretty-print'.
32312         (cfengine3-format-function-docstring): Use function parameter
32313         description if it's provided by the cf-promises syntax dump.
32315 2015-06-29  Michael R. Mauger  <michael@mauger.com>
32317         Cygwin emacsclient handles w32 file names
32318         * lisp/server.el (server-process-filter): Allow Cygwin's
32319         emacsclient to be used as a file handler on MS-Windows.
32321 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
32323         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
32324         (bug#20925).
32326 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
32328         * doc/lispref/text.texi (Sticky Properties): Improve wording.
32329         (Bug#20924)
32331         Allow font names that end in "-NN", where NN is a number
32332         * src/font.c (font_load_for_lface): If the font-spec didn't match
32333         any available fonts, try again without interpreting trailing "-NN"
32334         as the font size.  For the description of the original problem, see
32335         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
32337         .gdbinit followup to changes in !USE_LSB_TAG
32338         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
32339         !USE_LSB_TAG, as Emacs no longer does.
32341 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
32343         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
32344         Otherwise `s p' of f and F will stomp on each other's value.
32345         (Bug#20916)
32347 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
32349         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
32350         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
32352 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
32354         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
32355         as additional guess.
32357         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
32358         to a string.
32360 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
32362         apropos-library quoting fix
32363         * lisp/apropos.el (apropos-library): Quote library consistently
32364         with the rest of the quoting used by apropos.
32366         Clarify interpreter-mode-alist doc
32367         * lisp/files.el (interpreter-mode-alist):
32368         Reword to avoid confusing quoting that wasn't working anyway.
32370 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
32372         Sync with Tramp 2.2.12
32373         * doc/misc/trampver.texi:
32374         * lisp/net/trampver.el: Update release number.
32375         * test/automated/tramp-tests.el (tramp-test13-make-directory):
32376         Fix cleanup.
32378 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
32380         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
32382 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
32384         Bind grep-highlight-matches around the rgrep call
32385         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
32386         around the rgrep call (bug#20728).
32388         Put "--color" before the other options in grep-command
32389         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
32390         before the other options in grep-command (bug#20912).
32392         Add --color Grep option to the command dynamically
32393         * lisp/progmodes/grep.el (grep-template, grep-find-template):
32394         Update the description for <C>.  (Bug#20728)
32395         (grep-compute-defaults): Don't add the --color option to
32396         grep-options.  Only add it to grep-command.
32397         (grep-expand-keywords): Expand the env value opts into <C>.
32398         (grep-expand-template): Replace cf in the env with the opts list,
32399         that can include -i and --color.
32400         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
32401         "--color=always" from the template, because we don't have to.
32403 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
32405         cl-extra fixes for most-negative-fixnum
32406         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
32407         Don't mishandle an argument equal to most-negative-fixnum,
32408         whose absolute value equals itself.
32409         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
32411         Initialize cl--gensym-counter to 0
32412         Previously it was initialized to a random value, which made it
32413         harder to reproduce earlier Emacs runs.  The need for a random
32414         value went away when Emacs introduced and used the #: syntax for
32415         uninterned symbols (Bug#20862).
32416         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
32417         Document that cl--gensym-counter now starts with 0.
32418         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
32419         (cl--random-time): Move to near only remaining use.
32420         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
32422         Improve docstring for macroexp-let2
32423         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
32424         Improve as per suggestion by RMS in:
32425         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
32426         Also, rename args to match new doc string.
32428 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
32430         Fix VC test suite on MS-Windows
32431         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
32432         always starts with 3 slashes after the colon.
32433         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
32434         'w32-application-type' to invoke CVS on MS-Windows with properly
32435         formatted CVSROOT directory name.
32437         Add a new function w32-application-type
32438         * src/w32proc.c (Fw32_application_type): New function.
32440         Avoid error in TLS connections due to incorrect format
32441         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
32442         the call to 'error', instead of the unsupported %u.  Reported by
32443         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
32445 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
32447         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
32449 2015-06-26  Leo Liu  <sdl.web@gmail.com>
32451         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
32452         `with-output-to-string' in elisp.
32454         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
32455         with-output-to-string".
32456         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
32458 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
32460         Minor corrections in ELisp manual
32461         * doc/lispref/nonascii.texi (Character Properties): Correct
32462         inaccuracies in description of values of the Unicode properties.
32464         Fix invisible mouse pointers on Windows.
32465         * src/w32fns.c: Include windowsx.h.
32466         (w32_wnd_proc): If the mouse moved and the mouse pointer is
32467         invisible, make it visible again even when the main (Lisp)
32468         thread is busy.
32469         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
32470         garbaging the frame have the input thread call SetCursor.
32472 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
32474         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
32475         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
32476         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
32477         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
32478         (w32_toggle_invisible_pointer): New function.
32479         (w32_create_terminal): Add w32_toggle_invisible_pointer as
32480         toggle_invisible_pointer_hook for this terminal.
32482 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
32484         Doc fix for deletion commands
32485         'delete-char' does not respect the value of 'delete-active-region'.
32486         * doc/emacs/killing.texi (Deletion):
32487         Fix documentation for some single-char deletion commands.
32489         * doc/emacs/help.texi (Apropos):
32490         Improve documentation of 'apropos-do-all'.
32492         * doc/emacs/help.texi (Help Summary):
32493         Improve documentation of 'describe-mode'.
32495 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
32497         Fix submake dependency bug with .h files
32498         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
32499         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
32500         before the submake in $(libsrc) would spin off a subsubmake
32501         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
32503 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
32505         * lisp/character-fold.el (character-fold-table): Reuse `table'.
32507 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
32509         Translate undisplayable ‘ to `
32510         * doc/lispref/help.texi (Keys in Documentation):
32511         * lisp/international/mule-cmds.el (set-locale-environment):
32512         * lisp/term/w32console.el (terminal-init-w32console):
32513         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
32514         If ‘ is not displayable, transliterate it to `, not to '.  See:
32515         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
32517         Fix C99 incompatibilities in Cairo code
32518         * src/image.c (xpm_load) [USE_CAIRO]:
32519         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
32520         Fix pointer signedness problem.
32522 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
32524         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
32525         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
32526         `with-output-to-string' should have the same indent as `progn'.
32527         This is in line with the declaration of `with-output-to-string'.
32529 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
32531         Get ‘./configure; make -C src emacs’ to work
32532         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
32533         * lib-src/Makefile.in (../lib/libgnu.a):
32534         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
32536 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
32538         Fix GC bugs --with-wide-int and Qnil == 0
32539         Use the same alignment for the !USE_LSB_TAG case as for the
32540         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
32541         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
32542         once we changed the representation of symbols so that Qnil == 0.
32543         Problem reported by Eli Zaretskii (Bug#20862).
32544         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
32545         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
32546         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
32547         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
32548         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
32549         This optimization in the !USE_LSB_TAG case is no longer valid when
32550         symbols are represented via offsets.  Change the only use to
32551         assume that pointers might hide in objects.
32552         * src/lisp.h (alignas) [!USE_LSB_TAG]:
32553         Require support in this case, too.
32554         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
32555         This is OK, because the !USE_LSB_TAG case now applies only when
32556         Lisp_Object is wider than void *, so there's no longer any need
32557         to shift the offset.  Not shifting the offset means that
32558         symbol representations have the same alignment as pointers,
32559         which the GC assumes.
32561 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
32563         * doc/lispintro/emacs-lisp-intro.texi (Data types):
32564         Improve documentation of 'substring'.
32566 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
32568         * lisp/character-fold.el (character-fold-table): Fix table generation.
32570 2015-06-24  Glenn Morris  <rgm@gnu.org>
32572         * nextstep/Makefile.in (all): Make it the first target.
32573         (../src/emacs${EXEEXT}): Add rule for making it.
32575 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
32577         * etc/NEWS: Fix mention to old function name.
32579         * lisp/character-fold.el: New file (Bug#20887)
32580         (character-fold-to-regexp): New function.
32581         * lisp/replace.el (replace-search): Check value of
32582         `character-fold-search'.
32583         * lisp/isearch.el: Move character-folding code to
32584         character-fold.el
32585         (isearch-toggle-character-fold): New command.
32586         (isearch-mode-map): Bind it to "\M-sf".
32587         (isearch-mode): Check value of `character-fold-search'.
32589 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
32591         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
32592         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
32593         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
32595         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
32596         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
32598 2015-06-24  Glenn Morris  <rgm@gnu.org>
32600         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
32602 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
32604         lisp/gnus/nnmaildir.el: Silence lexical warnings
32605         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
32606         functional style.
32607         (nnmaildir--update-nov): Remove unused var `numdir'.
32608         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
32609         (nnmaildir-request-group, nnmaildir-request-create-group)
32610         (nnmaildir-request-post, nnmaildir-request-move-article)
32611         (nnmaildir-request-accept-article, nnmaildir-active-number):
32612         Mark unused args.
32613         (nnmaildir-get-new-mail, nnmaildir-group-alist)
32614         (nnmaildir-active-file): Declare.
32615         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
32616         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
32617         `mark', `end', `new-mark', and `mark-sym'.
32618         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
32619         `nlist2'.
32620         (nnmaildir-request-expire-articles):
32621         Remove unused vars `article', `stop' and `nlist2'.
32622         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
32623         `end'.  Use nnmaildir--article when dyn-binding is needed.
32624         Give the value directly in the `let' for `del-mark', `del-action',
32625         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
32626         (nnmaildir-close-server): Declare those local vars that need to be
32627         dyn-bound.
32629 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
32631         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
32633         Port selection info fix to clang
32634         * src/keyboard.h (kbd_buffer_store_event_hold):
32635         Don't assume C11 semantics for alignof (Bug#20756).
32637         Fix bug that munged selection info
32638         On some optimizing C compilers, copying a structure did not
32639         copy the padding bytes between elements, and the type punning
32640         between struct input_data and struct selection_input_data did
32641         not work.  Change the C code to use a proper union type instead.
32642         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
32643         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
32644         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
32645         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
32646         (mark_kboards):
32647         Use union buffered_input_event, not struct input_event.
32648         (clear_event, deliver_input_available_signal, process_special_events):
32649         Remove unnecessary forward decls.
32650         (kbd_buffer_store_buffered_event): New function, mostly just the
32651         old kbd_buffer_store_event_hold, except its argument is of type
32652         union buffered_input_event, not struct input_event.
32653         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
32654         not needed otherwise.  Argument is now of type
32655         struct selection_input_event *, not struct input_event *.
32656         All callers changed.
32657         (clear_event): Arg is now of type union buffered_input_event *,
32658         not struct input_event *.  All callers changed.
32659         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
32660         (union buffered_input_event): New type.
32661         (kbd_buffer_store_event_hold): Now an inline function,
32662         defined here.
32663         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
32664         (struct input_event): Use it.
32665         * src/xselect.c (struct selection_event_queue):
32666         Make elements be of type struct selection_input_event,
32667         not struct input_event.
32668         (selection_input_event_equal): New static function.
32669         (x_queue_event): Use it.
32670         (x_queue_event, x_decline_selection_request)
32671         (x_selection_current_request, x_reply_selection_request)
32672         (x_handle_selection_request, x_handle_selection_clear)
32673         (x_handle_selection_event): Use struct selection_input_event,
32674         not struct input_event.  All callers changed.
32675         (x_convert_selection): Omit unused first arg.  All callers changed.
32676         (Fx_disown_selection_internal): Omit unnecessary union.
32677         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
32678         rather than rolling our own equivalent.  Prefer sie.kind when
32679         setting up that kind of structure.
32680         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
32681         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
32682         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
32683         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
32684         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
32685         (SELECTION_EVENT_TIME, x_handle_selection_event):
32686         Arg is now of type struct selection_input_event *)
32687         not struct input_event *.  All callers changed.
32689 2015-06-23  Glenn Morris  <rgm@gnu.org>
32691         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
32693 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
32695         * lisp/isearch.el: Fold many unicode characters to ASCII.
32696         (isearch-character-fold-search, isearch--character-fold-extras)
32697         (isearch--character-fold-table): New variable.
32698         (isearch--character-folded-regexp): New function.
32699         (isearch-search-fun-default): Use them.
32700         * lisp/replace.el (replace-character-fold): New variable.
32701         (replace-search): Use it.
32702         * etc/NEWS: Document it.
32704 2015-06-23  Glenn Morris  <rgm@gnu.org>
32706         Check for an input event before showing a dialog box.  (Bug#20813)
32707         * lisp/subr.el (y-or-n-p):
32708         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
32709         as last-nonmenu-event.
32711 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
32713         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
32714         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
32715         (switch-to-prev-buffer, switch-to-next-buffer): Respect
32716         switch-to-visible-buffer independent of the windows history.
32718 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
32720         * src/keyboard.c (last_timer_event): Remove unused var.
32722 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
32724         * test/automated/package-test.el (package-test-update-listing):
32725         Fix test.
32727 2015-06-23  Glenn Morris  <rgm@gnu.org>
32729         Revert 2014-06-25 nextstep/Makefile change.
32730         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
32731         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
32732         not as an order-only prerequisite.
32734         * configure.ac (--with-ns): Enable by default on OS X.
32736 2015-06-23  Leo Liu  <sdl.web@gmail.com>
32738         Fix shell-for/backward-command to exclude spaces
32739         * lisp/shell.el (shell-forward-command, shell-backward-command):
32740           Handle the 'move case from re-search-forward/backward.
32741           fixes debbugs:20873
32743 2015-06-22  Juri Linkov  <juri@linkov.net>
32745         * lisp/replace.el (query-replace-read-from): Add separator to
32746         the local binding of text-property-default-nonsticky.  (Bug#20690)
32748         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
32749         (Bug#20785)
32751 2015-06-22  Ken Brown  <kbrown@cornell.edu>
32753         Enable CPU profiling on Cygwin
32754         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
32755         change that undefined this.
32756         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
32757         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
32758           Cygwin.
32760         Improve diagnostics of profiler-cpu-start
32761         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
32762         return -1 if the sampling interval is invalid.
32763         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
32764         fails.  (Bug#20843)
32766 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
32768         * lisp/emacs-lisp/package.el: Exclude packages by name.
32769         (package-hidden-regexps): New variable.
32770         (package-menu--refresh): Use it.
32771         (package-menu-hide-package): New command.
32773         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
32775 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
32777         Fix debug-timer-check on systems without HAVE_TIMERFD
32778         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
32779         the expired timers, since wait_reading_process_output doesn't.
32780         (debug_timer_callback): Enlarge the tolerance to 20 msec.
32782         Fix RCS crashes in vc-test
32783         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
32784         ports of 'ci' on MS-Windows by always passing the -t- switch.
32786 2015-06-22  Glenn Morris  <rgm@gnu.org>
32788         * doc/emacs/package.texi (Packages):
32789         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
32791         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
32793 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
32795         Port tests to help-quote-translation
32796         * test/automated/ert-x-tests.el (ert-test-describe-test):
32797         * test/automated/package-test.el (package-test-describe-package)
32798         (package-test-signed): Allow straight quotes, too.
32800 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
32802         Make find-function-on-key use the current window
32803         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
32804         Extract from `find-function-on-key', add a second argument.
32805         (find-function-on-key): Use it (bug#19679).
32806         (find-function-on-key-other-window)
32807         (find-function-on-key-other-frame): New commands.
32809 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
32811         Revert "Define `map-elt' as a generalized variable"
32812         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
32814 2015-06-21  Ken Brown  <kbrown@cornell.edu>
32816         Drop support for CPU profiling on Cygwin
32817         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
32818         (Bug#20843)
32820 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
32822         Fix some “nested” quoting confusion in doc strings
32823         * lisp/emacs-lisp/advice.el (ad-map-arglists):
32824         * lisp/kermit.el (kermit-clean-on):
32825         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
32826         * src/keyboard.c (Frecursive_edit):
32827         Use curved quotes when quoting text containing apostrophe,
32828         so that the apostrophe isn't curved in the output.
32830 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
32832         Define `map-elt' as a generalized variable
32833         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
32834         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
32835         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
32836         `setf' with `map-elt'.
32837         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
32839 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
32841         Improve error handling in tramp-adb.el
32842         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
32843         Improve error handling.
32845 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
32847         Reuse `alist-get' in map.el
32848         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
32849         elements.
32851 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
32853         Fix bytecomp-tests--warnings when $TMPDIR has a long name
32854         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
32855         Allow the warning to begin on the 3rd, not only 2nd line, which
32856         happens if temporary-file-directory has a very long name.
32858         Expect 2 icalendar tests to fail on MS-Windows
32859         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
32860         (icalendar-real-world): Make them expected failures on MS-Windows.
32862 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
32864         Improve port of settings UI to older displays
32865         * lisp/cus-start.el (standard): Don't assume curved quotes are
32866         easily distinguishable when users are tinkering with a setting
32867         that affects how curved quotes are generated.
32869         Fix quoting in electric-quote-mode doc string
32870         * lisp/electric.el (electric-quote-mode): Fix quoting.
32871         This is a fallout from the recent change introducing
32872         ‘help-quote-translation’.
32874         Spelling fix
32876         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
32878         * src/doc.c (syms_of_doc): Remove unused symbols.
32880 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
32882         * lisp/window.el (window-state-put): Undedicate target window
32883         before putting STATE into it.  (Bug#20848)
32885 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
32887         Merge from origin/emacs-24
32888         a5e6f33 Fixes: debbugs:20832
32889         b9f02cf Fixes: debbugs:20832
32891 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
32893         Fix file-in-directory-p when the directory is UNC
32894         * lisp/files.el (file-in-directory-p): Support files and
32895         directories that begin with "//".  (Bug#20844)
32897 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
32899         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
32900         in the minibuffer.  (Bug#20832)
32902 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
32904         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
32905         for adding new todo file is empty but modified.  (Bug#20832)
32907 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
32909         (filepos-to-bufferpos): Further tweaks to the utf-16 code
32910         * lisp/international/mule-util.el (filepos-to-bufferpos):
32911         Fix typo.  Move non-exact check to the utf-16 branch (the only one
32912         affected).  Don't use byte-to-position for the utf-16 case.
32914 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
32916         Minor fixes in filepos-to-bufferpos
32917         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
32918         test for utf-8-emacs.  Exempt single-byte encodings from the
32919         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
32920         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
32921         UTF-16 encoded files for CR-LF EOLs.
32923 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
32925         Improve the optional translation of quotes
32926         Fix several problems with the recently-added custom variable
32927         help-quote-translation where the code would quote inconsistently
32928         in help buffers.  Add support for quoting 'like this', which
32929         is common in other GNU programs in ASCII environments.  Change
32930         help-quote-translation to use more mnemonic values: values are now the
32931         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
32932         traditional Emacs help-buffer quoting style `like this'.  Change the
32933         default behavior of substitute-command-keys to match what's done in
32934         set-locale-environment, i.e., quote ‘like this’ if displayable,
32935         'like this' otherwise.
32936         * doc/lispref/help.texi (Keys in Documentation): Document
32937         new behavior of substitute-command-keys, and document
32938         help-quote-translation.
32939         * doc/lispref/tips.texi (Documentation Tips):
32940         Mention the effect of help-quote-translation.
32941         * etc/NEWS: Mention new behavior of substitute-command-keys,
32942         and merge help-quote-translation news into it.
32943         When talking about doc strings, mention new ways to type quotes.
32944         * lisp/cedet/mode-local.el (overload-docstring-extension):
32945         Revert my recent change to this function, which shouldn't be
32946         needed as the result is a doc string.
32947         * lisp/cedet/mode-local.el (mode-local-print-binding)
32948         (mode-local-describe-bindings-2):
32949         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
32950         * lisp/cus-theme.el (describe-theme-1):
32951         * lisp/descr-text.el (describe-text-properties-1, describe-char):
32952         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
32953         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
32954         (eieio-help-constructor):
32955         * lisp/emacs-lisp/package.el (describe-package-1):
32956         * lisp/faces.el (describe-face):
32957         * lisp/help-fns.el (help-fns--key-bindings)
32958         (help-fns--compiler-macro, help-fns--parent-mode)
32959         (help-fns--obsolete, help-fns--interactive-only)
32960         (describe-function-1, describe-variable):
32961         * lisp/help.el (describe-mode):
32962         Use substitute-command-keys to ensure a more-consistent quoting
32963         style in help buffers.
32964         * lisp/cus-start.el (standard):
32965         Document new help-quote-translation behavior.
32966         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
32967         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
32968         (help-xref-url-regexp):
32969         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
32970         * lisp/wid-edit.el (widget-documentation-link-regexp):
32971         Also match 'foo', in case we're in a help buffer generated when
32972         help-quote-translation is ?'.
32973         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
32974         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
32975         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
32976         (Fsubstitute_command_keys): Document and implement new behavior.
32977         (Vhelp_quote_translation): Document new behavior.
32979 2015-06-18  Glenn Morris  <rgm@gnu.org>
32981         * lisp/cus-start.el (help-quote-translation): Add :version.
32983         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
32985 2015-06-18  Alan Mackenzie  <acm@muc.de>
32987         Make translation of quotes to curly in doc strings optional.
32988         * src/doc.c (traditional, prefer-unicode): New symbols.
32989         (help-quote-translation): New variable.
32990         (Fsubstitute_command_keys): Make translation of quotes dependent on
32991         `help-quote-translation'; also translate curly quotes back to ASCII
32992         ones.
32993         * lisp/cus-start.el (top-level): Add a customization entry for
32994         `help-quote-translation'.
32996 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
32998         * lisp/emacs-lisp/package.el: Don't always propagate async errors
32999         (package--with-work-buffer-async): Only propagate the error if the
33000         callback returns non-nil.
33001         (package--download-one-archive): Return nil on the signature
33002         checking callback if we accept unsigned.
33003         (package--download-and-read-archives): Return non-nil on the
33004         archive download callback.
33006 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
33008         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
33009         * src/nsfns.m (Fx_create_frame):
33010         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
33011         image_cache_refcount before first x_default_parameter call.
33013 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
33015         Improve and extend filepos-to-bufferpos
33016         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
33017         Don't barf if F returns nil for some argument.
33018         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
33019         that every encoding of type 'charset' is single-byte.
33021 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
33023         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
33024         Properly delete packages.  (Bug#20836)
33026 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
33028         Update data files from just-released Unicode 8.0
33029         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
33030         status.
33031         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
33032         * admin/unidata/BidiMirroring.txt:
33033         * admin/unidata/BidiBrackets.txt:
33034         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
33036 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
33038         Document curved quotes a bit better
33039         * doc/emacs/basic.texi (Inserting Text):
33040         Mention C-x 8.  Change example to use curved quote rather
33041         than infinity, as this lets us give more ways to do it.
33042         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
33043         and quotation marks.
33044         * doc/emacs/text.texi (Quotation Marks):
33045         * doc/lispref/tips.texi (Documentation Tips):
33046         Add "curly quotes" and "curved quotes" to the index.
33047         * doc/emacs/text.texi (Quotation Marks):
33048         Give the C-x 8 shorthands for curved quotes.
33049         Cross-reference to "Quotation Marks".
33051 2015-06-17  Daiki Ueno  <ueno@gnu.org>
33053         Add pinentry.el for better GnuPG integration
33054         * lisp/pinentry.el: New file.
33055         * etc/NEWS: Add entry about pinentry.el.
33056         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
33057         (Bug#20550)
33059 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
33061         * lisp/emacs-lisp/package.el: Slightly better error reporting.
33063 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
33065         (define-minor-mode): Use setq-default for :global minor modes
33066         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
33067         Use setq-default for :global minor modes (bug#20712).
33069 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
33071         Avoid infloop in redisplay with tall images
33072         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
33073         down near ZV.  (Bug#20808)
33074         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
33075         instead of CHARPOS.
33077 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
33079         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
33080         Fix error reporting.
33082         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
33084         * lisp/emacs-lisp/package.el: Revert buffer after any operation
33085         Call `package-menu--post-refresh' after any operation that changes
33086         the package database (`package-install' and `package-delete').  To
33087         avoid performance issues in large transactions, these functions
33088         add `post-refresh' to `post-command-hook' instead of calling it
33089         immediately.
33090         (package-menu--mark-or-notify-upgrades): New function.
33091         (list-packages): Add it to `package--post-download-archives-hook'.
33092         (package-menu--post-refresh): Lose the upgrade-checking code, add
33093         code to remove itself from `post-command-hook'.
33094         (package-install, package-delete): Add it to `post-command-hook'.
33095         (package-menu-execute): Don't call `package-menu--post-refresh'.
33097 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
33099         Add missing function xref-location-group for elisp-mode.
33100         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
33102 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
33104         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
33105         The behavior now matches the description in the manual.  (Bug#20783)
33107 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
33109         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
33111 2015-06-17  Glenn Morris  <rgm@gnu.org>
33113         Generate char-script-table from Unicode source.  (Bug#20789)
33114         * admin/unidata/Makefile.in (AWK): New, set by configure.
33115         (all): Add charscript.el.
33116         (blocks): New variable.
33117         (charscript.el, ${unidir}/charscript.el): New targets.
33118         (extraclean): Also remove generated charscript.el.
33119         * admin/unidata/blocks.awk: New script.
33120         * admin/unidata/Blocks.txt: New data file, from unicode.org.
33121         * lisp/international/characters.el: Load charscript.
33122         * src/Makefile.in (charscript): New variable.
33123         (${charscript}): New target.
33124         (${lispintdir}/characters.elc): Depend on charscript.elc.
33125         (temacs$(EXEEXT)): Depend on charscript.
33127         * lisp/international/characters.el (char-script-table): Tweak
33128         some ranges to better match the source.  (Bug#20789#17)
33130         Remove "no-byte-compile: t" from a few files.
33131         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
33132         * lisp/obsolete/patcomp.el: No reason not to compile these.
33134 2015-06-16  Glenn Morris  <rgm@gnu.org>
33136         Fix some typos in copied Unicode data.  (Bug#20789)
33137         * lisp/international/characters.el (char-script-table):
33138         * lisp/international/fontset.el (script-representative-chars)
33139         (setup-default-fontset): Fix typos.
33141         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
33142         Don't print filename twice (it's in the prefix now).
33144         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
33145         No longer needed.
33147         Address a compilation warning.
33148         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
33149         Replace 't' with '_' in pcase.
33151         Address some check-declare warnings.
33152         * lisp/simple.el (tabulated-list-print):
33153         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
33154         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
33155         (ns-get-selection): Update declarations.
33157         Address some compilation warnings.
33158         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
33159         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
33160         Replace 't' with '_' in pcase.
33162         Address some compilation warnings.
33163         * lisp/face-remap.el (text-scale-adjust):
33164         * lisp/menu-bar.el (popup-menu-normalize-position):
33165         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
33166         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
33167         * lisp/emacs-lisp/generator.el (cps--transform-1):
33168         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
33169         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
33170         * lisp/progmodes/octave.el (octave-goto-function-definition)
33171         (octave-find-definition-default-filename):
33172         Replace 't' with '_' in pcase.
33174         * lisp/emacs-lisp/pcase.el (pcase--u1):
33175         Paper-over today's bootstrap failure.
33177 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
33179         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
33181         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
33183         Better confirmation message in `find-alternate-file' (Bug#20830)
33184         * lisp/files.el (find-alternate-file'): Improve the confirmation
33185         message to show the buffer name.
33187         Better docstring for null.  (Bug#20815)
33188         * src/data.c (null): Improves the docstring, saying what null returns
33189         when OBJECT is non-nil.
33191 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
33193         * lisp/net/newst-treeview.el: Use lexical-binding.
33195         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
33196         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
33197         New auxiliary function, extracted from filepos-to-bufferpos.
33198         Make sure it terminates.
33199         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
33200         Add support for the `exact' quality.
33202 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
33204         Identify feeds in newsticker treeview with :nt-feed property
33205         * lisp/net/newst-treeview.el:
33206         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
33208 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
33210         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
33211         (pcase--self-quoting-p): Floats aren't self-quoting.
33212         (pcase): Tweak docstring.
33213         (pcase--u1): Deprecate the t pattern.  Improve error detection for
33214         the nil pattern.
33215         (\`): Tweak docstring.  Signal an error for unrecognized cases.
33216         (bug#20784)
33218 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
33220         Fix infloop in filepos-to-bufferpos
33221         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
33222         offset calculation, and make it conditional on the eol-type of the
33223         file's encoding.  (Bug#20825)
33225 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
33227         Fix handling of image cache refcounts.  (Bug#20802)
33228         This backports Eli Zaretskii's solution of this problem for W32
33229         to X and NS.
33230         * src/nsfns.m (image_cache_refcount): Define unconditionally.
33231         (unwind_create_frame): If the image cache's reference count
33232         hasn't been updated yet, do that now.
33233         (Fx_create_frame): Set image_cache_refcount unconditionally.
33234         * src/xfns.c (image_cache_refcount): Define unconditionally.
33235         (unwind_create_frame): If the image cache's reference count
33236         hasn't been updated yet, do that now.
33237         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
33238         unconditionally.
33239         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
33240         X and NS.
33242 2015-06-16  Nils Ackermann  <nils@ackermath.info>
33244         Improve reftex-label-regexps default value
33245         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
33246         keyvals label regexp more strict to better cope with unbalanced
33247         brackets common in math documents.
33249 2015-06-16  Glenn Morris  <rgm@gnu.org>
33251         * doc/emacs/calendar.texi (Format of Diary File):
33252         Move "nonmarking" from here...
33253         (Displaying the Diary): ... to here.
33255         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
33256         Swap the order of these nodes.
33257         * doc/emacs/emacs.texi: Update detailed menu for the above change.
33259         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
33260         Update date of examples.
33261         (Diary, Format of Diary File): Move example from former to latter.
33262         Reduce duplication.
33264         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
33265         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
33266         Don't set no-byte-compile in the outputs.
33267         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
33269 2015-06-15  Glenn Morris  <rgm@gnu.org>
33271         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
33272         * doc/emacs/calendar.texi (Diary, Format of Diary File):
33273         Update for above diary-file change.
33275         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
33276         (apply-macro-to-region-lines): Use user-error.
33278         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
33279         (pages-directory-for-addresses): Doc fixes.
33281 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
33283         * lisp/info.el: Cleanup bytepos/charpos issues
33284         * lisp/international/mule-util.el: Use lexical-binding.
33285         (filepos-to-bufferpos): New function.
33286         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
33287         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
33288         (Info-read-subfile, Info-search): Use 0-based file positions.
33290         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
33291         (perl--syntax-exp-intro-keywords): New var.
33292         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
33293         (bug#20800).
33295 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
33297         Fix quoting when making derived mode docstring
33298         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
33299         Nest regexp-quote inside format, not the reverse.
33300         Problem reported by Artur Malabarba in:
33301         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
33303 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
33305         Fix current-iso639-language on MS-Windows
33306         * lisp/international/mule-cmds.el (set-locale-environment):
33307         Downcase the locale name before interning it.  This is so the
33308         'current-iso639-language' on MS-Windows matches the ':lang'
33309         property of font-spec objects.
33311         Limit Symbola usage some more
33312         * lisp/international/fontset.el (setup-default-fontset): Limit
33313         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
33314         (Bug#20727)
33316 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
33318         * lisp/emacs-lisp/map.el (map-let): Better docstring.
33320 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
33322         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
33323         (help-fns-test-funny-names): Spelling fixes.
33325 2015-06-14  Glenn Morris  <rgm@gnu.org>
33327         * lisp/version.el (emacs-repository-version-git): Demote errors.
33328         Check result is a hash.
33330 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
33332         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
33333         Catch errors that happen before going async.  (Bug#20809)
33335 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
33337         Another improvement of documentation of set-fontset-font
33338         * doc/lispref/display.texi (Fontsets): Say explicitly that
33339         CHARACTER can be a single codepoint.
33340         * src/fontset.c (Fset_fontset_font): Doc fix.
33342         Another improvement for symbol and punctuation characters
33343         * lisp/international/fontset.el (setup-default-fontset): Exclude
33344         from Symbola character ranges for symbols and punctuation covered
33345         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
33346         installed and where its coverage of symbols and punctuation is
33347         known to be good.  (Bug#20727)
33349 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
33351         Some generic support for multi-mode indentation.
33352         * lisp/progmodes/prog-mode.el (prog-indentation-context):
33353         New variable.
33354         (prog-first-column, prog-widen): New convenience functions.
33356 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
33358         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
33359         Don't assume that `tabulated-list-printer' will leave point at the
33360         end of the buffer.  (Bug#20810)
33362 2015-06-13  Glenn Morris  <rgm@gnu.org>
33364         Tweaks for getting repository version; a bit more like it was for bzr
33365         * lisp/version.el (emacs-repository-version-git)
33366         (emacs-repository--version-git-1): New functions,
33367         split from emacs-repository-get-version.
33368         (emacs-repository-get-version): Make the second argument meaningful.
33370         * lisp/startup.el (command-line-1): Inform if skipping relative
33371         file names due to deleted PWD.
33373         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
33374         when starup directory is missing.  (Bug#18851)
33375         (errno.h): Include it.
33377 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
33379         Better fix for documenting `X as "`X"
33380         Fix suggested by Stefan Monnier.
33381         * lisp/help-fns.el (help-fns--signature):
33382         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
33383         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
33384         Don't treat `X specially, as help-fns--signature now handles this.
33386 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
33388         Improve the default fontset when Symbola is not installed
33389         * lisp/international/fontset.el (setup-default-fontset): Only
33390         prepend Symbola and FreeMono font specs for symbols and
33391         punctuation; do not replace the default spec for them.  This
33392         should have better results when Symbola/FreeMono are not
33393         installed.  (Bug#20727)
33395         Improve documentation of ':lang' in font specs
33396         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
33397         use of the ':lang' property of the font spec.
33398         * doc/emacs/frames.texi (Fonts): Document the language names that
33399         can be in the STYLE part of XLFD.
33400         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
33401         property.
33403         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
33405         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
33407         Revert last change in fontset.el
33408         * lisp/international/fontset.el (setup-default-fontset): Revert
33409         the change "Configure Symbola font only if installed", since font
33410         search is evidently not yet set up when this function is called.
33411         (Bug#20727)
33413 2015-06-12  Glenn Morris  <rgm@gnu.org>
33415         Ensure early startup warnings are visible at the end.  (Bug#20792)
33416         * lisp/emacs-lisp/warnings.el (display-warning):
33417         If startup isn't complete, delay the warning.
33418         * lisp/startup.el (normal-top-level, command-line):
33419         Let display-warning automatically handle the needed delays.
33420         Run delayed-warnings-hook.
33422         * lisp/version.el (emacs-repository-get-version):
33423         Avoid calling external executable if possible.  (Bug#20799)
33425 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
33427         Document `X as "`X", not as "(` X)"
33428         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
33429         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
33431         * src/print.c (print_object): Minor simplification.
33433 2015-06-12  Glenn Morris  <rgm@gnu.org>
33435         * src/buffer.c (init_buffer): Add final newline to message.
33437 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
33439         Configure Symbola font only if installed
33440         * lisp/international/fontset.el (setup-default-fontset):
33441         Don't specify the Symbola font if it's not installed.
33442         Likewise for FreeMono.  (Bug#20727)
33444 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
33446         Configure Symbola font only for symbols and punctuation
33447         * lisp/international/fontset.el (setup-default-fontset): Leave
33448         only symbols and punctuation in the fontset setup for Symbola
33449         font; remove "Greek and Coptic" and "Cyrillic Supplement".
33450         (Bug#20798)
33452 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
33454         Fix crash in fontset-info
33455         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
33456         non-nil.
33458 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
33460         Port to Solaris 10 sparc + Sun C 5.13
33461         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
33462         Adjust to process.c change.
33463         * src/process.c (create_process): Declare volatile variables at
33464         top level of this function, so that they're less likely to be
33465         reused later in the function in the code executed by the vforked
33466         child.  Do not declare locals used only in the vforked child, as
33467         they might share memory with locals still live in the parent.
33468         Instead, use the same variables in the child as in the parent.
33469         This works around a subtle bug that causes a garbage collector
33470         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
33472 2015-06-12  Glenn Morris  <rgm@gnu.org>
33474         * lisp/startup.el (normal-top-level): Don't let *Messages* get
33475         a nil default-directory.
33477 2015-06-11  Glenn Morris  <rgm@gnu.org>
33479         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
33481         Some progress towards starting with PWD deleted.  (Bug#18851)
33482         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
33483         * lisp/startup.el (normal-top-level, command-line-1):
33484         * lisp/minibuffer.el (read-file-name-default):
33485         Handle default-directory being nil.
33487 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
33489         Fix "not a tty" bug on Solaris 10
33490         * configure.ac (PTY_OPEN): Define to plain 'open'
33491         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
33492         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
33493         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
33494         hosts that call grantpt which does its work via a setuid subcommand
33495         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
33496         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
33497         seems relevant in that case too.
33499 2015-06-11  Juri Linkov  <juri@linkov.net>
33501         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
33502         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
33503         (Bug#20785)
33505 2015-06-11  Glenn Morris  <rgm@gnu.org>
33507         * lisp/international/characters.el (char-script-table): Fix typo.
33509 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
33511         Fix quoting of help for functions with odd names
33512         While investigating Bug#20759, I discovered other quoting problems:
33513         C-h f mishandled characters like backslash and quote in function names.
33514         This fix changes the behavior so that 'C-h f pcase RET' now
33515         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
33516         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
33517         in src/lread.c's read1 function says that the backslash will be
33518         needed starting in Emacs 25, which implies that 'format' is
33519         correct and the old pcase documention was wrong to omit the backslash.
33520         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
33521         * lisp/help-fns.el (help-fns--signature):
33522         * lisp/help.el (help-add-fundoc-usage):
33523         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
33524         Use help--make-usage-docstring rather than formatting
33525         help-make-usage.
33526         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
33527         Return raw docstring.
33528         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
33529         raw docstring.  Take more care to distinguish raw from cooked dstrings.
33530         (describe-function-1): Let help-fns--signature substitute
33531         command keys.
33532         * lisp/help.el (help--docstring-quote): New function.
33533         (help-split-fundoc): Use it, to quote funny characters more
33534         systematically.
33535         (help--make-usage): Rename from help-make-usage, since this
33536         should be private.  Leave an obsolete alias for the old name.
33537         (help--make-usage-docstring): New function.
33538         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
33540 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
33542         * lisp/thingatpt.el (in-string-p): Revert last change,
33543         since in-string-p is not used in thingatpt.el but only from outside.
33544         Also, use lexical binding.
33546 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
33548         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
33549         * test/automated/let-alist.el (let-alist-cons): Test it.
33551 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
33553         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
33555 2015-06-10  Glenn Morris  <rgm@gnu.org>
33557         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
33559         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
33560         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
33561         * admin/gitmerge.el (gitmerge-commit-message):
33562         Exclude "skipped" messages from ChangeLog once again.
33564         Slight namespace cleanup for thingatpt.el.
33565         * lisp/thingatpt.el (thing-at-point--in-string-p)
33566         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
33567         (thing-at-point--read-from-whole-string): Rename from
33568         old versions without "thing-at-point--" prefix.
33569         Keep old versions as obsolete aliases.  Update all uses.
33571         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
33572         Move requiring of finder from here...
33573         (checkdoc-package-keywords): ... to here.
33575         Use 'user-error' in a few calendar files.
33576         * lisp/calendar/appt.el (appt-add):
33577         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
33578         (calendar-generate):
33579         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
33580         Replace 'error' with 'user-error'.
33582         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
33584         * lisp/files-x.el (add-file-local-variable):
33585         Special-case 'lexical-binding'.  (Bug#20641)
33587         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
33588         No longer autoload.
33589         * doc/misc/autotype.texi (Executables):
33590         Undocument executable-self-display.
33592         * lisp/progmodes/executable.el (executable-self-display):
33593         Use non-obsolete tail syntax.  (Bug#20779)
33594         (executable-self-display): Doc update.
33596 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
33598         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
33599         (finder-known-keywords): Silence byte-compiler.
33601 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
33603         * lisp/simple.el (eval-expression): Macroexpand before evaluating
33604         (bug#20730).
33606         * lisp/progmodes/sh-script.el: Better handle nested quotes.
33607         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
33608         (sh-font-lock-quoted-subshell): Make sure double quotes within single
33609         quotes don't mistakenly end prematurely the surrounding string.
33611         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
33613 2015-06-09  Glenn Morris  <rgm@gnu.org>
33615         * test/automated/Makefile.in (ELFILES): Sort.
33617         * Makefile.in (SUBDIR_MAKEFILES):
33618         * lwlib/Makefile.in (WARN_CFLAGS):
33619         Use built-in Make functions rather than echo+sed.
33621 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
33623         Update char-script-table
33624         * lisp/international/characters.el (char-script-table): Update
33625         from Unicode 8.0 Draft.
33627         Improve font selection for punctuation and other symbols
33628         * src/fontset.c (face_for_char): If the character's script is
33629         'symbol', and the font used for ASCII face has a glyph for it, use
33630         the font for the ASCII face instead of searching the fontsets.
33631         This comes instead of NS-specific code that used the current
33632         face's font instead, which is now disabled due to undesirable
33633         consequences.  (Bug#20727)
33635 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
33637         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33638         Skip past `#' to find BEG (bug#20771).
33639         * test/automated/elisp-mode-tests.el
33640         (elisp-completes-functions-after-hash-quote): New test.
33642 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
33644         Fix compilation warning/error in --without-x builds
33645         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
33646         code on HAVE_WINDOW_SYSTEM.
33648         Improve the default fontset wrt symbols
33649         * lisp/international/fontset.el (setup-default-fontset): Better
33650         setup of fontset-default for symbols: use Symbola and FreeMono.
33651         (Bug#20727)
33653 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
33655         Add new command checkdoc-package-keywords
33656         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
33657         New defcustom.
33658         (checkdoc-list-of-strings-p): Add doc.
33659         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
33660         non-nil, call `checkdoc-package-keywords'.
33661         (checkdoc-get-keywords): New defun.
33662         (checkdoc-package-keywords): New command.  Warns if the current file
33663         has package.el-style keywords that aren't in `finder-known-keywords'.
33664         * etc/NEWS: Add entry.
33666 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
33668         Avoid crashes when key-binding is called from a timer
33669         * src/keymap.c (Fkey_binding): Don't segfault if called with an
33670         empty vector as KEY.  (Bug#20705)
33672         Fix a thinko in arc-mode.el
33673         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
33674         non-Zip64 case.  (Bug#20769)
33676 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
33678         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
33680 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
33682         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
33683         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
33684         "*warn*", print the warning to the standard output.  (bug#20754)
33686 2015-06-07  Glenn Morris  <rgm@gnu.org>
33688         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
33690         * src/font.c (syms_of_font) <font-log>: Doc fix.
33692         Remove the obsolete leading "*" from some C doc strings.
33693         * src/coding.c (syms_of_coding):
33694         * src/font.c (syms_of_font): Remove leading "*" from docs.
33695         * lisp/cus-start.el (enable-character-translation): Add it.
33697 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
33699         Move gen_origin from program to data
33700         That way, 'make change-history' needs to change only ChangeLog.2,
33701         instead of having to change two files.
33702         * ChangeLog.2: Add commit info for range that this file covers.
33703         * Makefile.in (new_commit_regexp): New macro.
33704         (change-history-nocommit): Simplify, by putting what used to be
33705         the gen_origin value into the data (ChangeLog.2) rather than
33706         into the program (gitlog-to-emacslog).
33707         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
33708         the input file (e.g., ChangeLog.2) rather than by having a
33709         constant in the program.  Substitute it into the output.
33711 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
33713         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
33714         function name (bug#20759).
33716 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
33718         Adapt 'struct timespec' to next release of MinGW runtime
33719         * nt/inc/ms-w32.h (struct timespec): Don't declare if
33720         __struct_timespec_defined is defined.
33722 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
33724         Merge from gnulib
33725         This incorporates:
33726         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
33727         2015-06-05 stdio: Don't redefine gets when using C++
33728         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
33729         2015-06-02 file-has-acl: fix build on Mac OS X 10
33730         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
33731         2015-06-01 pthread_sigmask: discount system version if a simple macro
33732         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
33733         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
33734         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
33735         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
33736         * lib/gnulib.mk: Regenerate.
33738 2015-06-06  Juri Linkov  <juri@linkov.net>
33740         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
33741         before calling grep-compute-defaults because now it affects the
33742         command lines computed in grep-compute-defaults.  (Bug#20728)
33744 2015-06-06  Glenn Morris  <rgm@gnu.org>
33746         Address some compilation warnings.
33747         * lisp/international/mule-cmds.el (w32-get-console-codepage)
33748         (w32-get-console-output-codepage):
33749         * lisp/progmodes/elisp-mode.el (xref-collect-references):
33750         * lisp/version.el (cairo-version-string): Declare.
33751         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
33753 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
33755         Fix display when a font claims large values of ascent and descent
33756         This fixes bug#20628.
33757         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
33758         coordinate of a hollow cursor glyph when the original glyph's
33759         ascent is too small.
33760         (get_font_ascent_descent, normal_char_ascent_descent)
33761         (normal_char_height): New functions.
33762         (handle_single_display_spec, append_space_for_newline)
33763         (calc_pixel_width_or_height, produce_stretch_glyph)
33764         (calc_line_height_property): Use normal_char_ascent_descent and
33765         normal_char_height.
33766         (x_produce_glyphs): When font-global values of ascent and descent
33767         are too large, use per-character glyph metrics instead, if
33768         possible.  But don't allow the glyph row's ascent and descent
33769         values become smaller than the values from the metrics of the
33770         font's "normal" character.
33771         * src/xftfont.c (xftfont_draw):
33772         * src/w32font.c (w32font_draw): Correct the values of ascent and
33773         descent used to draw glyphless characters' hex code in a box.
33774         * src/xterm.c (x_draw_glyph_string_background):
33775         * src/xdisp.c (x_produce_glyphs):
33776         * src/w32term.c (x_draw_glyph_string_background):
33777         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
33778         to detect fonts whose global ascent and descent values are too
33779         large to be used in layout decision, and redraw the background
33780         when that happens.
33781         * src/dispextern.h (FONT_TOO_HIGH): New macro.
33782         (get_font_ascent_descent): Add prototype.
33783         * src/xterm.c (x_new_font):
33784         * src/w32term.c (x_new_font):
33785         * src/nsterm.m (x_new_font):
33786         * src/font.c (font_open_entity):
33787         * src/composite.c (composition_gstring_width):
33788         Use get_font_ascent_descent to obtain reasonable values for ascent
33789         and descent of a font.
33791 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
33793         Add assertion in adjust_point_for_property
33794         * src/keyboard.c (adjust_point_for_property): Add eassert for
33795         current buffer being shown in selected window.
33797 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
33799         Replace uses of in-string-p; make it obsolete
33800         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
33801         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
33803 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
33805         Fix Dired display of an explicit list of files by ls-lisp.el
33806         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
33807         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
33808         correct for when displaying individual files separately, not as
33809         part of listing a directory, in which case these values are not
33810         recomputed by 'ls-lisp-insert-directory', but used verbatim.
33812         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
33814 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
33816         Do not adjust point in a non-selected window
33817         * src/keyboard.c (command_loop_1): Do not adjust point when
33818         current buffer is not shown in selected window (Bug#20590).
33820         * etc/DEBUG: Mention 'maybe_call_debugger'
33822 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
33824         Fix a unit test for map.el
33825         * test/automated/map-tests.el (test-map-let): Fix the test to work
33826         with the new syntax of `map-let'.
33828         * lisp/emacs-lisp/map.el (map-let): Better docstring.
33830         Better syntax for the map pcase pattern
33831         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
33832         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
33834         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
33836         Fix a byte-compiler error in map-put and map-delete
33837         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
33838         called with a symbol.
33840 2015-06-05  Glenn Morris  <rgm@gnu.org>
33842         * admin/gitmerge.el (gitmerge-commit-message):
33843         Revert to including "skipped" messages in ChangeLog once again.
33845 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
33847         Use string> instead of equiv lambda with string<
33848         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
33849         lambda with string<.
33851 2015-06-05  Glenn Morris  <rgm@gnu.org>
33853         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
33854         (map--delete-array): Fix typo.
33856         * test/automated/map-tests.el: Replace "assert" with "should".
33858         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
33859         (SUBDIRS_REL): Derive from SUBDIRS.
33861         Tweak some build messages.
33862         * lisp/Makefile.in ($(lisp)/loaddefs.el):
33863         * lisp/cus-dep.el (custom-make-dependencies):
33864         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
33865         * lisp/international/titdic-cnv.el (batch-titdic-convert):
33866         Don't say how to compile.
33868 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
33870         Omit U+0332 COMBINING LOW LINE in previous change
33871         It turns out that it does not work on Ubuntu 15.04.
33873         Fix transliteration of Bahá'í months
33874         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
33875         Improve quality of Latin transliteration of Bahá'í month names.
33877         Fix curved quotes in a few places
33878         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
33879         The strings in question are not doc strings, so this partially
33880         undoes the recent change that assumed they were doc strings.
33881         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
33882         * lisp/info.el (Info-finder-find-node):
33883         Use curved quotes.
33884         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
33885         Also allow curved quotes in doc strings.
33887 2015-06-04  Glenn Morris  <rgm@gnu.org>
33889         * lisp/Makefile.in (AM_V_at): Add missing definition.
33891         * lisp/Makefile.in: Quieten output a bit.
33892         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
33893         Don't echo directories, since the commands we invoke print them.
33895         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
33896         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
33897         (SUBDIRS_SUBDIRS): New variables.
33898         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
33899         Remove.
33900         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
33901         (update-subdirs, compile-main, compile-clean):
33902         Replace "setwins" usage with new "SUBDIRS" variables.
33904         * lisp/vc/compare-w.el (compare-windows-get-window-function):
33905         Fix :version tag.
33907 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
33909         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
33911         Undo removal of x_clear_area call on expose for GTK3 or cairo
33912         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
33913         Clear exposed area.  (Bug#20677)
33915 2015-06-04  Glenn Morris  <rgm@gnu.org>
33917         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
33919         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
33921         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
33922         Rename from quail-lao-update-translation, since lao.el defines that.
33924 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
33926         Handle new-style advice in find-funct
33927         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
33928         Handle new-style advice.  Return the symbol's function definition.
33929         (Bug#20718)
33930         (find-function-library): Update accordingly.
33932 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
33934         Merge branch 'map'
33936         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
33938         Add new function string-greaterp
33939         * lisp/subr.el (string-greaterp): New function.  Also aliased to
33940         `string>'.
33941         * test/automated/subr-tests.el (string-comparison-test): Add unit
33942         tests for `string>'and `string<'.
33943         * src/fns.c (string-lessp): Better docstring.
33945 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
33947         Fix timezone-related functions on MS-Windows
33948         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
33949         'xputenv', even if no reallocation of tzvalbuf was necessary.
33950         This fixes a bug in timezone-related functions on MS-Windows.
33951         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
33953 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
33955         Don't pass raw directory name to 'error'
33956         * lisp/files.el (basic-save-buffer-2): Avoid format error if
33957         a directory name contains a string like "%s".
33959 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
33961         Override 'grep --color=always'
33962         * lisp/progmodes/xref.el (xref-collect-matches):
33963         Override --color=always in grep-find-template.
33965 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
33967         Fix error introduced recently in file-notify-tests.el
33968         * test/automated/file-notify-tests.el
33969         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
33970         (file-notify--deftest-remote): Revert previous patch, not
33971         necessary anymore.
33973 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
33975         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
33976         Starting from a display string after a newline, point went to the
33977         previous line.  Also, fix an inadvertent use of a buffer position
33978         with FETCH_BYTE.  (Bug#20701)
33980 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
33982         Instrument file-notify-test.el in order to catch hydra error
33983         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
33984         Wrap body by `ignore-case', in order to trap non-local errors.
33986 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
33988         Undo previous changes in non-toolkit scroll bar drawing
33989         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
33990         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
33992 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
33994         * .gitignore: Also ignore doc/*/*/*.html and .ps.
33996         Support quotes 'like this' in info files
33997         This is possible when 'makeinfo --disable-encoding' is used
33998         in Texinfo 5.
33999         * lisp/calc/calc-help.el (calc-describe-thing):
34000         * lisp/gnus/gnus-art.el (gnus-button-alist):
34001         * lisp/info.el (Info-find-index-name):
34002         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
34003         Also support quotes 'like this'.
34004         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
34005         * lisp/finder.el (finder-font-lock-keywords): Remove var that
34006         hasn't been used in years, instead of bothering to fix its quoting.
34008 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
34010         * .gitignore: Remove !test/etags/html-src/*.html.
34011         It's no longer needed, since *.html was removed.  Sort.
34013 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
34015         Restore <D> instead of '.' in grep-find-template
34016         * lisp/cedet/semantic/symref/grep.el
34017         (semantic-symref-grep-use-template): Update a comment.
34018         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
34019         instead of '.' in grep-find-template (bug#20719).
34020         (rgrep): Pass nil as the directory to rgrep-default-command.
34021         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
34022         default value for DIR.
34023         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
34024         workaround.
34026 2015-06-02  Glenn Morris  <rgm@gnu.org>
34028         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
34030         * configure.ac (emacs_config_features): Add Cairo.
34032         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
34034 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
34036         Ensure that autorevert works for remote files in file-notify-tests.el
34037         * test/automated/file-notify-tests.el (file-notify--test-desc):
34038         New defvar.
34039         (file-notify--test-remote-enabled)
34040         (file-notify-test00-availability, file-notify-test01-add-watch)
34041         (file-notify-test02-events): Use it.
34042         (file-notify--test-event-test): Check proper descriptor.
34043         (file-notify-test03-autorevert): Ensure that
34044         `visited-file-modtime' has changed.  (Bug#20392)
34046 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
34048         Add a pcase pattern for maps and `map-let' based on it
34049         * lisp/emacs-lisp/map.el (map-let): New macro.
34050         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
34051         * test/automated/map-tests.el: New test for `map-let'.
34053 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
34055         Reuse rgrep mechanics in xref-find-regexp
34056         * lisp/progmodes/grep.el (rgrep-default-command):
34057         Extract from `rgrep'.
34058         * lisp/progmodes/xref.el (xref-collect-references): Split from
34059         `xref-collect-matches'.  Only handle the case of symbol search.
34060         (xref-collect-matches): Instead of Semantic Symref, use
34061         `rgrep-default-command', to take advantage of its directory and
34062         file ignore settings.
34063         (xref--collect-match): Remove the last argument, leaving the
34064         regexp construction up to the caller.
34065         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
34066         Change to take the xref-collect- function to use as an argument.
34067         (elisp-xref-find): Update accordingly.
34068         * lisp/progmodes/etags.el (etags--xref-find-matches)
34069         (etags-xref-find): Same.
34071         Move xref-elisp-location to elisp-mode.el
34072         * lisp/progmodes/xref.el (xref-elisp-location)
34073         (xref-make-elisp-location, xref-location-marker): Remove here.
34074         (xref--xref): Don't limit the type of the location slot.
34075         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
34076         Define as a cl-struct here.
34077         (xref-location-marker): Move here.
34079 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
34081         Minor tweaks for .gitignore
34082         * .gitignore: Don't ignore versioned *.html and *.ps files.
34083         Don't ignore admin/notes/tags that might be ignored as TAGS
34084         on case-insensitive filesystems.  (Bug#20710)
34086 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
34088         Generate curved quotes in ert doc
34089         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
34090         (ert-results-mode-menu)
34091         (ert-results-pop-to-backtrace-for-test-at-point)
34092         (ert-results-pop-to-messages-for-test-at-point)
34093         (ert-results-pop-to-should-forms-for-test-at-point)
34094         (ert-describe-test):
34095         Quote ‘like this’, not `like this', when generating doc strings
34096         and the like.
34097         * test/automated/ert-x-tests.el (ert-test-describe-test):
34098         Allow quoting ‘like this’.
34100 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
34102         Add test for previous commit
34103         * test/automated/replace-tests.el: New file.
34104         (query-replace--split-string-tests): Add test for previous commit.
34106         Avoid confusion in query-replace history when replacing NUL chars
34107         * lisp/replace.el (query-replace--split-string): New function.
34108         (query-replace-read-from): Rely on the 'separator' property
34109         instead of searching for the NUL character (Bug#20690).
34111 2015-06-02  Glenn Morris  <rgm@gnu.org>
34113         Merge from origin/emacs-24
34114         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
34116         * admin/gitmerge.el (gitmerge-commit-message):
34117         Exclude "skipped" messages from ChangeLog.
34119 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
34121         Sync with Tramp repository
34122         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
34123         messages.
34124         (tramp-handle-make-auto-save-file-name): When calling
34125         `make-auto-save-file-name' internally, make sure it uses Unix-like
34126         behavior, not Windows-like behavior.
34127         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
34128         the local case, because "chown" might fail on w32.
34129         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
34130         for XEmacs.
34132 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
34134         MS-Windows followup for batch stdout/stderr output changes
34135         * lisp/international/mule-cmds.el (set-locale-environment):
34136         In batch mode, use console codepages for keyboard and terminal
34137         encoding.  (Bug#20545)
34139         Update .gitattributes for DOS EOL files
34140         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
34141         CRLF end-of-line format.
34143         NS equivalents of xterm.c and w32term.c changes
34144         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
34145         glyph string background also when the font in use claims
34146         preposterously large global height value.  Helps to remove
34147         artifacts left from previous displays when glyphless characters
34148         are displayed as hex code in a box.
34149         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
34150         value for FRAME_LINE_HEIGHT, even when a font claims very large
34151         value for its height.
34153 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
34155         Avoid grave accent quoting in stderr diagnostics
34156         A few Emacs diagnostics go directly to stderr, and so can't easily
34157         contain curved quotes (as non-UTF-8 locales might mishandle them).
34158         Instead of bothering to add support for this rarity, reword the
34159         diagnostics so that they don't use grave accent to quote.
34160         * src/alloc.c (mark_memory): Fix comment.
34161         * src/buffer.c (init_buffer):
34162         * src/dispnew.c (init_display):
34163         * src/emacs.c (main, sort_args):
34164         * src/lread.c (dir_warning):
34165         * src/term.c (init_tty):
34166         * src/unexmacosx.c (unexec):
34167         * src/xfns.c (select_visual):
34168         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
34169         Reword stderr diagnostics to avoid quoting `like this'.
34170         * src/unexmacosx.c: Include errno.h.
34171         * src/xfns.c (select_visual): Encode value for locale.
34173 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
34175         Treat batch stdout/stderr like standard display
34176         Calls like (print FOO) could generate improperly encoded or
34177         hard-to-read output if FOO contains characters outside the system
34178         locale.  Fix this by treating batch stdout and stderr like
34179         interactive standard display, when it comes to transliterating and
34180         encoding characters (Bug#20545).
34181         * doc/emacs/mule.texi (Communication Coding):
34182         * doc/lispref/display.texi (Active Display Table):
34183         * doc/lispref/nonascii.texi (Locales):
34184         * etc/NEWS:
34185         * src/coding.c (syms_of_coding):
34186         * src/dispnew.c (syms_of_display):
34187         Document this.
34188         * src/print.c: Include disptab.h.
34189         (printchar_to_stream): New function, with much of the guts of the
34190         old Fexternal_debugging_output, except this one also uses the
34191         standard display table.
34192         (printchar, strout, Fexternal_debugging_output): Use it.
34194 2015-05-31  Glenn Morris  <rgm@gnu.org>
34196         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
34198 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
34200         Remove DEFSYMs that aren't used at the C level.  Also:
34201         * src/decompress.c (Qzlib_dll):
34202         * src/font.c (Qunicode_sip):
34203         * src/frame.c (Qtip_frame):
34204         * src/ftfont.c (Qserif):
34205         * src/gnutls.c (Qgnutls_dll):
34206         * src/xml.c (Qlibxml2_dll):
34207         Move from here ...
34208         * src/w32fns.c (syms_of_w32fns): ... to here,
34209         as these are used only on MS-Windows.
34211 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
34213         Use another default value for tramp-histfile-override
34214         * lisp/net/tramp-sh.el (tramp-histfile-override):
34215         Use ".tramp_history" as default.
34216         Fixes bug#20446
34218 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
34220         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
34222 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
34224         * etc/NEWS: Add an entry about map.el.
34226         Improve the docstring of functions in map.el
34227         Since a map is not a data structure but a concept, adding information
34228         about the possible types of maps can be useful information.
34229         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
34230         each public function.
34232 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
34234         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
34235         specific tests depending on the type of the map.
34237         * lisp/emacs-lisp/map.el: Better docstrings.
34239 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
34241         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
34243 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
34245         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
34247         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
34249         Fix a false negative in `map-elt' with alists and values being nil
34250         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
34251         found but its associated value is nil, do not return the default
34252         value.
34253         * test/automated/map-tests.el: Add a regression test.
34255 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
34257         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
34259         Do not signal an error when trying to delete a key from an array
34260         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
34261         the key is present to avoid signaling an error.
34262         * test/automated/map-tests.el: Add a test for deleting non-existing
34263         keys from maps.
34265         * lisp/emacs-lisp/map.el: Better docstring.
34267         Minor improvement in map-elt
34268         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
34269         doing a lookup in arrays, but check the boundaries of the array
34270         instead.
34271         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
34272         and a negative integer as key.
34274 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
34276         * test/automated/map-tests.el: Refactoring of test methods.
34278         * test/automated/map-tests.el: Renamed from map-test.el.
34280 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
34282         * lisp/emacs-lisp/map.el (map-into): Better error message.
34284         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
34286         Throw an error when converting a map into an unknown map type
34287         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
34288         not valid.
34289         * test/automated/map-tests.el: Add a regression test.
34291         New library map.el similar to seq.el but for mapping data structures.
34292         * test/automated/map-tests.el: New file.
34293         * lisp/emacs-lisp/map.el: New file.
34295 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
34297         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
34298         there's no explicit tag name (bug#20629).
34300 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
34302         Remove format2
34303         * src/editfns.c, src/lisp.h (format2): Remove.
34304         It is more trouble than it's worth, now that we have CALLN.
34305         This is just a minor refactoring.
34306         * src/buffer.c (Fkill_buffer):
34307         * src/dbusbind.c (XD_OBJECT_TO_STRING):
34308         * src/fileio.c (barf_or_query_if_file_exists):
34309         Adjust to format2 going away.
34311         Don't misencode C-generated messages
34312         Also, be more consistent about calls to 'Fmessage' vs 'message'.
34313         * src/alloc.c (Fgc_status):
34314         Prefer AUTO_STRING to build_string for Fmessage call.
34315         * src/data.c (Fmake_variable_buffer_local)
34316         (Fmake_local_variable, Fmake_variable_frame_local):
34317         * src/doc.c (store_function_docstring):
34318         Use Fmessage, not message, since the argument can contain
34319         non-ASCII characters, and this can cause the resulting message
34320         to be incorrectly encoded for the current environment.
34321         * src/fns.c (maybe_resize_hash_table):
34322         * src/xselect.c (x_clipboard_manager_save_all):
34323         Use message, not Fmessage, since Fmessage's power isn't needed here.
34324         * src/process.c (Fmake_network_process): Reword message to avoid %s.
34325         * src/xdisp.c (vmessage): Document restrictions on message contents.
34326         (message_nolog) [false]: Remove unused code.
34328         Use \r rather than ^M in string literals
34329         This is less likely to cause problems on platforms that
34330         use CRLF (or CR!) termination for lines.
34332         Update .gitattributes to match current sources
34333         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
34334         * .gitattributes: Accommodate tests that insist on DOS format.
34335         Remove test/automated/data/decompress/foo-gzipped.
34336         Add etc/e/eterm-color.
34338 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
34340         * doc/emacs/mule.texi (Modifying Fontsets):
34341         Document face-ignored-fonts.  (Bug#20628)
34343         Add etags test for the new -Q option
34344         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
34345         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
34346         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
34347         test-case changes below.
34348         * test/etags/ETAGS.good_6: New file.
34349         * test/etags/cp-src/x.cc: New file.
34350         * test/etags/Makefile (CPSRC): Add x.cc.
34351         (check): Add one more test, for -Q.
34353 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
34355         Use list for the tags completion table, not obarray
34356         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
34357         list instead of an obarray
34358         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
34359         (tags-completion-table): Combine those lists.
34360         (tags-completion-table): Update the docstring.
34362 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
34364         Restore EOL format testing in etags
34365         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
34366         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
34367         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
34368         test-case changes below.
34369         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
34370         * test/etags/cp-src/c.C (B): Add back stray CR character.
34371         * test/etags/c-src/dostorture.c: Add back.
34372         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
34374 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
34376         Declare Emacs on MS-Windows to be DPI-aware
34377         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
34378         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
34379         This avoids Windows entering compatibility mode for Emacs,
34380         which causes fonts to look less nice.
34382 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
34384         Improve Tramp traces
34385         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
34386         * lisp/net/tramp.el (tramp-debug-message): Use it.
34388 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
34390         backup-buffer minor reworking of internals
34391         * lisp/files.el (backup-buffer): Rework to avoid a couple of
34392         unused locals inadvertently introduced in the previous change.
34394         backup-buffer now reports .emacs.d/%backup% ills
34395         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
34396         fails due to disk space exhaustion or whatever, do not pretend
34397         that it succeeded.  More generally, do a better job of checking
34398         for I/O failures, and limit the scope of the condition-case to
34399         just the operations where file errors should be caught and ignored
34400         (Bug#20595).  Also, don't bother trying to delete later backups if
34401         an earlier deletion fails, as this is a sign of trouble and it's
34402         better to stop when there's trouble.
34404         copy-file now truncates output after writing
34405         * src/fileio.c (Fcopy_file): Truncate output after writing rather
34406         than before.  This is more likely to work than truncation before
34407         writing, if the file system is out of space or the user is over
34408         disk quota (Bug#20595).  Also, check for read errors.
34410 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
34412         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
34413         Don't load descriptors from directories above the package directories.
34415 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
34417         Merge from gnulib
34418         This incorporates the following (Bug#20681):
34419         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
34420         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
34421         * lib/set-permissions.c: Copy from gnulib.
34423 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
34425         Improve Tramp traces
34426         * lisp/net/tramp.el (tramp-call-process-region): New defun.
34427         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
34429 2015-05-29  Glenn Morris  <rgm@gnu.org>
34431         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
34433 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
34435         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
34436         The signature was changed in the cairo branch, merged on 2015-05-23.
34437         This oversight broke compiling only the non-toolkit X version.
34439 2015-05-29  Samer Masterson  <samer@samertm.com>
34441         * doc/lispref/os.texi: Update initial-buffer-choice docs.
34443 2015-05-29  Glenn Morris  <rgm@gnu.org>
34445         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
34446         Mark as an expected failure.
34448 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
34450         Change package test to look for curved quotes
34451         * test/automated/package-test.el (package-test-describe-package)
34452         (package-test-signed): Search for curved single quotes as well as
34453         for grave accent and apostrophe.
34455 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
34457         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
34458         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
34460 2015-05-28  Samer Masterson  <samer@samertm.com>
34462         Show files when `initial-buffer-choice' is non-nil
34463         * lisp/startup.el (command-line-1): When Emacs is given a file as an
34464         argument and `initial-buffer-choice' is non-nil, display both the file
34465         and `initial-buffer-choice'.  For more than one file, show
34466         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
34467         commands out of the command line arg parser.
34468         (initial-buffer-choice): Clarify docstring.
34470 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
34472         Fix last commit
34473         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
34474         (gnulib module qcopy-acl): Add back, as it is harmless.  This
34475         minimizes differences wrt lib/gnulib.mk.
34477         Fix the MS-Windows build as followup to gnulib update
34478         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
34479         set-permissions.c, as they don't compile on MinGW.
34480         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
34482 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
34484         Revert my change to gnus-art.el
34485         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
34486         It wasn't that important, and it caused a Gnus build to fail.  See:
34487         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
34489         New minor mode Electric Quote
34490         This lets you easily insert quotes ‘like this’ by typing
34491         quotes `like this', and similarly you can easily insert
34492         quotes “like this” by typing quotes ``like this'' (Bug#20545).
34493         * doc/emacs/basic.texi (Inserting Text):
34494         * doc/emacs/modes.texi (Minor Modes):
34495         * etc/NEWS: Document it.
34496         * doc/emacs/text.texi (Quotation Marks): New section.
34497         * lisp/electric.el (electric-quote-comment)
34498         (electric-quote-string, electric-quote-paragraph):
34499         New custom vars.
34500         (electric--insertable-p)
34501         (electric-quote-post-self-insert-function): New functions.
34502         (electric-quote-mode, electric-quote-local-mode): New minor modes.
34503         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
34504         Add curved single quotes to electric-pair-text-pairs.
34505         Set electric-quote-string in this buffer.
34507         A few more doc string fixes (Bug#20385)
34509         Accept curved quotes in doc strings
34510         * lisp/info-look.el (info-lookup-guess-custom-symbol):
34511         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
34513         Generate curved quotes in pseudo-info nodes
34514         * lisp/info.el (Info-virtual-index-find-node)
34515         (Info-virtual-index, Info-apropos-find-node, info-apropos):
34516         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
34518         Fix minor quoting problems in doc strings
34519         Most of these fixes involve escaping grave accents that are
34520         actually intended to be grave accents, not left quotes.
34521         (Bug#20385)
34523         Support curved quotes in doc strings
34524         Emacs's traditional doc string style has been to quote symbols
34525         `like this'.  This worked well on now-obsolete terminals where
34526         ` and ' were symmetric quotes, but nowadays curved quotes
34527         ‘like this’ look better.  Support quoting the new way too.
34528         (Bug#20385)
34529         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
34530         ‘like-this’ as well as `like-this'.
34531         * etc/NEWS: Mention this.
34532         * lisp/cedet/mode-local.el (overload-docstring-extension)
34533         (mode-local-print-binding, mode-local-describe-bindings-2):
34534         * lisp/cus-theme.el (describe-theme-1):
34535         * lisp/descr-text.el (describe-text-properties-1, describe-char):
34536         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
34537         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
34538         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
34539         (eieio-help-constructor):
34540         * lisp/emacs-lisp/package.el (describe-package-1):
34541         * lisp/faces.el (describe-face):
34542         * lisp/help-fns.el (help-fns--key-bindings)
34543         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
34544         (help-fns--interactive-only, describe-function-1):
34545         (describe-variable):
34546         * lisp/help.el (describe-mode):
34547         * lisp/international/mule-cmds.el (describe-input-method)
34548         (describe-language-environment):
34549         * lisp/international/mule-diag.el (describe-character-set)
34550         (print-coding-system-briefly, list-input-methods)
34551         (list-input-methods-1):
34552         Insert curved quotes rather than grave accent and apostrophe.
34553         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
34554         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
34555         (checkdoc-proper-noun-region-engine):
34556         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
34557         (lisp-cl-font-lock-keywords-2):
34558         * lisp/finder.el (finder-font-lock-keywords):
34559         * lisp/gnus/gnus-art.el (gnus-button-alist):
34560         * lisp/help-fns.el (help-do-arg-highlight)
34561         (describe-function-1, describe-variable):
34562         * lisp/help-mode.el (help-xref-symbol-regexp)
34563         (help-xref-info-regexp, help-xref-url-regexp):
34564         * lisp/help.el (describe-mode):
34565         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
34566         * lisp/wid-edit.el (widget-documentation-link-regexp):
34567         Parse symbols quoted ‘like-this’ as well as `like-this'.
34568         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
34569         Add "‘" and "’" to electric-pair-text-pairs.
34570         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
34571         (elisp-completion-at-point, elisp--preceding-sexp):
34572         Also treat "‘" and "’" as quoting chars.
34574         substitute-command-keys now curves quotes
34575         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
34576         * doc/lispref/help.texi (Keys in Documentation):
34577         * etc/NEWS: Document this.
34578         * src/doc.c (Fsubstitute_command_keys): Implement it.
34580 2015-05-28  Glenn Morris  <rgm@gnu.org>
34582         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
34583         (rmail-summary-by-topic, rmail-summary-by-senders):
34584         No longer strip leading/trailing whitespace.
34586         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
34587         (f90-no-block-limit): Add "enum".  (Bug#20680)
34588         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
34589         New tests.
34591 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
34593         * lisp/isearch.el (isearch--current-buffer): Give a default value.
34594         Un-revert changes mistakenly dropped by f9fabb2b.
34596 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
34598         Merge from gnulib
34599         This incorporates:
34600         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
34601         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
34602         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
34603         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
34604         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
34605         2015-05-26 stdio: fix probe on mingw under gcc 5.1
34606         * admin/merge-gnulib (GNULIB_MODULES):
34607         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
34608         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
34609         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
34610         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
34611         Get latest versions from gnulib.
34612         * lib/get-permissions.c, lib/set-permissions.c: New files.
34613         * lib/gnulib.mk, m4/gnulib-comp.m4:
34614         Regenerate.
34615         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
34617 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
34619         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
34620         process here.
34621         (vc-do-command): Rather than here (bug#20608).
34623 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
34625         Avoid gratuitous delete-dups in face-at-point
34626         * lisp/faces.el (face-at-point): Do not compute the properly
34627         ordered, duplicate-free list if only a single value is
34628         requested anyway.  (Bug#20519)
34630         Show the exact C-x 8 RET invocation in describe-char
34631         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
34632         invocation instead of a template.  (Bug#20522)
34634 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
34636         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
34637         (package-menu--post-refresh): Call `tabulated-list-print' with the
34638         UPDATE argument.  This only affects the refresh action, the revert
34639         action still erases tags.
34640         (package-menu-get-status): Change `assq' to `assoc'.
34641         (package-menu--mark-upgrades-1): New function.
34642         (package-menu--mark-upgrades-pending): New variable.
34643         (package-menu-mark-upgrades): Use them to delay marking until
34644         after refresh is done.
34645         (package-menu--post-refresh): Call mark-upgrades-1 if
34646         mark-upgrades-pending is non-nil.
34648 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
34650         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
34651         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
34652         (commit 3953c4be2816537be95520605d45b866dc731f4b).
34654 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
34656         * lisp/isearch.el (isearch--current-buffer): New var.
34657         (isearch-update): Set cursor-sensor-inhibit here.
34658         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
34659         (bug#20532).
34661         Change inhibit-point-motion-hooks to t
34662         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
34663         to t and document it as obsolete.
34665 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
34667         Support ZIP files that use Zip64 extensions
34668         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
34669         format of central directory offsets used by Zip64 extensions.
34670         (Bug#20665)
34672 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
34674         New test tramp-test30-make-auto-save-file-name
34675         * test/automated/tramp-tests.el
34676         (tramp-test30-make-auto-save-file-name): New test.
34677         (tramp-test31-special-characters)
34678         (tramp-test31-special-characters-with-stat)
34679         (tramp-test31-special-characters-with-perl)
34680         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
34681         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
34682         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
34683         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
34685         Improve tramp-handle-make-auto-save-file-name
34686         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
34687         (tramp-handle-make-auto-save-file-name): Let native
34688         `make-auto-save-file-name' use `auto-save-file-name-transforms',
34689         if `tramp-auto-save-directory' is not set.
34691 2015-05-27  Glenn Morris  <rgm@gnu.org>
34693         No longer set dired-directory in eshell.  (Bug#16477)
34694         * lisp/eshell/esh-mode.el (eshell-mode):
34695         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
34697         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
34699         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
34700         * lisp/progmodes/cc-mode.el (c-mode-help-address):
34701         Change to submit@debbugs.
34702         (c-mode-bug-package): New constant.
34703         (mail-position-on-field): Declare.
34704         (c-submit-bug-report): Insert X-Debbugs-Package header.
34705         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
34706         Mention debbugs.gnu.org.
34708 2015-05-26  Glenn Morris  <rgm@gnu.org>
34710         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
34711         (rmail-summary-by-recipients, rmail-summary-by-topic)
34712         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
34713         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
34715 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
34717         Handle curved quotes in info files
34718         * lisp/calc/calc-help.el (calc-describe-thing):
34719         * lisp/info.el (Info-find-index-name)
34720         (Info-try-follow-nearest-node, Info-fontify-node):
34721         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
34722         In info files, process quotes ‘like this’ the same way we process
34723         quotes `like this'.  This catches a few places we missed earlier.
34725 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
34727         xref-prompt-for-identifier: Use a list value
34728         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
34729         value, to be interpreted as a list of commands.
34730         (xref--prompt-p): New function.
34731         (xref--read-identifier): Use it.
34733 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
34735         Teach MS-Windows font back-end return per-glyph ascent/descent
34736         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
34737         values.
34738         * src/w32font.c (w32font_text_extents): Compute, cache, and
34739         accumulate per-glyph ascent and descent values, instead of copying
34740         global values from the font.  If the values are not available from
34741         the font data, i.e., non-TTF fonts, fall back on font-global values.
34742         (compute_metrics): Compute and return per-glyph ascent and descent
34743         values, if returned by GetGlyphOutlineW, falling back on
34744         font-global values.  (Bug#20628)
34745         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
34746         height of rectangle to be drawn, to be compatible with
34747         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
34748         box, when per-glyph ascent/descent values are used.
34750 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
34752         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
34753         Don't sort if sorter is nil.
34755 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
34757         Fix Bug#20621
34758         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
34759         are major modes which set `auto-save-mode' on their own rules;
34760         Tramp shall not overwrite such settings.
34762 2015-05-26  Glenn Morris  <rgm@gnu.org>
34764         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
34765         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
34766         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
34767         Doc updates.
34768         (vc-dir-mode): Remove unnecessary autoload.
34770 2015-05-25  Philipp Stephani  <phst@google.com>
34772         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
34773         (xterm--extra-capabilities-type): Add `getSelection'.
34774         (xterm--query): Add `no-async' argument.
34775         (xterm--init-activate-get-selection): New function.
34776         (terminal-init-xterm): Use it.
34777         (xterm--init-modify-other-keys): Rename from
34778         terminal-init-xterm-modify-other-keys.
34779         (xterm--init-bracketed-paste-mode): Rename from
34780         terminal-init-xterm-bracketed-paste-mode.
34781         (xterm--init-activate-set-selection): Rename from
34782         terminal-init-xterm-activate-set-selection.
34783         (xterm--selection-char): New function.
34784         (gui-backend-set-selection): Use it.  Use the &context to only apply
34785         this method in terminals where we enabled the feature.
34786         (gui-backend-get-selection): New method.
34788 2015-05-25  Daniel Colascione  <dancol@dancol.org>
34790         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
34791         keyword constants to C++.
34793 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
34795         Make TAGS files more portable to MS-Windows
34796         * etc/NEWS: Document this.
34797         * lib-src/etags.c (readline_internal) [DOS_NT]:
34798         Don't treat CRs differently from GNUish hosts.
34799         * lisp/progmodes/etags.el (etags-goto-tag-location):
34800         Adjust STARTPOS to account for the skipped CRs in dos-style files.
34802 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
34804         Improve fix of bug#20634 in tramp-sh.el
34806 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
34808         Fix a typo in last commit
34809         * lib-src/etags.c (C_entries): Fix a typo.
34810         * test/etags/ETAGS.good_1:
34811         * test/etags/ETAGS.good_2:
34812         * test/etags/ETAGS.good_3:
34813         * test/etags/ETAGS.good_4:
34814         * test/etags/ETAGS.good_5:
34815         * test/etags/CTAGS.good: Update due to the change in etags.c.
34817         Fix tagging of class members in C-like OO languages
34818         * lib-src/etags.c (longopts): Add new option --class-qualify and
34819         its shorthand -Q.
34820         (print_help): Add help text for --class-qualify.
34821         (main): Add handling of -Q.
34822         (consider_token, C_entries) <omethodparm>: Append argument types
34823         to Objective C methods only if --class-qualify was specified.
34824         Qualify C++, Objective C, and Java class members with their class
34825         names only if --class-qualify was specified.
34826         (C_entries): If --class-qualify was not specified, remove the
34827         namespace and class qualifiers from tag names of C++ methods.
34828         This allows to use etags.el as xref back-end without the
34829         tag-symbol-match-p method, which greatly increases the number of
34830         potentially false positives.  (Bug#20629)
34831         * doc/man/etags.1: Update to document the new --class-qualify
34832         option.
34833         * test/etags/ETAGS.good_1:
34834         * test/etags/ETAGS.good_2:
34835         * test/etags/ETAGS.good_3:
34836         * test/etags/ETAGS.good_4:
34837         * test/etags/ETAGS.good_5:
34838         * test/etags/CTAGS.good: Update due to changes in etags.c.
34840 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
34842         (cl-generic-define-method): Side effects are evil (bug#20644)
34843         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
34844         cons-cells that might be used as keys in an `equal' hash-table.
34846 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
34848         Make erc timestamps visible again
34849         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
34850         Make timestamps visible again (if requested).
34852 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
34854         Fix last change in etags.c that broke tagging compresed files
34855         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
34856         quoting of decompression shell command for MS-Windows/MS-DOS.
34858 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
34860         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
34861         (Bug#20639)
34863 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
34865         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
34866         Fix typo in "Inhibit `epa-file-handler' in Tramp"
34867         (commit 89035e247591c8d688fce922b7079881aa110f33).
34869 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
34871         Fix IPv6 addresses in Tramp
34872         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
34873         Add square brackets around host name.
34875 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
34877         Inhibit `epa-file-handler' in Tramp (Bug#20634)
34878         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
34879         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
34880         `epa-file-handler'.
34882 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
34884         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
34885         (pcase-let): Document the behavior in case the pattern doesn't match.
34887 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
34889         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
34890         (tabulated-list-print): New optional argument, UPDATE.  If
34891         non-nil, the list is printed by only adding and deleting the
34892         changed entries, instead of erasing the whole buffer.  This method
34893         is much faster when few or no entries have changed.
34894         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
34895         * etc/NEWS: Document it.
34897         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
34898         (tabulated-list--get-sorter): New function.
34899         (tabulated-list-print): Restore window-line when remember-pos is
34900         passed and optimize away the `nreverse'.
34902 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
34904         Simpilify etags TEX mode scanning
34905         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
34906         Remove static vars.
34907         (TeX_commands): Deduce escapes here instead.
34908         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
34909         This removes the need for a reset_input call.
34911         Improve etags I/O error reporting
34912         * lib-src/etags.c:
34913         Don't include sys/types.h and sys/stat.h; no longer needed.
34914         (infilename): New static var.
34915         (process_file_name): Don't call 'stat'.  Instead, just open the
34916         file for reading and report any errors.  Don't bother making
34917         a copy of the file argument; it's not needed.  Be more careful to
34918         use the failing errno when reporting an error.
34919         Quote the real name better (though no perfectly)
34920         when passing it to the shell.
34921         (reset_input): New function, which reports I/O errors.
34922         All uses of 'rewind' changed to use this function.
34923         (perhaps_more_input): New function, which also checks for
34924         I/O errors.  All uses of 'feof' changed to use this function.
34925         (analyze_regex): Report an error if fclose fails.
34926         (readline_internal): Report an error if getc fails.
34927         (etags_mktmp): Return an error if close fails.
34929         etags.c: avoid side effects in 'if'
34930         * lib-src/etags.c (process_file_name, Perl_functions)
34931         (TEX_decode_env): Hoist side effects into previous statement.
34933         .gitignore tweaks
34934         * .gitignore: Ignore all *.stamp files.  Sort.
34935         Ignore [0-9]*.txt (commonly used name for git patches)
34936         and /vc-dwim-log-* (vc-dwim temporary).
34938 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
34940         Fix last change in etags.c, which failed the test suite
34941         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
34942         before the last change.
34944 2015-05-23  Glenn Morris  <rgm@gnu.org>
34946         Remove charset map files from repository, generate in first bootstrap
34947         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
34948         (all): Create the stamp file.
34949         (extraclean): Delete the stamp file.
34950         * src/Makefile.in (lispintdir, charsets): New variables.
34951         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
34952         New rules.
34953         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
34954         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
34955         * etc/charsets/*.map: Remove from repository.
34957 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
34959         Cleanup etags.c to use locale-independent code
34960         Although this doesn't alter behavior (as etags doesn't use
34961         setlocale), the new version is more clearly locale-independent and
34962         the executable is a bit smaller on my platform.
34963         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
34964         Include <c-ctype.h> instead of <ctype.h>.
34965         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
34966         (begtk, midtk):
34967         Remove; no longer needed.
34968         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
34969         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
34970         c_islower, c_tolower, respectively.
34971         (notinname, begtoken, intoken, endtoken): Rewrite as functions
34972         instead of macros, and initialize the tables at compile-time
34973         rather than at run-time.
34975         Put default action first in src/Makefile
34976         * src/Makefile.in (all): Put this rule before lisp.mk.
34977         That way, plain 'make' works in the src directory again.
34979 2015-05-23  Glenn Morris  <rgm@gnu.org>
34981         * Makefile.in: Fix extraclean rule.
34982         (extraclean_dirs): New.
34983         (extraclean): Use it.
34985 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
34987         Avoid compiler warning in image.c on MS-Windows
34988         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
34989         warning in image.c.
34991 2015-05-23  Glenn Morris  <rgm@gnu.org>
34993         Fix --without-toolkit-scroll-bars builds.
34994         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
34995         Add new argument to x_clear_area1.
34996         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
34997         Update x_clear_area arguments.
34999         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
35000         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
35001         Change to included version.
35002         (LOCAL, local, totalclean): Remove.
35003         (extraclean): Delete all generated files.
35005 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
35007         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
35008         CVS/Entries exists.
35010         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
35012         * lisp/progmodes/etags.el (tags-completion-at-point-function):
35013         Don't trust the find-tag function.
35015 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
35017         Pacify --enable-gcc-warnings
35018         * src/frame.h (x_query_color): Remove redundant extern decl.
35019         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
35020         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
35021         (ftcrfont_text_extents, ftcrfont_draw):
35022         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
35023         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
35024         (x_ins_del_lines, frame_highlight, frame_unhighlight)
35025         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
35026         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
35027         (x_update_window_begin, x_connection_closed)
35028         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
35029         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
35030         (*x_gc_get_ext_data, x_extension_initialize)
35031         (x_cr_accumulate_data):
35032         Remove redundant static decl.  Many of these GCC doesn't complain
35033         about, but we might as well clean out the duplication while we're
35034         in the neighborhood.
35035         * src/xterm.c (x_fill_trapezoid_for_relief):
35036         Remove decl of nonexistent function.
35038 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
35040         Replace gui-method macros with cl-generic with &context
35041         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
35042         (gui-method-declare, gui-call): Remove.
35043         (frame-creation-function): Use cl-defgeneric.
35044         (make-frame): Adjust callers.
35045         * lisp/menu-bar.el (menu-bar-edit-menu):
35046         Use gui-backend-selection-exists-p.
35047         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
35048         (gui-backend-get-selection): New cl-generic to replace
35049         gui-get-selection method.
35050         (gui-backend-set-selection): New cl-generic to replace
35051         gui-set-selection method.
35052         (gui-selection-owner-p): New cl-generic to replace
35053         gui-selection-owner-p method.
35054         (gui-backend-selection-exists-p): New cl-generic to replace
35055         gui-selection-exists-p method.  Adjust all callers.
35056         * lisp/server.el (server-create-window-system-frame): Don't ignore
35057         window-system spec even when unsupported.
35058         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
35059         * lisp/startup.el (handle-args-function, window-system-initialization):
35060         Use cl-defgeneric.
35061         (command-line): Adjust calls accordingly.
35062         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
35063         a window-system-initialization method.
35064         (handle-args-function, frame-creation-function): Use cl-defmethod.
35065         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
35066         (gui-get-selection): Use cl-defmethod on the new functions instead.
35067         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
35068         a gui-backend-get-selection method.
35069         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
35070         Use cl-defmethod on the new functions instead.
35071         (msdos-window-system-initialization): Turn into
35072         a window-system-initialization method.
35073         (frame-creation-function, handle-args-function): Use cl-defmethod.
35074         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
35075         a window-system-initialization method.
35076         (handle-args-function, frame-creation-function): Use cl-defmethod.
35077         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
35078         (gui-get-selection): Use cl-defmethod on the new functions instead.
35079         * lisp/term/x-win.el (x-window-system-initialization): Turn into
35080         a window-system-initialization method.
35081         (handle-args-function, frame-creation-function): Use cl-defmethod.
35082         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
35083         (gui-get-selection): Use cl-defmethod on the new functions instead.
35084         * lisp/term/xterm.el (xterm--set-selection): Turn into
35085         a gui-backend-set-selection method.
35086         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
35087         (Fns_selection_owner_p): Remove unused arg `terminal'.
35088         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
35090 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
35092         Revert "Fix etags Bug#20629 that broke C++ support"
35093         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
35095 2015-05-23  Jan D  <jan.h.d@swipnet.se>
35097         Fix etags Bug#20629 that broke C++ support
35098         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
35099         Revert commit from Sun May 10 (Bug#20629).
35101         Merge branch 'cairo'.
35102         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
35103         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
35105         Merge branch 'master' into cairo
35107         Fixes to compile cairo branch without cairo
35108         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
35109         first argument.
35110         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
35111         USE_CAIRO.
35113 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
35115         * lisp/emacs-lisp/package.el: Always update selected-packages.
35116         (package--update-selected-packages): New function.
35117         (package-menu-execute): Use it before starting the transaction,
35118         this way the list of selected packages is updated even when the
35119         transaction fails.
35120         (package-menu--perform-transaction): Don't edit selected-packages.
35122 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
35124         Fix etags reading of compressed files
35125         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
35126         Include fcntl.h, for O_CLOEXEC.
35127         (process_file_name): Don't use 'popen', whose streams cannot be
35128         rewound.  Instead, uncompress the file to a temporary file,
35129         created by 'etags_mktmp', and read from that as usual.
35130         (etags_mktmp): New function.
35131         * test/etags/ETAGS.good_1:
35132         * test/etags/ETAGS.good_2:
35133         * test/etags/ETAGS.good_3:
35134         * test/etags/ETAGS.good_4:
35135         * test/etags/ETAGS.good_5: Update to be consistent with latest
35136         changes in etags.c regarding reading compressed files.
35138         Improve documentation of 'set-fontset-font'
35139         * doc/lispref/display.texi (Fontsets): Document the value of nil
35140         for the 3rd argument of 'set-fontset-font'.
35142         Fix documentation of forward-line
35143         * src/cmds.c (Fforward_line): Clarify the return value if the line
35144         at end of accessible portion of the buffer has no newline.
35145         * doc/lispref/positions.texi (Text Lines): Document what happens
35146         if the line at end of accessible portion of buffer has no newline.
35147         (Bug#20587)
35149 2015-05-22  Glenn Morris  <rgm@gnu.org>
35151         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
35153         * admin/charsets/mapconv (LC_ALL): Set to C.
35155         * Makefile.in: Add admin/charsets into top-level clean rules.
35156         (clean): Add admin/charsets.
35157         (maybeclean_dirs): New variable.
35158         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
35160         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
35162 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
35164         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
35166 2015-05-22  Glenn Morris  <rgm@gnu.org>
35168         Generate admin/charsets Makefile via configure, and make more portable
35169         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
35170         (admin/charsets/Makefile): Generate it.
35171         * admin/charsets/Makefile.in: Rename from Makefile.
35172         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
35173         New variables, set by configure.
35174         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
35175         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
35176         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
35177         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
35178         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
35179         (all): Declare PHONY.
35180         (local): New PHONY target.
35181         (map_template): New template.  Use to define short PHONY aliases.
35182         (*.map): Add directory prefixes to targets and prerequisites.
35183         Respect make verbosity.
35184         (JISC6226.map): Replace non-portable sed append without newline.
35185         (install): Remove rule.
35186         (clean): Only delete temporary sedscript.
35187         (bootstrap-clean, distclean, maintainer-clean, extraclean)
35188         (totalclean): New PHONY rules.
35189         * admin/charsets/mapconv (BASE): Replace basename with expr.
35190         (FILE): Add "mapfiles" subdirectory.
35191         (AWK): New variable.  Use throughout in place of "awk".
35192         (main): Use "gunzip -c" in place of "zcat".
35193         Don't leave whitespace before "p", for older sed.
35194         * admin/charsets/mapfiles/PTCP154: Add final newline,
35195         to make older sed versions happy.
35197 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
35199         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
35200         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
35201         (auto-revert-notify-watch-descriptor): Use defvar-local.
35202         (find-file-hook, auto-revert-tail-mode)
35203         (auto-revert-notify-add-watch): Use setq-local.
35204         (auto-revert-notify-add-watch): Don't call make-local-variable on
35205         kill-buffer-hook (bug#20601).
35207 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
35209         Change defgeneric so it doesn't completely redefine the function
35210         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
35211         previously defined methods.
35212         (cl-generic-define-method): Let-bind purify-flag instead of
35213         using `fset'.
35214         (cl--generic-prefill-dispatchers): Only define during compilation.
35215         (cl-method-qualifiers): Remove redundant alias.
35216         (help-fns-short-filename): Silence byte-compiler.
35217         * test/automated/cl-generic-tests.el:
35218         Adjust to new defgeneric semantics.
35220 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
35222         * lisp/emacs-lisp/package.el (package-menu-execute):
35223         Remove reference to remove-dups.
35225 2015-05-21  kwhite  <kwhite@gnu.org>
35227         * lisp/erc/erc.el: Hide network/channel messages.
35228         (erc-network-hide-list, erc-channel-hide-list): New lists to define
35229         message types per network/channel.
35230         (erc-add-targets): New function to parse list of targets.
35231         (erc-hide-current-message-p): Modify to check for new targets.
35233 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
35235         Don't quote nil and t in doc strings
35236         This is as per "Tips for Documentation Strings" in the elisp manual.
35237         For consistency, do the same in diagnostics and comments.
35239 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
35241         Fix a minor problem with mouse-face on mode line
35242         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
35243         mouse face also if the mouse pointer hovers above mode-line glyphs
35244         that don't come from any Lisp string.  (Bug#20620)
35246 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
35248         * lisp/emacs-lisp/package.el: Fix selected-package logic.
35249         (package-menu-execute): Mark as selected all non-upgrade packages
35250         being installed.
35251         (package-menu--perform-transaction): Don't mark anything.
35253         * lisp/emacs-lisp/package.el: Mode-line progress report.
35254         (package-menu--transaction-status): New variable.
35255         (package-menu-mode, package-menu--perform-transaction): Use it.
35257         * lisp/emacs-lisp/package.el: Better transaction messages.
35258         (package-menu--partition-transaction): New function.
35259         (package-menu--prompt-transaction-p, package-menu-execute):
35260         Use it.
35261         (package-menu--perform-transaction): Don't do any messaging.
35263         * lisp/emacs-lisp/package.el: Revert async package transactions.
35264         (package-menu-async): Update doc.
35265         (package-install-from-archive, package-download-transaction)
35266         (package-install, package-menu--perform-transaction)
35267         (package-menu-execute): Remove asynchronous functionality.
35269 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
35271         Revert doc string changes to f90.el
35272         Problem reported by Glenn Morris in:
35273         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
35274         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
35275         Revert recent changes to doc strings, as it's intended that they
35276         use grave accent, not quote.
35278 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
35280         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
35281         Improve parameter name.
35283         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
35285 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
35287         Don't require help-fns when not needed
35288         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
35289         * lisp/emacs-lisp/elint.el:
35290         Don't require help-fns at the top level
35291         * lisp/emacs-lisp/advice.el (ad-arglist):
35292         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
35293         Don't require help-fns.  (Bug#17001)
35295 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
35297         Fix slash collapsing in etags on MS-Windows
35298         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
35299         MS-Windows code from the Posix code, and support collapsing both
35300         forward- and back-slashes on MS-Windows.  Fixes a regression found
35301         by the test suite.
35303         Improve documentation of glyphless-char-display
35304         * doc/lispref/display.texi (Glyphless Chars): Improve
35305         documentation of glyphless character display.
35307         Fix "acronym" display of glyphless characters on w32
35308         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
35309         ignore "acronym" substitutes of 1 character for glyphless characters.
35311 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
35313         Add an automated test for let-when-compile
35314         * test/automated/subr-tests.el (let-when-compile): New test.
35316         Add let-when-compile macro instead of using pcase-let
35317         * lisp/subr.el (let-when-compile): New let-like macro that makes its
35318         bindings known to macros like `eval-when-compile' in the body.
35319         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
35320         a `let-when-compile'.  Also comment out the unused lexical var
35321         `el-kws-re'.
35322         The change greatly improves readability, while providing almost the
35323         same (even shorter) byte code: instead of pre-evaluating 10 variables,
35324         tossing them into a list, and destructuring that list a full screen
35325         page later, the variables are simply bound as they are evaluated,
35326         wrapped individually in `eval-when-compile'.
35328 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
35330         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
35331         (package-delete-button-action): New function.
35332         (describe-package-1): Add Delete button.
35334         * lisp/emacs-lisp/package.el: Better dependency description.
35335         (package--used-elsewhere-p): New optional arg, ALL, and return
35336         package-desc objects instead of names.
35337         (package-delete): Update accordingly.
35338         (describe-package-1): Describe which packages require the package.
35340 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
35342         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
35343         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
35344         Fix doc-string.
35346         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
35347         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
35348         (switch-to-buffer): If the selected window is strongly dedicated
35349         to its buffer, signal error before prompting for buffer name.
35350         Handle `switch-to-buffer-in-dedicated-window'.
35351         * doc/lispref/windows.texi (Switching Buffers):
35352         Document `switch-to-buffer-in-dedicated-window'.
35354 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
35356         Prefer "this" to “this” in doc strings
35357         This mostly just straightens quotes introduced in my previous patch.
35358         Suggested by Dmitry Gutov in:
35359         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
35360         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
35361         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
35362         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
35363         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
35364         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
35365         Prefer straight double quotes to curved double quotes in doc strings.
35367         Fix minor quoting problems in doc strings
35368         These were glitches regardless of how or whether we tackle the
35369         problem of grave accent in doc strings.
35370         * lisp/calc/calc-aent.el (math-restore-placeholders):
35371         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
35372         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
35373         * lisp/leim/quail/hebrew.el ("hebrew-new")
35374         ("hebrew-biblical-sil"):
35375         * lisp/leim/quail/thai.el ("thai-kesmanee"):
35376         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
35377         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
35378         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
35379         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
35380         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
35381         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
35382         (semantic-tag-components):
35383         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
35384         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
35385         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
35386         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
35387         * lisp/emacs-lisp/generator.el (iter-next):
35388         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
35389         (gnus-article-mode-syntax-table):
35390         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
35391         * lisp/net/soap-client.el (soap-wsdl-get):
35392         * lisp/net/telnet.el (telnet-mode):
35393         * lisp/org/org-compat.el (org-number-sequence):
35394         * lisp/org/org.el (org-remove-highlights-with-change)
35395         (org-structure-template-alist):
35396         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
35397         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
35398         (handwrite-12pt, handwrite-13pt):
35399         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
35400         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
35401         * lisp/progmodes/verilog-mode.el (verilog-tool)
35402         (verilog-string-replace-matches, verilog-preprocess)
35403         (verilog-auto-insert-lisp, verilog-auto-insert-last):
35404         * lisp/textmodes/makeinfo.el (makeinfo-options):
35405         * src/font.c (Ffont_spec):
35406         Fix minor quoting problems in doc strings, e.g., missing quote,
35407         ``x'' where `x' was meant, etc.
35408         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
35409         Fix minor quoting problem in other string.
35410         * lisp/leim/quail/ethiopic.el ("ethiopic"):
35411         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
35412         Omit unnecessary quotes.
35413         * lisp/faces.el (set-face-attribute, set-face-underline)
35414         (set-face-inverse-video, x-create-frame-with-faces):
35415         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
35416         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
35417         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
35418         * lisp/net/tramp.el (tramp-methods):
35419         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
35420         * lisp/textmodes/artist.el (artist-ellipse-right-char)
35421         (artist-ellipse-left-char, artist-vaporize-fuzziness)
35422         (artist-spray-chars, artist-mode, artist-replace-string)
35423         (artist-put-pixel, artist-text-see-thru):
35424         * lisp/vc/ediff-util.el (ediff-submit-report):
35425         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
35426         Use double-quotes rather than TeX markup in doc strings.
35427         * lisp/skeleton.el (skeleton-pair-insert-maybe):
35428         Reword to avoid the need for grave accent and apostrophe.
35429         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
35430         Don't use grave and acute accents to quote.
35432 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
35434         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
35435         Silence compiler.
35437 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
35439         Try to port new etags tests to MS-Windows
35440         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
35441         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
35442         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
35443         Adjust to test-case changes below.
35444         * test/etags/Makefile (CSRC): Remove dostorture.c.
35445         Whatever it was trying to test, wasn't working portably.
35446         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
35447         just a line-ending problem.
35448         * test/etags/c-src/dostorture.c: Remove.
35449         * test/etags/cp-src/c.C: Remove stray CR.
35450         * test/etags/html-src/algrthms.html: Remove trailing CRs.
35451         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
35452         but if someone edits it later it should stay UTF-8-compatible.
35454 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
35456         Fix display of overlapping window-specific overlays
35457         * src/keyboard.c (adjust_point_for_property): When adjusting point
35458         due to display strings, ignore overlays that are specific to
35459         windows other than the currently selected one.
35460         * src/xdisp.c (handle_single_display_spec): If the display
35461         property comes from an overlay, arrange for buffer iteration to
35462         resume only after the end of that overlay.  (Bug#20607)
35464 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
35466         New command icomplete-force-complete-and-exit
35467         * lisp/icomplete.el (icomplete-force-complete-and-exit):
35468         New command
35469         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
35470         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
35471         (icomplete-minibuffer-map): Bind C-j to it.
35472         (icomplete-forward-completions, icomplete-backward-completions):
35473         Mention the new command in the docstring.
35474         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
35475         Revert the previous fix for bug#17545.
35477 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
35479         Fix last commit
35481         In Elisp manual explain how to override window manager positioning
35482         (Bug#20552)
35483         * doc/lispref/frames.texi (Position Parameters): Give example of
35484         how to override a window manager positioning decision.
35486         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
35487         * src/frame.c (Fdelete_frame): In doc-string mention that frame
35488         can't be deleted if it has a surrogate minibuffer.
35489         * doc/lispref/frames.texi (Minibuffers and Frames)
35490         (Deleting Frames): Explain "surrogate minibuffer frames".
35492         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
35494 2015-05-18  Glenn Morris  <rgm@gnu.org>
35496         Add option to ignore commit lines matching a pattern in ChangeLog
35497         * build-aux/gitlog-to-changelog: Add --ignore-line option.
35498         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
35500 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
35502         Don't skip new etags tests on non-UTF-8 hosts
35503         Problem reported by Eli Zaretskii for MS-Windows.
35504         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
35505         (LC_ALL): Set to C if the current locale isn't UTF-8.
35506         (.PHONY): Remove ediff_1 thru ediff_5.
35507         (check): Always run.
35509 2015-05-18  Glenn Morris  <rgm@gnu.org>
35511         * lisp/calculator.el (calculator-funcall):
35512         * lisp/textmodes/artist.el (artist-spray-random-points):
35513         Use standard degree/radian conversion utilities.
35515         Further lisp-complete-symbol related cleanup.
35516         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
35517         Unadvertise non-functional argument.  Replace obsolete alias.
35519 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
35521         Add a test case for Maven warning ouput
35522         * test/automated/compile-tests.el
35523         (compile-tests--test-regexps-data): Add a case for Maven warning
35524         ouput.
35525         (compile--test-error-line): Check the compilation message type, if
35526         it's specified in the test data.
35528 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
35530         Update Maven compilation-mode entry to distinguish warnings
35531         * lisp/progmodes/compile.el
35532         (compilation-error-regexp-alist-alist): Update Maven entry to
35533         distinguish warnings (bug#20556).
35535 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
35537         * test/automated/sgml-mode-tests.el: New file.
35539 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
35541         Improve handling of the first Git revision
35542         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
35543         there's no next entry, delete until the end of the buffer.
35544         (log-view-end-of-defun-1): Stop at eob.
35545         * lisp/vc/vc-annotate.el
35546         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
35547         when previous-revision is nil.
35548         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
35549         with `--' to avoid ambiguity.
35550         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
35551         returned revision string.
35552         (vc-git-annotate-time): Expect `^' before the first revision.
35553         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
35554         REV1 is nil, and REV2 is not.
35555         * lisp/vc/vc.el: Update the description of the `diff' function.
35557 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
35559         Allow checkdoc to be called in batch
35560         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
35561         is non-nil, echo the error with `warn'.
35562         How it can be used in -batch:
35563         (with-current-buffer (find-file "checkdoc.el")
35564           (checkdoc-current-buffer t))
35566 2015-05-18  Glenn Morris  <rgm@gnu.org>
35568         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
35570 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
35572         * admin/notes/unicode: New section "binary files".
35574         Change new etags test to use UTF-8 encoding
35575         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
35576         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
35577         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
35578         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
35579         * test/etags/html-src/softwarelibero.html:
35580         Switch to UTF-8 encoding.
35581         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
35582         Remove Makefile, as it's too incestuous to have the test input
35583         include the build procedure.
35584         (UTF8_LOCALE, UTF_ENCODING): New macros.
35585         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
35586         (check): Skip if not UTF-8.
35587         (.PHONY): New rule.
35588         (FRC): Remove, as superseded by .PHONY.  All uses removed.
35589         (regexfile): Prefer printf to echo when outputting oddball chars.
35590         (.PRECIOUS): Remove, as these files are not built.
35592         Rename 'foo-gzipped' to 'foo.gz'
35593         * test/automated/data/decompress/foo.gz:
35594         Rename from test/automated/data/decompress/foo-gzipped,
35595         to make it easier for other tools to tell that it's compressed.
35596         * test/automated/zlib-tests.el (zlib--decompress):
35597         Adjust to renamed file.
35599 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
35601         Set up default-directory
35602         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
35603         binding for `v'.
35604         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
35605         appropriate value for default-directory.
35607 2015-05-17  Samer Masterson  <samer@samertm.com>
35609         * lisp/eshell/em-term.el (eshell-term-sentinel):
35610         No-op by default, only kills term buffer if
35611         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
35612         (eshell-destroy-buffer-when-process-dies): New custom to preserve
35613         previous behavior.
35615         eshell: Introduce new buffer syntax
35616         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
35617         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
35618         needed (Bug#19319).
35619         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
35620         (eshell-get-target): Remove shorthand-specific code.
35621         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
35622         '#<buffer-name>'.
35624 2015-05-17  Jan D  <jan.h.d@swipnet.se>
35626         Merge branch 'master' into cairo
35628 2015-04-26  Jan D  <jan.h.d@swipnet.se>
35630         Merge branch 'master' into cairo
35632         Add PBM support for cairo
35633         * src/image.c (xcolor_to_argb32): New function.
35634         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
35635         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
35636         XImagePtr if ! USE_CAIRO.
35637         (pbm_load): Add cairo support.
35639 2015-04-12  Jan D  <jan.h.d@swipnet.se>
35641         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
35642         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
35643         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
35644         x_free_cr_resources.
35646         Handle specified bg in images.  Use generic libpng code for PNGs.
35647         * src/image.c (get_spec_bg_or_alpha_as_argb)
35648         (create_cairo_image_surface): New functions when USE_CAIRO.
35649         (xpm_load): Call the above functions.  Handle XPM without mask
35650         when USE_CAIRO.
35651         (png_load_body): Handle USE_CAIRO case.
35652         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
35653         instead.
35654         (jpeg_load_body): Call create_cairo_image_surface.
35655         (gif_load, svg_load_image): Handle specified background, call
35656         create_cairo_image_surface.
35657         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
35659 2015-04-11  Jan D  <jan.h.d@swipnet.se>
35661         Support GIF and TIFF with cairo
35662         * configure.ac: Allow jpeg with cairo.
35663         Allow tiff and gif with cairo.
35664         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
35665         (tiff_load): Create cairo image surface if USE_CAIRO.
35666         (gif_load): Ditto.
35668         Support JPEG with USE_CAIRO
35669         * configure.ac: Allow jpeg with cairo.
35670         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
35672 2015-04-05  Jan D  <jan.h.d@swipnet.se>
35674         Support RSVG and cairo
35675         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
35676         * src/dispextern.h (struct image): Add cr_data2 if cairo.
35677         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
35678         (x_clear_image): Free cr_data and cr_data2 if set.
35679         (xpm_load): Assign data to cr_data2.
35680         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
35682 2015-04-03  Jan D  <jan.h.d@swipnet.se>
35684         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
35685         * configure.ac (HAVE_RSVG): Move after cairo.
35686         (USE_CAIRO): Disable rsvg, don't disable Xpm.
35687         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
35688         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
35689         don't return early.
35690         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
35691         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
35692         and create a surface.
35694         Tool tips for menus did not show any text.
35695         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
35696         tip frames, the geometry may be wrong.
35698         Merge branch 'master' into cairo, fixes tooltips not shown.
35700         Merge branch 'master' into cairo
35702         Add CAIRO_CFLAGS to lwlib/Makefile.in
35703         * Makefile.in (CAIRO_CFLAGS): Add.
35705 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
35707         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
35709 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
35711         Draw outermost line using black relief and erase corners also for cairo.
35712         * src/xterm.c [USE_CAIRO]: Include math.h.
35713         (enum corners) [USE_CAIRO]: New enum.
35714         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
35715         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
35716         than 1, draw the outermost line using the black relief.
35718         * src/xterm.c (x_fill_trapezoid_for_relief):
35719         Remove unnecessary cairo_close_path.
35721 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
35723         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
35725         * src/xterm.c (x_draw_stretch_glyph_string):
35726         Call x_reset_clip_rectangles instead of XSetClipMask.
35728         Use int instead of unsigned int for width and height args.
35729         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
35730         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
35731         width and height args.
35733         Modernize k&r cairo-related function declarations.
35734         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
35735         (xg_print_frames_dialog): Modernize k&r declarations.
35736         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
35737         (Fx_print_frames_dialog): Modernize k&r declarations.
35738         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
35739         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
35740         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
35741         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
35742         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
35743         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
35744         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
35745         (x_clear_area): Modernize k&r declarations.
35747         Implement wave-style variant of underlining for cairo.
35748         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
35749         (x_draw_underwave) [USE_CAIRO]: Use it.
35751         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
35752         instead of XFillRectangle.
35754 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
35756         Fix fringe bitmap initialization for cairo
35757         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
35758         data for cairo image surface.
35759         * src/xterm.c (x_cr_define_fringe_bitmap):
35760         Call cairo_surface_mark_dirty.
35762 2015-02-11  Jan D  <jan.h.d@swipnet.se>
35764         Add cairo drawing
35765         * configure.ac (with-cairo): New option.
35766         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
35767         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
35768         Output "Does Emacs use cairo?".
35769         * lisp/version.el (emacs-version): Add cairo version.
35770         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
35771         (FONT_OBJ): Add comment about ftcrfont.
35772         (ALL_CFLAGS): Add CAIRO_CFLAGS.
35773         (LIBES): Add CAIRO_LIBS.
35774         * src/dispextern.h (struct image): Add cr_data for cairo.
35775         (x_cr_init_fringe): Declare.
35776         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
35777         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
35778         * src/fringe.c (x_cr_init_fringe): New function name that shares code
35779         with w32_init_fringe.
35780         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
35781         * src/ftfont.c (ftfont_info_size); New global variable.
35782         (ftfont_open2): New extern function almost the same as old ftfont_open,
35783         but takes the font_object as argument.
35784         (ftfont_open): Build font object and call ftfont_open2.
35785         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
35786         * src/gtkutil.c (xg_clear_under_internal_border)
35787         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
35788         Only queue_draw if not cairo.  Change args to x_clear_area.
35789         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
35790         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
35791         (xg_print_frames_dialog): New functions for printing.
35792         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
35793         (xg_print_frames_dialog): Declare.
35794         * src/image.c: Add defined (USE_CAIRO) for PNG.
35795         Add !defined USE_CAIRO for W32 PNG code.
35796         (x_clear_image): If cairo, destroy the surface in cr_data.
35797         (png_load): Add new cairo compatible implementation.
35798         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
35799         * src/xfns.c: New section Printing.
35800         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
35801         (x-print-frames-dialog): New printing functions.
35802         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
35803         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
35804         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
35805         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
35806         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
35807         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
35808         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
35809         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
35810         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
35811         Declare.
35812         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
35813         (max_fringe_bmp, fringe_bmp): New variables.
35814         (x_gc_get_ext_data, x_extension_initialize)
35815         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
35816         (x_set_cr_source_with_gc_foreground)
35817         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
35818         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
35819         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
35820         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
35821         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
35822         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
35823         (x_update_begin): Create cairo surface if needed.
35824         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
35825         (x_update_end): Paint cairo drawing surface to xlib surface.
35826         (x_clear_under_internal_border, x_after_update_window_line): Adjust
35827         arguments to x_clear_area.
35828         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
35829         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
35830         of XSetClipMask.
35831         (x_set_glyph_string_clipping)
35832         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
35833         instead of XSetClipRectangles.
35834         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
35835         Use x_fill_rectangle instead of XFillRectangle.
35836         (x_draw_glyph_string_foreground)
35837         (x_draw_composite_glyph_string_foreground)
35838         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
35839         instead of XDrawRectangle.
35840         (x_draw_relief_rect): Add code for USE_CAIRO.
35841         Call x_reset_clip_rectangles instead of XSetClipMask.
35842         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
35843         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
35844         instead of XSetClipMask.
35845         (x_draw_image_foreground, x_draw_image_foreground_1):
35846         x_draw_rectangle instead of XDrawRectangle.
35847         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
35848         XFillRectangle.
35849         (x_draw_image_glyph_string): If img has cr_data, use it as
35850         a cairo surface.
35851         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
35852         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
35853         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
35854         x_reset_clip_rectangles instead of XSetClipMask.
35855         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
35856         (x_clear_area1): New function that calls XClearArea.
35857         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
35858         non-cairo.
35859         (x_clear_frame): x_clear_window instead of XClearWindow.
35860         (x_scroll_run): Set frame garbaged if cairo.
35861         (XTmouse_position): Initialize *part to 0.
35862         (x_scroll_bar_create): Adjust arguments to x_clear_area.
35863         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
35864         x_fill_rectangle instead of XFillRectangle.
35865         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
35866         arguments to x_clear_area.
35867         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
35868         (handle_one_xevent): Adjust arguments to x_clear_area.
35869         Destroy cairo surface for frame if ConfigureNotify.
35870         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
35871         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
35872         x_reset_clip_rectangles instead of XSetClipMask.
35873         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
35874         x_reset_clip_rectangles instead of XSetClipMask.
35875         (x_clear_frame_area): Adjust arguments to x_clear_area.
35876         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
35877         (x_term_init): Call x_extension_initialize if cairo.
35878         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
35879         x_cr_destroy_fringe_bitmap for cairo.
35880         (x_initialize): Call x_cr_init_fringe for cairo.
35881         * src/xterm.h: Add include of cairo header files.
35882         (x_bitmap_record): Add img if cairo.
35883         (x_gc_ext_data): New struct for cairo.
35884         (x_display_info): Add ext_codes for cairo.
35885         (x_output): Add cr_context and cr_surface for cairo.
35886         (x_clear_area): Change arguments from Display*/Window to frame pointer.
35887         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
35888         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
35889         (x_cr_draw_frame, x_cr_export_frames): Declare.
35891 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
35893         Fix integer-valued `mouse-highlight' (Bug#20590)
35894         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
35896 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
35898         MS-Windows followup for ASCIIfication of curved quotes
35899         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
35900         test for curved quotes being displayable, after switching the
35901         terminal encoding.  (Bug#20545)
35903 2015-05-17  Jan D  <jan.h.d@swipnet.se>
35905         Add comment that x_shift_glyphs_for_insert is never called
35906         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
35907         Add comment that this function is never called.
35909 2015-05-16  Glenn Morris  <rgm@gnu.org>
35911         * src/lisp.mk: Remove from repository and generate at build-time.
35912         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
35913         (shortlisp_filter): New variable.
35914         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
35915         (distclean): Remove lisp.mk.
35916         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
35917         * lisp/loadup.el: Tweak layout to make it easier to parse.
35918         * make-dist: Do not distribute src/lisp.mk.
35920 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
35922         Display shorter dates in Git annotate output
35923         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
35924         format (when not overridden with vc-git-annotate-switches).
35925         (vc-git-annotate-time): Support the short format, as well as ISO
35926         8601 that has been used until now (bug#5428).
35928 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
35930         ASCIIfy curved quotes on displays lacking them
35931         * lisp/international/mule-cmds.el (set-locale-environment):
35932         If curved quotes don't work, display straight ASCII approximations
35933         (Bug#20545).
35935 2015-05-16  Glenn Morris  <rgm@gnu.org>
35937         Small src/Makefile simplification
35938         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
35939         * src/Makefile.in (lisp): Derive from shortlisp.
35940         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
35942 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
35944         * lisp/help-mode.el (help-go-forward): Doc fix.
35945         (Bug#20577)
35947         * doc/lispref/debugging.texi (Profiling): Improve indexing.
35948         (Bug#20576)
35950 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
35952         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
35953         have one fewer `not'.
35955         * lisp/vc/vc-git.el (vc-git-diff-switches)
35956         (vc-git-annotate-switches, vc-git-resolve-conflicts)
35957         (vc-git-program, vc-git-root-log-format): Remove the redundant
35958         :group declarations.
35960 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
35962         Removes the predicate from lisp-complete-symbol (Bug#20456)
35963         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
35964         and remove it from the docstring.
35966 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
35968         Add new option vc-git-resolve-conflicts
35969         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
35970         (vc-git-find-file-hook): Add to after-save-hook only when the
35971         above is non-nil.
35972         (vc-git-resolve-when-done): Update to honor the new variable.
35973         (Bug#20292)
35975 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
35977         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
35978         (tabulated-list-init-header): Document new behavior.
35979         (tabulated-list-print-fake-header): Do nothing if
35980         `tabulated-list--header-string' is nil.
35981         (tabulated-list--header-string): Add a docstring.
35982         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
35983         * etc/NEWS: Document it.
35985 2015-05-15  Leo Liu  <sdl.web@gmail.com>
35987         Revert "Fix cps--gensym"
35988         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
35989         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
35991 2015-05-15  Glenn Morris  <rgm@gnu.org>
35993         Replace AC_SUBST_FILE in configure with include in Makefiles
35994         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
35995         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
35996         (AUTO_DEPEND): New output variable.
35997         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
35998         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
35999         (lwlib_deps_frag): Replace by conditional include.
36000         * lwlib/autodeps.mk: Remove file.
36001         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
36002         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
36003         (oldxmenu_deps_frag): Replace by conditional include.
36004         * oldXMenu/autodeps.mk: Remove file.
36005         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
36006         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
36007         (lisp_frag): Replace by an include.
36008         (deps_frag): Replace by conditional include.
36009         * src/autodeps.mk: Remove file.
36011         Tweak japanese.el's loading of dependencies
36012         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
36013         * lisp/language/japanese.el: Use require rather than load.
36014         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
36015         Provide a feature.
36016         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
36017         Provide a feature in the generated file.
36019 2015-05-15  Jan D  <jan.h.d@swipnet.se>
36021         Fix NS warnings
36022         * src/nsmenu.m (ns_popup_dialog)
36023         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
36024         * src/nsfns.m (Fx_create_frame): Remove unused variables.
36025         (Fns_read_file_name): Initialize fname, remove ret.
36026         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
36027         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
36028         Remove unused variable.
36029         (init): Add parantesis in if.
36030         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
36032 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
36034         Fix a enum conversion warning in macfont.m
36035         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
36036         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
36038 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
36040         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
36041         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
36043 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
36045         * lisp/cus-start.el: Add ns-confirm-quit.
36047         Fix warnings on OSX 10.10
36048         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
36049         OSX versions.
36050         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
36051         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
36052         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
36053         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
36054         setScalesWhenResized for OSX < 10.6.
36055         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
36056         * src/nsterm.m (ns_copy_bits): New function that does not use
36057         deprecated NSCopyBits.
36058         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
36059         (runAlertPanel): New function.
36060         (applicationShouldTerminate:): Call runAlertPanel.
36061         (initFrameFromEmacs, toggleFullScreen:): Only call
36062         useOptimizedDrawing for OSX < 10.10.
36063         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
36064         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
36065         (draggingEntered:): Returns NSDragOperation.
36066         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
36068 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
36070         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
36071         (package--init-file-ensured): New variable.
36072         (package-initialize, package--ensure-init-file): Use it.
36074 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
36076         Honor :fore/background for XBM on NS (Bug#14969)
36077         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
36078         initFromXBM takes bg, fg args, remove flip arg.
36079         (ns_image_from_XBM): Add bg, fg args.
36080         * src/image.c (x_create_bitmap_from_data)
36081         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
36082         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
36083         initFromXBM.  Remove flip arg.
36084         (initFromSkipXBM): Move code to initFromXBM.
36085         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
36086         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
36087         always false.
36088         Remove bit flipping (bitPat, swt), generated incorrect images when
36089         width/height wasn't a multiple of 8.
36090         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
36091         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
36092         remove flip arg.
36094 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
36096         * lisp/emacs-lisp/package.el: Be more careful with the init file.
36097         (package--ensure-init-file): Check that user-init-file is set,
36098         exists, is readable, and is writable.  (Bug#20584)
36099         Also expand the docstring.
36101 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
36103         Sync with upstream verilog-mode revision 6232468
36104         * lisp/progmodes/verilog-mode.el
36105         (verilog-font-lock-grouping-keywords-face)
36106         (verilog-highlight-grouping-keywords): Fix use of face when
36107         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
36108         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
36109         parent is reset, bug906.  Reported by Ken Schmidt.
36110         (verilog-auto-inout-module): Add fourth regexp argument to
36111         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
36112         Reported by John Tillema.
36113         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
36114         modport if signal attachment is itself a modport.  Reported by
36115         Matthew Lovell.
36116         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
36117         always_comb and always_latch, bug844.  Reported by Greg Hilton.
36118         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
36119         with many curly-bracket pairs, bug663.
36120         (verilog-set-auto-endcomments): Fix end comments for functions of
36121         type void, etc.  Reported by Alex Reed.
36122         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
36123         caused by indent-line-to deleting tabls pre 24.5.
36124         (verilog-nameable-item-re): Fix nameable items that can have an
36125         end-identifier to include endchecker, endgroup, endprogram,
36126         endproperty, and endsequence.  Reported by Alex Reed.
36127         (verilog-label-be): When auto-commenting a buffer, consider
36128         auto-comments on all known keywords (not just a subset thereof).
36129         Reported by Alex Reed.
36130         (verilog-auto-end-comment-lines-re)
36131         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
36132         Automatically comment property/endproperty blocks to match other
36133         similar blocks like sequence/endsequence, function/endfunction, etc.
36134         Reported by Alex Reed.
36135         (verilog-set-auto-endcomments): Detect the function- or task-name
36136         when auto-commenting blocks that lack an explicit portlist.
36137         Reported by Alex Reed.
36138         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
36139         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
36140         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
36141         is nil, fix indenting initial/final to match always statements,
36142         bug825.  Reported by Tim Clapp.
36143         (verilog-extended-complete-re): Fix indentation of DPI-C imports
36144         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
36145         Mao and Jason Forkey.
36146         (verilog-read-decls): Fix parsing typed interfaces.  Fix
36147         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
36148         Fix localparam not being ignored in AUTOINSTPARAM,
36149         bug889.  Reported by Shannon Hill.
36150         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
36151         bug793.  Reported by Pierre-David Pfister.
36152         (verilog-auto-arg-format, verilog-auto-arg-ports):
36153         Add verilog-auto-arg-format to support newlines in AUTOARG.
36154         Reported by Jie Xiao.
36155         (verilog-batch-execute-func): Do not batch re-auto files loaded by
36156         Local Variables.  Fix printing "no changes to be saved" with
36157         verilog-batch.  Reported by Dan Dever.
36158         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
36159         interface-only modules, bug721.  Reported by Dean Hoyt.
36160         Author: Alex Reed <acreed4@gmail.com>
36161         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
36162         Don't treat '<keyword>:<identifier>' as the start of a labeled
36163         statement, bug905.  Reported by Enzo Chi.
36164         (verilog-directive-re, verilog-compiler-directives)
36165         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
36166         directives (plus some extras) when determining indentation, bug
36167         901.  Reported by Bernd Beuster.
36168         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
36169         iff expression doesn't start with word-character, bug900.
36170         (verilog-optional-signed-range-re, verilog-optional-signed-re):
36171         Fix incorrect indentation/alignment of unsigned declarations,
36172         bug897.
36173         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
36174         always constructs, bug895.
36175         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
36176         Reported by Eric Mastromarchi.
36177         (verilog-beg-of-statement): Fix indenting for some forms of
36178         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
36179         continued assignment incorrect if first line ends with ']', bug437.
36180         Reported by Dan Dever.  Fix indention of cover inside an
36181         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
36182         blocks, bug842.
36183         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
36184         Reported by Kaushal Modi.
36185         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
36186         (verilog-backward-token): Fix indenting sensitivity lists with
36187         named events, bug840.  Reed.
36188         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
36189         nil not honoring 'forever', 'foreach', and 'do' keywords.
36191 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
36193         Check for invalid GTK+ monitor scales
36194         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
36195         INT_MAX for too-large scales.  All callers changed to assume the
36196         result is valid (Bug#20432).
36197         (xg_frame_set_char_size, xg_update_scrollbar_pos):
36198         Calculate scale only if needed.
36199         Show ASCII approximations instead.
36201 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
36203         Fix daemon crashes when linum-mode is turned on early on
36204         * src/window.c (Fwindow_end): Don't try calling display engine
36205         functions on initial-frame frame.  (Bug#20565)
36207         Fix selective diff browsing in Ediff
36208         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
36209         Go to the beginning of the region before searching for the
36210         ediff-regexp-focus-* regexps.  (Bug#20568)
36212 2015-05-14  Jan D  <jan.h.d@swipnet.se>
36214         Fixes bug#20142
36215         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
36216         arrive in the main loop, even for Gtk 3 (Bug#20142).
36218         Don't access display after i/o error (Bug#19147).
36219         * src/xterm.c (x_connection_closed): Add third arg ioerror.
36220         If ioerror, set display to 0 (Bug#19147).
36221         (x_error_quitter): Call x_connection_closed with third arg false.
36222         (x_io_error_quitter): Call x_connection_closed with third arg true.
36224         Handle GTK_SCALE, fixes Bug#20432.
36225         * src/gtkutil.c (xg_get_gdk_scale): New function.
36226         (xg_frame_set_char_size)
36227         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
36228         (xg_get_default_scrollbar_height)
36229         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
36230         when setting sizes (Bug#20432).
36232 2015-05-13  Leo Liu  <sdl.web@gmail.com>
36234         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
36236 2015-05-13  Glenn Morris  <rgm@gnu.org>
36238         Fix bootstrap (void function cl-member).
36239         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
36240         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
36242 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
36244         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
36245         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
36246         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
36247         Avoid defalias for closures which are not immutable.
36248         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
36249         the dispatchers table with various entries.
36250         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
36251         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
36253 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
36255         Improve tagging of C bindings in DEFVAR_*
36256         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
36257         from DEFVAR_*.
36259 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
36261         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
36263 2015-05-12  Glenn Morris  <rgm@gnu.org>
36265         * lisp/progmodes/tcl.el (tcl-filter):
36266         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
36268         Add basic VC push support
36269         * lisp/vc/vc.el (vc-push): New autoloaded command.
36270         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
36271         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
36272         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
36273         (vc-bzr-push): New.
36274         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
36275         (vc-git-pull): Reimplement using vc-git--pushpull.
36276         (vc-git-push): New.
36277         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
36278         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
36279         * doc/emacs/maintaining.texi (Pulling / Pushing):
36280         Rename from "VC Pull".  Mention pushing.
36281         (VC With A Merging VCS, VC Change Log): Update xrefs.
36282         (Branches): Update menu.
36283         * doc/emacs/emacs.texi: Update menu.
36284         * etc/NEWS: Mention this.
36286 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
36288         Improve the seq pcase pattern and the `seq-let' macro
36289         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
36290         object is a sequence, and binds each element of ARGS to the
36291         corresponding element of the sequence.
36293 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
36295         Fix tags created from DEFVAR_* declarations in C
36296         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
36297         to make tags extracted from DEFVAR_* declarations more accurate.
36299         Add a test suite for etags
36300         * test/etags/: New test suite, adapted from
36301         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
36302         whose original author is Francesco Potortì <pot@gnu.org>.
36304         Fix tagging of symbols in C enumerations
36305         * lib-src/etags.c (consider_token): Don't tag symbols in
36306         expressions that assign values to enum constants.  See
36307         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
36308         for details.
36309         (C_entries): Reset fvdef to fvnone after processing a preprocessor
36310         conditional and after a comma outside of parentheses.
36312 2015-05-12  Glenn Morris  <rgm@gnu.org>
36314         * lisp/url/url-handlers.el (url-file-name-completion)
36315         (url-file-name-all-completions): Silence compiler.
36317         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
36319         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
36321 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
36323         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
36324         (cl--generic-mandatory-args): Remove.
36325         (cl--generic-split-args): New function.
36326         (cl-generic-define, cl--generic-lambda): Use it.
36327         (cl-generic-define-method): Use it as well, and add support for
36328         context args.
36329         (cl--generic-get-dispatcher): Handle &context dispatch.
36330         (cl--generic-cache-miss): `dispatch-arg' can now be a
36331         context expression.
36332         (cl--generic-dispatchers): Pre-fill.
36333         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
36334         New test.
36336 2015-05-11  Glenn Morris  <rgm@gnu.org>
36338         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
36340 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
36342         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
36343         * lisp/term/rxvt.el: Require term/xterm.
36344         (rxvt-function-map): Use xterm-rxvt-function-map.
36345         (rxvt-standard-colors): Move before first use.
36346         (terminal-init-rxvt): Use xterm--push-map and
36347         xterm-register-default-colors.
36348         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
36349         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
36350         Move shared bindings between rxvt and xterm to it.
36351         (xterm-function-map): Use it.  Move the xterm-paste binding to
36352         xterm-rxvt-function-map (bug#20444).
36353         (xterm-standard-colors): Move before first use.
36354         (xterm--push-map): New function.
36355         (xterm-register-default-colors): Take standard colors as argument.
36356         (terminal-init-xterm): Use it.  Adjust call to
36357         xterm-register-default-colors.
36359 2015-05-11  Glenn Morris  <rgm@gnu.org>
36361         * lisp/term/x-win.el: Quieten --without-x compilation.
36362         (x-own-selection-internal, x-disown-selection-internal)
36363         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
36364         Declare.
36366         * Makefile.in (emacslog): Remove srcdir.
36367         (ChangeLog): Update for the above.
36369 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
36371         python.el: better limit for looking-back calls
36372         * lisp/progmodes/python.el (python-shell-accept-process-output):
36373         Use last comint prompt start as limit for looking-back.
36375 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
36377         CEDET (srecode-insert-fcn): Fix use of oref on a class
36378         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
36379         on a class.  Reported by Pierre Lorenzon.
36380         (srecode-template-inserter-point): Remove declaration.
36382         CEDET (srecode-create-dictionary): Avoid obsolete object name
36383         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
36384         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
36386 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
36388         C-x 8 shorthands for curved quotes, Euro, etc.
36389         Although C-x 8 lets you insert arbitrary Unicode characters,
36390         it's awkward to use this to insert commonly used symbols such as curved
36391         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
36392         characters commonly found in English text and in basic math.
36393         For example, assuming the Alt key works on your keyboard and iso-transl
36394         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
36395         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
36396         (Bug#20499)
36397         * doc/emacs/mule.texi (Unibyte Mode):
36398         A few other printing characters now work too.
36399         * etc/NEWS: Document this.
36400         * lisp/international/iso-transl.el (iso-transl-char-map):
36401         Also support the following characters:
36402         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
36404 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
36406         Add xref-find-regexp
36407         * lisp/progmodes/xref.el (xref-find-function): Describe the
36408         `matches' action.
36409         (xref-find-regexp): New command, using it.
36410         (xref-collect-references): Rename to xref-collect-matches.
36411         (xref--collect-reference): Rename to xref--collect-match.
36412         (xref-collect-matches, xref--collect-match): Accept new argument,
36413         KIND.  Update accordingly.
36414         (xref--regexp-to-extended): New function.
36415         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
36416         `matches' action.
36417         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
36418         * lisp/progmodes/etags.el (etags-xref-find):
36419         Support the `matches' action.
36420         (etags--xref-find-matches): New function.
36422 2015-05-10  Glenn Morris  <rgm@gnu.org>
36424         * Makefile.in: Fixes for recent change-history changes.
36425         (change-history-nocommit): Update footer regexp.
36426         Ensure output script stays executable.
36428 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
36430         New version of `seq-let' based on a pcase pattern
36431         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
36432         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
36434 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
36436         Add basic HTML5 tags and a template
36437         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
36438         (html-tag-alist): Add HTML5 tags.
36439         (html-tag-help): Add new tags descriptions.
36440         (html-navigational-links): Template for nav links.
36441         (html-html5-template): Template for a HTML5 page.
36443 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
36445         semantic/symref/grep: Don't use word boundaries
36446         * lisp/cedet/semantic/symref/grep.el
36447         (semantic-symref-perform-search): Instead of wrapping input in
36448         word boundaries, check that the characters before and after are
36449         not word constituents.
36451         semantic/symref/grep: Support regexp search
36452         * lisp/cedet/semantic/symref.el
36453         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
36454         the search type is regexp.
36455         * lisp/cedet/semantic/symref/grep.el
36456         (semantic-symref-perform-search): Support the regexp search type.
36457         Pass -E to Grep when it's used.
36459         semantic-symref-regexp: Allow to input an arbitrary string
36460         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
36461         Allow to input an arbitrary string interactively.
36463         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
36464         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
36465         Remove tag-symbol-match-p from the default value
36466         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
36468         Declare find-tag obsolete
36469         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
36470         xref-find-definitions.
36472 2015-05-10  Jan D  <jan.h.d@swipnet.se>
36474         Draw composite string correctly (Bug#20537)
36475         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
36476         New function.
36477         (ns_draw_glyph_string): Call it.
36479 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
36481         Avoid infloop in ERC
36482         * lisp/simple.el (line-move-to-column): Ignore field boundaries
36483         while computing line beginning position.  (Bug#20498)
36485 2015-05-08  Glenn Morris  <rgm@gnu.org>
36487         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
36488         * build-aux/gitlog-to-emacslog: Check called from right directory.
36489         (srcprefix): Remove.
36491         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
36492         * Makefile.in (ChangeLog): No longer pass "distprefix".
36493         * make-dist: Update "make ChangeLog" syntax for the above change.
36495         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
36496         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
36498         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
36500         Add command-line option-parsing to gitlog-to-emacslog
36501         * build-aux/gitlog-to-emacslog: Add command-line options.
36502         By default, refuse to remove an existing output file.
36503         * Makefile.in (CHANGELOG): Update default.
36504         (ChangeLog): Do not test for existing file.
36505         (change-history-nocommit): Ensure temp file does not exist.
36507         Quieten --without-x compilation
36508         * lisp/term/common-win.el: Provide a feature.
36509         * lisp/term/x-win.el (term/common-win): Require it.
36511         * lisp/dired-aux.el (dired-do-print): Require lpr.
36513         Quieten compilation, eg in --without-x builds
36514         * lisp/dired-aux.el (lpr-printer-switch):
36515         * lisp/frame.el (tool-bar-height):
36516         * lisp/linum.el (font-info):
36517         * lisp/window.el (font-info, overflow-newline-into-fringe)
36518         (tool-bar-height):
36519         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
36520         * lisp/gnus/gnus-util.el (iswitchb-mode):
36521         * lisp/mail/rmailmm.el (libxml-parse-html-region):
36522         * lisp/net/nsm.el (gnutls-peer-status)
36523         (gnutls-peer-status-warning-describe):
36524         * lisp/net/shr.el (libxml-parse-xml-region):
36525         * lisp/url/url-http.el (gnutls-peer-status): Declare.
36527 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
36529         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
36530         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
36531         `subclass' since they're never called with a class.
36532         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
36533         srecode-dictionary-child-p.
36535 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
36537         * lisp/help.el (help--binding-locus): Document argument POSITION.
36538         (Bug#20530)
36540 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
36542         Merge from gnulib
36543         * doc/misc/texinfo.tex: Get latest version.
36545 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
36547         ffap.el (ffap-read-file-or-url): Fix completing-read call
36548         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
36549         `completing-read' should be a symbol.
36551 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
36553         Verify file modifications by other programs
36554         * src/filelock.c (lock_file): Check whether the file was modified
36555         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
36557         Fix keyboard macros that include function keys
36558         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
36559         keys in the macro before returning.  (Bug#20454)
36561 2015-05-08  Glenn Morris  <rgm@gnu.org>
36563         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
36564         "Copyright-paperwork-exempt".  (Bug#20324)
36566         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
36567         (log-edit-rewrite-tiny-change): New variable.
36568         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
36569         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
36570         * etc/NEWS: Mention this.
36572         * lisp/calc/calc.el (math-zerop): Declare.
36574         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
36576 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
36578         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
36579         Support the case when BINDINGS is a single tuple.  (Bug#20525)
36581         * etc/NEWS: Fix typo in previous commit
36582         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
36584 2015-05-07  Jan D  <jan.h.d@swipnet.se>
36586         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
36587         Output URL to Gtk+ bug (Bug#20452).
36589         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
36591 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
36593         * lisp/emacs-lisp/package.el: New "external" package status.
36594         An external package is any installed package that's not built-in
36595         and not from `package-user-dir', which usually means it's from an
36596         entry in `package-directory-list'.  They are treated much like
36597         built-in packages, in that they cannot be through the Package Menu
36598         deleted and are not considered for upgrades.
36599         (package-desc-status): Identify if a package is installed outside
36600         `package-user-dir'.
36601         (package-menu--print-info-simple)
36602         (package-menu--status-predicate): Add support for it.
36603         * etc/NEWS: Document it.
36605 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
36607         * lisp/mail/rmail.el: Use lexical-binding.
36608         (rmail-bury): Remove unused var `buffer-to-bury'.
36609         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
36610         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
36611         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
36612         (rmail-insert-inbox-text): Remove unused var `movemail'.
36613         (rmail-add-mbox-headers): Remove unused var `limit'.
36614         (rmail-undelete-previous-message): Remove unused var `value'.
36615         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
36616         `resent-reply-to'.
36617         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
36618         (rmail-restore-desktop-buffer): Rename arguments.
36620 2015-05-06  Glenn Morris  <rgm@gnu.org>
36622         * Makefile.in (change-history-commit): Add missing piece of previous.
36624         Avoid unnecessary bumping of Makefile.in's timestamp
36625         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
36626         (emacslog): New variable.
36627         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
36628         (unchanged-history-files): Use $emacslog rather than Makefile.in.
36629         (change-history-nocommit): Store hash in $emacslog.
36630         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
36631         * admin/update_autogen (changelog_files): Update for the above.
36633         * Makefile.in: Don't always insist on removing existing "ChangeLog".
36634         (CHANGELOG): New variable.
36635         (no-ChangeLog): Remove.
36636         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
36637         (change-history-nocommit): Use a temp file rather than insisting
36638         on deletion of any existing "ChangeLog".
36640         * build-aux/gitlog-to-emacslog: Allow specification of output.
36642         * admin/update_autogen: Add option to update ChangeLog.
36643         (usage): Mention -H.
36644         (changelog_flag, changelog_n, changelog_files): New variables.
36645         (main): Check for -H, and maybe run change-history-nocommit.
36647 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
36649         * lisp/subr.el (delete-dups): Pre-size the hashtable.
36651         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
36652         cl--arglist-args is defined (bug#20517).
36654 2015-05-06  Glenn Morris  <rgm@gnu.org>
36656         * Makefile.in (change-history-nocommit): New.
36658 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
36660         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
36661         timer when it is non-nil
36662         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
36664 2015-05-06  Glenn Morris  <rgm@gnu.org>
36666         Quieten CEDET compilation
36667         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
36668         Invert fboundp test to quieten on current Emacs.
36669         * lisp/cedet/ede/config.el (ede-shell-run-something)
36670         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
36671         (semanticdb-refresh-table): Declare.
36672         (ede-preprocessor-map): Require semantic/db.
36674         Quieten cc-mode compilation
36675         * lisp/progmodes/cc-awk.el (c-forward-sws):
36676         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
36677         Declare.
36679 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
36681         * lisp/subr.el (delete-dups): Avoid nreverse.
36683 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
36685         * lisp/subr.el (delete-dups): Make it destructive again.
36687 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
36689         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
36691 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
36693         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
36694         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
36695         (testcover--read): Rename from testcover-read.  Change calling
36696         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
36697         is gone.
36698         (testcover-start): Use add-function.  Move edebug-all-defs binding to
36699         testcover--read.
36700         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
36701         (testcover-mark): Remove unused var `item'.
36702         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
36704 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
36706         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
36707           use a hash table.  This can result in ~500 times speed-up for typical
36708           collections of size 5000, like that of `load-library'.
36710 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
36712         CEDET: Avoid `oref' on classes in a few more cases
36713         * lisp/cedet/ede/generic.el (ede-find-target):
36714         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
36715         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
36716         var `prefix'.
36718         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
36719         (grepflags, greppattern): Declare.
36720         (semantic-symref-perform-search): Remove unused var `pat'.
36722         CEDET (srecode-compile-inserter): Avoid `oref' on classes
36723         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
36724         Avoid `oref' on classes (bug#20491).
36725         (srecode-compile-split-code): Remove unused var `key'.
36727 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
36729         Clean up pulse.el a little
36730         * lisp/cedet/pulse.el (pulse): Remove.
36731         (pulse-momentary-timer): Save instead of the stop time.
36732         (pulse-momentary-highlight-overlay):
36733         Call pulse-momentary-unhighlight first thing.
36734         Treat pulse-momentary-overlay as a single value, not a list.
36735         Save the created timer.  Only pass the stop time to the timer.
36736         (pulse-tick): Update accordingly.
36737         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
36738         single value.  Cancel the timer.
36740 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
36742         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
36743         Support the biblatex journaltitle field.
36745 2015-05-05  Glenn Morris  <rgm@gnu.org>
36747         Minor declare-function improvement
36748         * lisp/emacs-lisp/bytecomp.el
36749         (byte-compile-macroexpand-declare-function):
36750         Handle declarations after calls.  (Bug#20509)
36752         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
36754         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
36756 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
36758         Pulse using a timer
36759         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
36760         (pulse-momentary-highlight-overlay): Set up the timer instead of
36761         calling `pulse'
36762         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
36763         (pulse-tick): New function.
36764         (pulse-momentary-unhighlight): Cut off the stop time.
36765         (pulse-delay): Update the docstring WRT to not using sit-for.
36767         Add semantic/symref/grep file patterns for ruby-mode
36768         * lisp/cedet/semantic/symref/grep.el
36769         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
36770         Clarify the docstring.
36772         Don't require match
36773         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
36774         match.  That doesn't work for every command, and some identifier
36775         completion tables are bound to be imperfect anyway.
36777 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
36779         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
36780         (semantic-grammar--template-expand): New function.
36781         (semantic-grammar-header, semantic-grammar-footer): Use it.
36782         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
36783         (semantic-grammar-file-regexp): Refine regexp.
36784         (semantic-grammar-eldoc-get-macro-docstring):
36785         Use elisp-get-fnsym-args-string when available.
36786         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
36787         instead of the old eldoc-* names.
36788         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
36789         from elisp-mode.el.  Tweak calling convention.
36790         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
36791         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
36792         elisp--get-fnsym-args-string.
36793         (elisp--highlight-function-argument): Add `prefix' arg.
36794         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
36795         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
36797 2015-05-05  Glenn Morris  <rgm@gnu.org>
36799         * lisp/help-fns.el (describe-function-1):
36800         Handle builtins with advertised calling conventions.  (Bug#20479)
36802 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
36804         Merge branch 'seq-let'
36806         Update `seq-let' documentation
36807         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
36808         with the support of  `&rest'.
36810         Add support for &rest in `seq-let'
36811         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
36812         in the argument list.
36813         * test/automated/seq-tests.el: Add a test for parsing and binding
36814         `&rest' in `seq-let'.
36816 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
36818         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
36819         Add missing increment (Bug#20467).
36820         (eieio-object-value-create): Adjust to new slots representation
36821         (Bug#20467).
36822         (eieio-object-value-create): Fix missed adjustment to new
36823         representation of slots metadata.
36825 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
36827         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
36829 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
36831         Work around "Attempt to modify read-only object"
36832         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
36833         elisp--xref-find-definitions, to work around "Attempt to modify
36834         read-only object" error.
36836         Only skip some variables that have function counterparts
36837         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
36838         Only skip minor-mode-named variable if it's defined in a Lisp
36839         file, and it's in minor-mode-list (bug#20506).
36840         * test/automated/elisp-mode-tests.el
36841         (elisp-xref-finds-both-function-and-variable)
36842         (elisp-xref-finds-only-function-for-minor-mode): New tests.
36844 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
36846         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
36847         previous change.
36848         (xref--insert-xrefs): Buttonize the whole line, including the
36849         number at the beginning.
36851         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
36852         Make sure we're inside the let bindings.
36853         * test/automated/elisp-mode-tests.el
36854         (elisp-completes-functions-after-let-bindings): New test.
36856 2015-05-04  Glenn Morris  <rgm@gnu.org>
36858         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
36859         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
36860         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
36861         Remove outdated declarations.
36863         Replace instances of "(eval-when-compile (autoload ...))"
36864         * lisp/gnus/gnus-art.el (nneething-get-file-name):
36865         Declare rather than autoload.
36866         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
36867         Remove pointless autoload.
36868         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
36869         (gnus-topic-create-topic, gnus-topic-enter-dribble):
36870         Declare rather than autoload.
36871         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
36872         (mailcap-extension-to-mime): Autoload at run-time.
36873         * lisp/gnus/mm-util.el (latin-unity-massage-name)
36874         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
36875         (latin-unity-representations-present-region):
36876         Declare rather than autoload.
36877         * lisp/gnus/mml-smime.el (epg-make-context)
36878         (epg-passphrase-callback-function): Autoload at run-time.
36879         (epg-context-set-signers, epg-context-result-for)
36880         (epg-new-signature-digest-algorithm)
36881         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
36882         (epg-sign-string, epg-encrypt-string)
36883         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
36884         (epg-configuration, epg-expand-group, epa-select-keys):
36885         Declare rather than autoload.
36886         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
36887         Autoload at run-time.
36888         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
36889         (gnus-registry-get-id-key, gnus-registry-action):
36890         Declare rather than autoload.
36891         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
36892         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
36893         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
36894         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
36895         (spam-stat-split-fancy): Remove pointless autoloads.
36896         * lisp/net/mairix.el: Load gnus-util when compiling.
36897         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
36898         (message-field-value): Declare rather than autoload.
36899         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
36900         Check gnus-alive-p is fbound.
36901         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
36902         (vm-check-for-killed-summary, vm-error-if-folder-empty)
36903         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
36904         Declare rather than autoload.
36906         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
36908         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
36909         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
36911         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
36913         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
36915         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
36916         * lisp/emacs-lisp/package.el (epg-signature-status):
36917         Fix declarations.
36919         * lisp/play/gametree.el (gametree-show-children-and-entry)
36920         (gametree-apply-layout, gametree-mouse-show-subtree)
36921         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
36923         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
36924         Handle cl-defgeneric, cl-defmethod.
36926 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
36928         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
36929         Highlight both type and symbol name.
36931         Insert, highlight and align line numbers in xref output
36932         * lisp/progmodes/etags.el (xref-location-line): Specialize for
36933         xref-etags-location.
36934         * lisp/progmodes/xref.el (xref-location-line): New generic method.
36935         (xref-file-location): Add reader for the line slot.
36936         (xref--location-at-point): Skip to the `xref-location' property.
36937         (xref--collect-reference): Drop the line number from description.
36938         (xref--insert-xrefs): Insert, highlight and align line numbers.
36940 2015-05-04  Daniel Colascione  <dancol@dancol.org>
36942         * lisp/simple.el (save-mark-and-excursion--save)
36943         (save-mark-and-excursion--restore): Fix previous commit
36944         (255a011f0ecf004b31c59945b10154b10fac3af1).
36946 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
36948         Don't pulse the indentation, or the newline
36949         * lisp/cedet/pulse.el (pulse-lighten-highlight)
36950         (pulse-reset-face): Fall back to the inherited background
36951         attribute in FACE.
36952         (pulse-momentary-highlight-region): Add autoload cookie.
36953         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
36954         indentation, or the newline, if the line's non-empty
36955         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
36957 2015-05-04  Daniel Colascione  <dancol@dancol.org>
36959         Add `save-mark-and-excursion', which has the old
36960         `save-excursion' behavior
36961         * doc/lispref/positions.texi (Excursions):
36962         Document `save-mark-and-excursion'.
36963         * lisp/font-lock.el (font-lock-fontify-block):
36964         Use `save-mark-and-excursion' instead of `save-excursion',
36965         restoring Emacs 24 behavior.
36966         * lisp/simple.el (save-mark-and-excursion--save)
36967         (save-mark-and-excursion--restore): New functions.
36968         (save-mark-and-excursion): New user macro.
36969         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
36970         in `save-excursion' documentation.
36972 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
36974         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
36975         Classify lone symbol inside let varlist as variable.
36976         * test/automated/elisp-mode-tests.el
36977         (completest-variables-in-let-bindings): New test.
36979         Add xref-pulse-on-jump
36980         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
36981         Add autoload cookie.
36982         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
36983         (xref--maybe-pulse): New function.
36984         (xref-pop-marker-stack, xref--pop-to-location)
36985         (xref--display-position): Use it.
36986         (xref--location-at-point): Use back-to-indentation.
36988 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
36990         lisp/org/org-{macs,list}.el: Fix lexical warnings
36991         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
36992         (org-list-get-next-item, org-list-get-prev-item)
36993         (org-list-get-children): Mark unused arg `struct'.
36994         (org-list-use-alpha-bul-p): Remove unused var `bul'.
36995         (org-toggle-checkbox): Mark unused var.
36996         (org-update-checkbox-count): Remove unused var `box-num'.
36997         (org-adapt-indentation): Declare.
36998         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
36999         (org-list-send-list): Remove unused var `txt'.
37000         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
37001         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
37002         * lisp/org/org-macs.el: Use `declare'.
37003         (org-with-limited-levels): Declare dyn-bound vars.
37005 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
37007         Fix minor issues with CEDET on MS-Windows
37008         * lisp/cedet/semantic/symref/idutils.el
37009         (semantic-symref-parse-tool-output-one-line): Fix the search
37010         regexp to match MS-Windows file names with drive letters.
37011         (Bug#19468)
37012         * lisp/cedet/semantic/symref/grep.el
37013         (semantic-symref-grep-use-template): Remove "--color=always" from
37014         Grep switches on MS-Windows.
37015         (semantic-symref-grep-shell): Use shell-file-name as the default
37016         value, so this works not only on Posix platforms.
37017         (semantic-symref-perform-search): Use shell-quote-argument instead
37018         of literal '..' for portable quoting of Grep command-line
37019         argument.  Use shell-command-switch instead of a literal "-c".
37020         * lisp/cedet/semantic/bovine/gcc.el
37021         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
37022         for an absolute file name in a portable way.
37024 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
37026         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
37027         (package-import-keyring, package-refresh-contents)
37028         (package-compute-transaction, package--save-selected-packages)
37029         (package-install-from-archive, package-delete)
37030         (package-menu--perform-transaction): Use `inhibit-message' instead.
37031         (package--compile): Set `warning-minimum-level' to :error.
37033 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
37035         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
37036         (terminal-init-screen): Use it (bug#20356).
37037         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
37038         (xterm--extra-capabilities-type): New const.
37039         (xterm-extra-capabilities): Use it.
37040         (xterm--version-handler): Lower the pseudo-version for `screen'.
37042 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
37044         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
37045         Always insert a newline at the end (to avoid mouse-face background
37046         tail at the last line).
37048         elisp-completion-at-point: Prioritize being quoted over funpos
37049         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
37050         Only consider function position when not inside quoted form
37051         (bug#20425).
37052         * test/automated/elisp-mode-tests.el: New file.
37054         Stop vc-print-log from jumping to the top
37055         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
37056         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
37057         is not specified.
37058         (vc-incoming-outgoing-internal): Always pass nil.
37059         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
37060         call it, and don't set vc-sentinel-movepoint (bug#15322).
37061         (vc-print-root-log): Don't fetch the root working revision, nor
37062         pass it to vc-print-log-internal.
37064 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
37066         Fix display of keyboard layouts for right-to-left scripts
37067         * lisp/international/quail.el (quail-insert-kbd-layout):
37068         Force left-to-right paragraph direction.
37070 2015-05-02  K. Handa  <handa@gnu.org>
37072         * src/cmds.c (internal_self_insert): When we insert spaces for
37073         padding, set point before the padding spaces, not after them.
37075 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
37077         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
37079 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
37081         Fix etags-xref-find for references
37082         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
37083         Use `cl-mapcan'.
37084         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
37085         directory if no tags tables are loaded (bug#19468).
37087 2015-05-02  Philipp Stephani  <phst@google.com>
37089         Update the options in whitespace-style defcustom
37090         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
37091         `repeat' because the option is really set-like.  Add missing
37092         options.  Reorder options to match the order in the
37093         documentation.  (Bug#20346)
37095 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
37097         Fix error diagnostics of c-macro-expand
37098         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
37099         too early if no start-marker string was found -- that generally
37100         means cpp exited abnormally, and we still want to show its error
37101         messages to the user.
37103         Don't require Texinfo 5.0 for Emacs documentation
37104         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
37105         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
37106         "@codequoteundirected on", respectively, to avoid requiring
37107         Texinfo 5.x for Emacs documentation.
37109 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
37111         * lisp/files.el (pwd):
37112         When called with a prefix argument, insert the current default
37113         directory at point.
37115 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
37117         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
37118         * lisp/isearch.el (isearch-mode-map): Don't inhibit
37119         function-key-map remapping for backspace (bug#20466).
37121 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
37123         Implement xref-find-references in etags and elisp-mode
37124         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
37125         (elisp-xref-find): Use it.
37126         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
37127         * lisp/progmodes/xref.el (xref-collect-references):
37128         (xref--collect-reference): New functions.
37130 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
37132         Prefer plain characters to Texinfo circumlocutions
37133         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
37134         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
37136         Fix single-quoting style in PDF manuals
37137         The PDF versions of the GNU manuals used curved single quotes to
37138         represent grave accent and apostrophe, which made it a pain to cut
37139         and paste code examples from them.  Fix the PDF versions to use
37140         grave accent and apostrophe for Lisp source code, keystrokes, etc.
37141         This change does not affect the info files, nor does it affect
37142         ordinary uses of curved single quotes in PDF.
37143         * doc/emacs/docstyle.texi: New file, which specifies treatment for
37144         grave accent and apostrophe, as well as the document encoding.
37145         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
37146         * doc/lispintro/emacs-lisp-intro.texi:
37147         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
37148         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
37149         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
37150         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
37151         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
37152         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
37153         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
37154         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
37155         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
37156         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
37157         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
37158         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
37159         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
37160         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
37161         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
37162         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
37163         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
37164         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
37165         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
37166         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
37167         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
37168         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
37169         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
37170         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
37171         * doc/misc/woman.texi:
37172         Use it instead of '@documentencoding UTF-8', to lessen the need for
37173         global changes like this in the future.
37174         * doc/emacs/Makefile.in (EMACS_XTRA):
37175         * doc/lispintro/Makefile.in (srcs):
37176         * doc/lispref/Makefile.in (srcs):
37177         Add dependency on docstyle.texi.
37178         * doc/misc/Makefile.in (style): New macro.
37179         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
37180         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
37181         Use it.
37183 2015-05-01  Glenn Morris  <rgm@gnu.org>
37185         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
37187         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
37188         (help-fns--signature): Declare.
37190         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
37192 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
37194         New macro seq-let, providing destructuring support to seq.el
37195         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
37196         to `cl-destructuring-bind' but works on all sequence types supported
37197         by `seq.el'.  Bump version number to 1.6.
37198         * test/automated/seq-tests.el: Add tests for seq-let.
37199         * doc/lispref/sequences.texi: Add documentation for seq-let.
37201 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
37203         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
37205 2015-05-01  Glenn Morris  <rgm@gnu.org>
37207         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
37209 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
37211         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
37212         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
37213         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
37214         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
37215         (Bug#20445).
37217 2015-05-01  K. Handa  <handa@gnu.org>
37219         * lisp/international/mule-cmds.el (input-method-use-echo-area):
37220         Change :type to 'boolean.
37222 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
37224         Start using proportional fonts in eww by default
37225         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
37226         it seems to work well.
37228         Fix links in tables in shr
37229         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
37230         makes (some) links in tables not work.
37232 2015-05-01  Jan D  <jan.h.d@swipnet.se>
37234         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
37236 2015-04-30  Glenn Morris  <rgm@gnu.org>
37238         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
37239         Update for 2015-02-08 change to indirect-function.
37241         * lisp/term/ns-win.el (ns-get-selection-internal):
37242         Remove declaration for function deleted 2014-10-21.
37244         * lisp/dom.el: Load subr-x when compiling, for when-let.
37246         Silence some compilation warnings
37247         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
37248         * lisp/emulation/cua-base.el (delete-active-region):
37249         * lisp/net/net-utils.el (w32-get-console-output-codepage):
37250         * lisp/term/ns-win.el (ns-own-selection-internal)
37251         (ns-disown-selection-internal, ns-selection-owner-p)
37252         (ns-selection-exists-p, ns-get-selection):
37253         Declare for compiler.
37255         Function declaration updates prompted by 'make check-declare'
37256         * lisp/emacs-lisp/package.el (lm-homepage):
37257         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
37258         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
37259         * lisp/gnus/mml.el (libxml-parse-html-region):
37260         * lisp/gnus/nnrss.el (libxml-parse-html-region):
37261         * lisp/net/eww.el (libxml-parse-html-region):
37262         * lisp/net/shr.el (libxml-parse-html-region):
37263         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
37264         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
37265         * lisp/vc/vc-git.el (vc-annotate-convert-time):
37266         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
37267         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
37268         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
37269         Update declaration.
37271         Remove compatibility code for 20-year old function renaming
37272         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
37273         Make it an obsolete alias.
37274         (idlwave-shell-filter): Change all uses to comint-output-filter.
37276 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
37278         Add ace-window face config
37279         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
37280         configuration.
37282 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
37284         Unclutter 'make doc' output a bit
37285         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
37286         Use make subst rather than sh IFS to split target string apart.
37287         This makes 'make' output easier to follow.
37289         Merge from gnulib
37290         * doc/misc/texinfo.tex: Update from gnulib.
37292 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
37294         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
37295         (package-menu--print-info): Obsolete.
37296         (package-menu--print-info-simple): New function.
37297         (package-menu--refresh): Use it, simplify code, and improve
37298         performance.
37299         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
37300         Tiny performance improvement.
37302         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
37304 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
37306         Omit -Wstrict-overflow workaround in GCC 5
37307         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
37308         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
37310         Merge from gnulib
37311         This incorporates:
37312         2015-04-29 extern-inline: no need for workaround in GCC 5.1
37313         2015-04-26 file-has-acl: port to CentOS 6
37314         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
37316 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
37318         Set next-error-* in xref--xref-buffer-mode
37319         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
37320         Set `next-error-function' and `next-error-last-buffer'.
37321         (xref--next-error-function): New function.
37322         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
37324 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
37326         python.el: Fix warnings on looking-back calls missing LIMIT
37327         * lisp/progmodes/python.el (python-shell-accept-process-output):
37328         Pass LIMIT arg to looking-back.
37330 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
37332         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
37333         (package--download-and-read-archives): Use pushnew instead of
37334         append.  If something terrible happened during a previous
37335         download, simply refreshing should now make things work again.
37337 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
37339         Introduce etags-xref-find-definitions-tag-order
37340         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
37341         New variable.
37342         (etags--xref-find-definitions): Use it (bug#19468).
37344 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
37346         PATH- and completion-related fixes in Eshell on MS-Windows
37347         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
37348         MS-Windows, prepend "." to list of directories produced from PATH,
37349         as Windows always implicitly searches the current directory first.
37350         (eshell-force-execution): Make it have a non-nil default value on
37351         MS-Windows and MS-DOS.
37352         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
37353         eshell-force-execution is non-nil, complete on readable files and
37354         directories, not only executables.  When running on MS-Windows,
37355         prepend "." to list of directories produced from PATH, as Windows
37356         always implicitly searches the current directory first.
37358 2015-04-29  Sam Steingold  <sds@gnu.org>
37360         Bury RCIRC buffers when there is no activity
37361         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
37362         (rcirc-bury-buffers): New function.
37363         (rcirc-next-active-buffer): When there is no new activity, use
37364         `rcirc-bury-buffers' to hide all RCIRC buffers.
37366 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
37368         Fix DBUS query result parsing for secrets-search-items
37369         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
37370         parsing.  The function assumed that return value of the
37371         SearchItems method called on a collection is a list of two lists,
37372         however this is true only when no collection is specified.  GNOME
37373         had used to incorrectly return a list of two lists in both cases,
37374         but this was already fixed:
37375         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
37376         incorrect information in the secrets-search-items’ docstring.
37377         (Bug#20449)
37379 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
37381         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
37382         Use `inhibit-message' instead of hiding the previous message
37383         with (message nil).
37385 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
37387         Remove the deprecated INTERNAL_FIELD macro by expanding it
37388         * src/lisp.h (INTERNAL_FIELD): Remove.
37389         (DEFVAR_KBOARD): Modify accordingly.
37390         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
37391         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
37392         * src/buffer.c (compact_buffer): Use BVAR.
37394 2015-04-29  Glenn Morris  <rgm@gnu.org>
37396         Replace an obsolete function alias
37397         * lisp/isearch.el (isearch-yank-x-selection):
37398         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
37399         (mouse-drag-secondary-moving):
37400         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
37401         Replace obsolete alias x-get-selection with gui-get-selection.
37403 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
37405         * lisp/mail/rmailsum.el: Use lexical-binding.
37407 2015-04-29  Glenn Morris  <rgm@gnu.org>
37409         * test/automated/package-test.el (package-test-update-archives-async):
37410         Skip test on hydra.nixos.org.
37412 2015-04-28  Glenn Morris  <rgm@gnu.org>
37414         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
37415         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
37416         (foldout-mouse-hide-or-exit): Use new names for outline functions.
37418         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
37419         Update for 2014-06-26 hideif.el change.
37421         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
37422         (rmail--decode-and-apply): New function.
37423         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
37425         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
37427 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
37429         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
37430         (package-menu--refresh): Delegate obsolete-hiding to
37431         `package--remove-hidden'.
37432         (package--remove-hidden): Disregard high-priority package if it is
37433         older than the installed one.
37435 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
37437         Update source file encoding list
37438         Update admin/notes/unicode, along with coding system cookies in
37439         other files, so that the two match each other better.
37440         * admin/notes/unicode: lisp/language/ethio-util.el and
37441         lisp/language/ethiopic.el also use utf-8-emacs.
37442         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
37443         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
37444         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
37445         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
37446         * etc/refcards/sk-survival.tex:
37447         Add "coding: utf-8" so that this file is not mishandled in a
37448         Latin-1 or Big-5 locale.
37449         * lisp/international/robin.el, lisp/org/ox-ascii.el:
37450         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
37451         * lisp/language/ethio-util.el: Fix trailer.
37453 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
37455         Fix synchronous invocation of Ispell
37456         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
37457         value to ispell-process-directory before calling ispell-init-process.
37458         Don't call set-process-coding-system if ispell-async-processp is nil.
37459         (Bug#20448)
37461 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
37463         * lisp/emacs-lisp/package.el: Skip space and comments in init file
37464         (package--ensure-init-file): Insert snippet at first
37465         non-whitespace non-comments line.  Respects local-vars at the top
37466         of the file.
37468 2015-04-28  Glenn Morris  <rgm@gnu.org>
37470         * lisp/mail/rmail.el (rmail-copy-headers):
37471         Handle rmail-nonignored-headers being nil.  (Bug#18878)
37473         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
37475         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
37476         Don't get confused by a bzrlib version mismatch warning.
37478 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
37480         Change default location of EUDC options file
37481         * etc/NEWS: Document change to EUDC options file's default location.
37482         * lisp/net/eudc-vars.el (eudc-options-file): Use
37483         `locate-user-emacs-file' to change default options file location.
37485 2015-04-27  Glenn Morris  <rgm@gnu.org>
37487         * test/automated/package-test.el (package-test-update-archives-async):
37488         Try to handle the test server script dying.
37490 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
37492         * lisp/saveplace.el (save-place-mode): New minor mode.
37493         (save-place): Redefine as an obsolete alias.
37495         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
37496         * lisp/midnight.el: Use lexical-binding.
37497         (midnight-mode): Make it a proper minor mode.
37498         (midnight-buffer-display-time): Make arg non-optional.
37499         (midnight-find): Remove.
37500         (clean-buffer-list-kill-never-regexps)
37501         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
37502         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
37503         contain functions.
37504         (clean-buffer-list): Use cl-find.
37505         Allow clean-buffer-list-kill-never-regexps to contain functions.
37507 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
37509         Bump version of seq.el to 1.5
37510         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
37511         from seq-doseq.  Bump version number of seq.el.
37513 2015-04-27  Glenn Morris  <rgm@gnu.org>
37515         * lisp/mail/rmail.el (rmail-reply):
37516         Decode subject before matching "Re:" prefix.  (Bug#20396)
37518 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
37520         * lisp/emacs-lisp/package.el: Small improvements
37521         (package--with-work-buffer-async): More informative error.
37522         (package-install-user-selected-packages): Rename to
37523         `package-install-selected-packages'.
37525 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
37527         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
37528         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
37529         (eieio--class-make): Remove leftover `tag'.
37531 2015-04-27  Glenn Morris  <rgm@gnu.org>
37533         * lisp/gnus/message.el (gnus-extract-address-components):
37534         Remove bogus declaration that was masking previous problem.
37536 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
37538         * lisp/gnus/message.el (message-insert-formatted-citation-line):
37539         Fix typo.  (Bug#20318)
37541 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
37543         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
37545         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
37546         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
37547         the buffer in yet another frame.
37548         (reftex-toc-visit-location): Make sure toc-window has focus at the end
37549         when `final' is nil.
37550         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
37551         silence warnings.  Use `--' to clarify that it's internal.
37552         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
37553         (reftex-toc-promote): Clarify unused argument.
37554         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
37555         Add `reftex--' prefix.  Fix all users.
37556         (reftex-toc-promote-prepare): Use _ for dummy variable.
37557         (reftex-toc-restore-region): Rename `m.
37559 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
37561         Fix a typo in bibtex.el
37562         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
37563         last change.  (Bug#20429)
37565         Fix redisplay of frame after loading new fonts
37566         * src/xdisp.c (redisplay_internal): When retrying redisplay of
37567         a frame because new fonts were loaded, disable all redisplay
37568         optimizations on that frame by calling SET_FRAME_GARBAGED.
37569         (Bug#20410)
37571 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
37573         * lisp/info.el (Info-menu): Properly provide the `default'
37574         (Bug#20391)
37576         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
37577         Catch errors from documentation (bug#20418).
37578         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
37580 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
37582         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
37583         Remove redundant ":group 'package".
37585 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
37587         Fix a typo in rmail.el
37588         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
37589         last commit.  (Bug#20429)
37591 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
37593         Introduce xref-prompt-for-identifier
37594         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
37595         (xref--read-identifier): Use it
37596         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
37598 2015-04-26  João Távora  <joaotavora@gmail.com>
37600         `tex-insert-quote' after single `'' opens quotes instead of closing
37601         Without this, it's very hard to precede double quotes with the
37602         apostrophe character, i.e. insert the sequence '``
37603         (quote-backquote-backquote), commonly useful in portuguese, for
37604         instance.
37605         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
37606         preceding chars making `tex-insert-quote' be in the "opening" context.
37608 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
37610         Pass `id' to `completing-read' as def instead of initial input
37611         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
37612         `completing-read' as the default value instead of initial input
37613         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
37615 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
37617         Don't freeze with unreadable processes
37618         Don't freeze if an exiting process can't be read from.  (Bug#19860).
37619         This fixes a bug I introduced in
37620         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
37621         "* process.c: Add sanity checks for file descriptors."
37622         Dmitry Gutov did most of the legwork in finding the problem.
37623         * src/process.c (wait_reading_process_output):
37624         Treat non-running processes that can't be read from
37625         the same as other non-running processes.
37627 2015-04-25  Alan Mackenzie  <acm@muc.de>
37629         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
37630         * lisp/subr.el (remove-yank-excluded-properties): Put
37631         `with-silent-modifications' around only the last three lines of code.
37633 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
37635         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
37636         (package--all-keywords): Deleted variable.
37638         * etc/NEWS: Document package-hiding functionality.
37640 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
37642         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
37644         Clarify the doc string of 'replace-regexp-in-string'
37645         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
37647         Improve doc string of 'insert-buffer-substring'
37648         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
37650         MS-Windows followup for the recent gnulib update
37651         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
37652         acl-internal.c.
37654 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
37656         Spelling fixes
37658         Merge from gnulib
37659         This incorporates:
37660         2015-04-24 file-has-acl: new module, split from acl
37661         2015-04-24 manywarnings: add GCC 5.1 warnings
37662         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
37663         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
37664         2015-04-15 acl: On Linux, check for acls without libacl
37665         2015-04-14 tempname: avoid unused parameter warnings (trivial)
37666         * lib/acl-internal.c: New file, from gnulib.
37667         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
37668         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
37669         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
37670         Update from gnulib.
37672         Port --enable-gcc-warnings to GCC 5.1 x86-64
37673         * lib-src/ebrowse.c (dump_sym):
37674         * lib-src/hexl.c (main):
37675         * src/ccl.c (ccl_driver):
37676         * src/character.c (string_escape_byte8):
37677         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
37678         * src/gnutls.c (Fgnutls_boot):
37679         * src/gtkutil.c (xg_check_special_colors):
37680         * src/image.c (x_build_heuristic_mask):
37681         * src/print.c (safe_debug_print, print_object):
37682         * src/term.c (produce_glyphless_glyph):
37683         * src/xdisp.c (get_next_display_element)
37684         (produce_glyphless_glyph):
37685         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
37686         Don't use a signed format to print an unsigned integer, or vice
37687         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
37688         * src/image.c (png_load_body, jpeg_load_body):
37689         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
37691 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
37693         Add new faces to tsdh-light-theme
37694         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
37695         definitions for Info-quoted, ace-jump-face-foreground,
37696         hl-paren-face, show-paren-match, and show-paren-mismatch.
37698 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
37700         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
37702 2015-04-24  Glenn Morris  <rgm@gnu.org>
37704         * build-aux/gitlog-to-emacslog:
37705         Use raw log format rather than wrapped one.
37707 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
37709         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
37710         (seq-doseq): Fix out-of-scope binding.
37711         Don't call `seq-length at every iteration.
37712         Reduce `if's from 3 to 2 per iteration.
37713         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
37715 2015-04-24  Glenn Morris  <rgm@gnu.org>
37717         * lisp/textmodes/text-mode.el (text-mode-hook):
37718         Move text-mode-hook-identify to default.
37720         * lisp/mouse.el (minor-mode-menu-from-indicator):
37721         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
37723         * lisp/help-fns.el (describe-function): More type checking.
37724         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
37726         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
37727         (Bug#20325)
37729 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
37731         shr: strip leading whitespace when expanding URLs
37732         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
37734 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
37736         Clarify "co-authored" some more
37738         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
37740         Clarify doc strings of functions that search for properties
37741         * src/textprop.c (Fnext_char_property_change)
37742         (Fprevious_char_property_change)
37743         (Fnext_single_char_property_change)
37744         (Fprevious_single_char_property_change, Fnext_property_change)
37745         (Fnext_single_property_change, Fprevious_property_change)
37746         (Fprevious_single_property_change): Clarify doc strings wrt return
37747         value and the optional LIMIT argument.  (Bug#20411)
37749 2015-04-24  Glenn Morris  <rgm@gnu.org>
37751         * test/automated/message-mode-tests.el (message-mode-propertize):
37752         Handle non-writable HOME; eg on hydra.nixos.org.
37754 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
37756         Avoid starting threads by w32-shell-execute
37757         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
37758         local file names, before invoking ShellExecute.  (Bug#20220)
37760 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
37762         Fix following doc-links in `widget-documentation-link-action'
37763         * lisp/wid-edit.el (widget-documentation-link-action): Make
37764         following doc-links less simplistic (Bug#20398).
37766 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
37768         Improve EUDC manual
37769         * doc/misc/eudc.texi (Troubleshooting):
37770         New LDAP troubleshooting subsection.
37772 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
37774         Omit needless "\ " after multibyte then newline
37775         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
37776         (print_object): When print-escape-multibyte is non-nil and a
37777         multibyte character is followed by a newline or formfeed, followed
37778         by a hex digit, don't output a needless "\ " before the hex digit.
37779         * test/automated/print-tests.el (print-hex-backslash): New test.
37781 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
37783         Add a new `inhibit-message' variable
37784         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
37785         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
37786         `inhibit_message' is non-zero.
37787         * etc/NEWS: Add an entry.
37788         * doc/lispref/display.texi: Add an entry for `inhibit-message',
37789         mention it in `message'.
37791 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
37793         Fix last fix in `display-buffer-record-window'.
37794         * lisp/window.el (display-buffer-record-window): Fix last fix.
37796 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
37798         Minor edits in CONTRIBUTE
37799         * CONTRIBUTE: Rearrange instructions about log messages.
37800         Use "Git" capitalized all over.
37801         Use 2 spaces between sentences.
37803 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
37805         * lisp/files.el (basic-save-buffer): Fix argument.
37807         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
37808         In case `(and (null custom-file) init-file-had-error)' do the same
37809         thing we'd do if `(null user-init-file)', which is to either error out
37810         or return nil.  This is in line with `custom-save-all' which would
37811         throw an error in that situation.  (Bug#20355)
37813         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
37814         (package-menu-hide-low-priority): New variable, see its doc.
37815         (package-archive-priorities): Update doc.
37816         (package-desc-priority): New function.
37817         (package-desc-priority-version): Use it.
37818         (package--remove-hidden): New function.
37819         (package-menu--refresh): Use it.
37821         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
37822         (package-menu--hide-obsolete): New variable.
37823         (package--remove-hidden): Use it.
37824         (package-menu-hide-obsolete): New interactive function to toggle
37825         the variable.
37826         (package--quick-help-keys): Document it.
37827         (package-menu-async): Add :version tag.
37828         (package-menu-mode-map): Bind package-menu-hide-obsolete.
37829         (package-desc-status): Indicate non-installed obsolete packages as
37830         avail-obso.
37831         (package-menu-mark-install): Allow installation of avail-obso.
37832         (package-menu--status-predicate): Sort avail-obso with available.
37834 2015-04-22  Alan Mackenzie  <acm@muc.de>
37836         On C-y, stop some text property entries being written into buffer-undo-list
37837         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
37838         `with-silent-modifications'.
37840 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
37842         In display-buffer-record-window record selected window if necessary
37843         * lisp/window.el (display-buffer-record-window): Store selected window
37844         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
37846 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
37848         Fix reftex-citation bug
37849         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
37850         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
37851         integration is enabled and there are no citations in the document
37852         so far.
37854 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
37856         Add or reset based on the presence of MERGE_HEAD
37857         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
37858         `vc-git-resolve-when-done' to `after-save-hook' in either case.
37859         (vc-git-conflicted-files): Add a TODO.
37860         (vc-git-resolve-when-done): Depending on the presence of
37861         MERGE_HEAD, either update the resolved file in the index, or
37862         remove it from there.  (Bug#20292)
37864 2015-04-21  Glenn Morris  <rgm@gnu.org>
37866         * lisp/custom.el (custom-declare-group): No need to purecopy
37867         custom-current-group-alist members following recent change to set
37868         it to nil before dumping.
37870         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
37871         (Bug#20399)
37873 2015-04-21  Daniel Colascione  <dancol@dancol.org>
37875         Unbreak no-op buffer save message
37876         * lisp/files.el (basic-save-buffer): Accept called-interactively as
37877         an argument instead of directly invoking called-interactively-p,
37878         which will always yield nil in that context.
37880 2015-04-21  Alan Mackenzie  <acm@muc.de>
37882         CC Mode: Do nothing in before/after-change-functions for text
37883         property changes
37884         Fixes bug#20266.
37885         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
37886         yank-handled-properties buffer local, and remove 'category from it.
37887         (c-called-from-text-property-change-p): New function.
37888         (c-before-change): Don't do anything if a call of the new function
37889         returns non-nil.
37890         (c-after-change): Don't do much if a call of the new function returns
37891         non-nil.
37892         (c-extend-after-change-region): Put changes to text property 'fontified
37893         inside c-save-buffer-state.
37895 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
37897         Fix byte-compiler warnings about looking-back
37898         * lisp/vc/log-view.el (log-view-end-of-defun-1):
37899         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
37900         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
37901         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
37902         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
37903         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
37904         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
37905         * lisp/org/org.el (org-insert-heading, org-sort-entries):
37906         * lisp/org/org-mouse.el (org-mouse-end-headline)
37907         (org-mouse-context-menu):
37908         * lisp/org/org-clock.el (org-clock-cancel):
37909         * lisp/man.el (Man-default-man-entry):
37910         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
37911         (rmail-ensure-blank-line):
37912         * lisp/mail/footnote.el (Footnote-delete-footnote):
37913         * lisp/mail/emacsbug.el (report-emacs-bug):
37914         * lisp/info.el (Info-follow-reference, Info-fontify-node):
37915         * lisp/info-look.el (info-lookup-guess-custom-symbol):
37916         * lisp/help-fns.el (help-fns--key-bindings):
37917         * lisp/files.el (hack-local-variables):
37918         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
37919         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
37920         (viper-complete-filename-or-exit):
37921         * lisp/emulation/viper-cmd.el (viper-backward-indent):
37922         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
37923         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
37924         * lisp/cus-edit.el (custom-face-edit-value-create):
37925         * lisp/calendar/todo-mode.el (todo-set-item-priority)
37926         (todo-filter-items-1, todo-convert-legacy-files)
37927         (todo-prefix-overlays): Add explicit second arg to looking-back.
37929 2015-04-20  Glenn Morris  <rgm@gnu.org>
37931         Avoid non-nil current-load-list at startup
37932         * src/process.c (init_process_emacs): Move Fprovide statement...
37933         (syms_of_process): ... to here.
37935         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
37937         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
37938         in emacs -Q.
37940 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
37942         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
37943         (Bug#20330)
37945 2015-04-20  Glenn Morris  <rgm@gnu.org>
37947         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
37949         Tweak exec-path in uninstalled case
37950         * src/callproc.c (init_callproc): If running uninstalled, do not
37951         include eventual installation libexec directory in exec-path.
37953 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
37955         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
37956         cache keywords.
37957         (package-menu-filter): Accept a list of keywords.
37958         (package--all-keywords): New variable to cache known keywords.
37959         (package-all-keywords): Populate it if necessary.
37960         (package-refresh-contents): Reset it.
37962         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
37963         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
37964         as special keywords which match agains package archive and status
37965         respectively.
37966         * etc/NEWS: Document it.
37968 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
37970         Describe and index "empty overlays".
37971         * doc/lispref/display.texi (Overlays): Improve indexing.
37972         (Managing Overlays): Describe "empty" overlays.
37973         (Overlay Properties, Finding Overlays): Add cross-reference to
37974         where empty overlays are described.
37976 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
37978         Spelling fixes
37980         Quote 'like this' in top-level files
37981         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
37982         Prefer to single-quote 'like this' (instead of the older style
37983         `like this').
37984         * configure.ac: Fix some space-before-tab problems that 'git commit'
37985         complained about.
37987         Use bool for boolean in textprop.c, undo.c
37988         * src/textprop.c (soft, hard): Now constants instead of macros.
37989         (validate_plist): Rewrite to avoid need for boolean local.
37990         (interval_has_all_properties, interval_has_some_properties)
37991         (interval_has_some_properties_list, add_properties)
37992         (remove_properties, get_char_property_and_overlay)
37993         (Fnext_single_char_property_change)
37994         (Fprevious_single_char_property_change, add_text_properties_1)
37995         (Fremove_text_properties, Fremove_list_of_text_properties)
37996         (copy_text_properties):
37997         * src/tparam.c (tparam1):
37998         * src/undo.c (record_change, record_property_change)
37999         (syms_of_undo):
38000         Use 'true' and 'false' for booleans.
38002 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
38004         * lisp/vc/vc-git.el (vc-git-find-file-hook):
38005         Call `smerge-start-session' even when dealing with a stash
38006         conflict (bug#20292).
38008 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
38010         Add option to eshell/clear to clear scrollback.
38011         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
38012         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
38013         scrollback contents are cleared.
38014         * etc/NEWS: Describe change.
38015         * doc/misc/eshell.texi: Add entry for `clear'.
38017 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
38019         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
38020         where either will do.
38022 2015-04-19  Steve Purcell  <steve@sanityinc.com>
38024         Assume package archive-contents are UTF8-encoded
38025         * lisp/emacs-lisp/package.el (package--read-archive-file):
38026         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
38027         downloaded and cached archive-contents files, so that non-ASCII
38028         characters in package descriptions are displayed correctly in the
38029         `list-packages' menu.  (Bug#20231)
38031 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
38033         Abort when looking at stashed changes
38034         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
38035         stashed changes (bug#20292).
38037 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
38039         Refactor low-level printing for simplicity
38040         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
38041         PRINTPREPARE; doable now that we assume C99.  All callers changed.
38042         (PRINTCHAR): Remove, as it adds more mystery than clarity.
38043         All callers changed.
38044         (strout): Assume that caller computes length.  All callers changed.
38045         (print_c_string): New function.
38046         (write_string, write_string_1): Compute length instead of asking
38047         the caller to compute it.  All callers changed.
38048         (write_string): Simplify by using write_string_1.
38049         (write_string_1): Simplify by using print_c_string.
38050         (Fterpri): Compute default val more clearly.
38051         (Fprin1_to_string, print_object):
38052         Assume C99 to avoid unnecessary nesting.
38053         (print_object): Prefer print_c_string to multiple printchar, or
38054         to calling strout with -1 length.  Coalesce into sprintf when
38055         this is easy.
38057 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
38059         Prefer "Bug#1234" in commit messages (Bug#20325)
38060         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
38061         as this isn't useful for Git.
38062         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
38064 2015-04-18  Glenn Morris  <rgm@gnu.org>
38066         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
38067         (Bug#19506)
38069 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
38071         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
38072         Do not use `chomp' as a function.  (Bug#19505)
38074 2015-04-18  Glenn Morris  <rgm@gnu.org>
38076         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
38078         * doc/emacs/misc.texi (Sorting): Small edit.
38079         (Bug#19896)
38081         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
38083 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
38085         css-mode.el: Support multi-line comment filling
38086         (Bug#20256)
38087         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
38088         comment filling.
38089         (css-adaptive-fill): New function.
38090         (css-mode): Set `adaptive-fill-function'.
38091         (scss-mode): Set `comment-continue'.
38093 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
38095         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
38096         Better error messages.
38098 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
38100         Minor improvements in Bulgarian input methods
38101         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
38102         Replace U+042C with U+045D, as the former character is not used in
38103         the modern Bulgarian language.
38104         (Bug#20350)
38106 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
38108         Improve EUDC manual
38109         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
38110         authentication schemes.  Add index items.  Shorten example server
38111         name.
38113 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
38115         Don't show both feature and function with the same name
38116         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
38117         Don't show both feature and function with the same name.
38119         (elisp--xref-identifier-location): Skip variable, if it's also
38120         a function
38121         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
38122         Avoid returning both the variable and the function for the same
38123         minor mode.
38125 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
38127         Fix fontification of keywords clobbered by the prompt
38128         * lisp/comint.el (comint-output-filter): Remove the uses of
38129         with-silent-modifications I introduced as part of the last change.
38130         This fixes, e.g., erratically missing highlighting when running
38131         ./configure --help; ./configure in a shell-mode buffer with
38132         compilation-shell-minor-mode turned on.
38134 2015-04-17  Glenn Morris  <rgm@gnu.org>
38136         * admin/authors.el (authors-valid-file-names)
38137         (authors-renamed-files-alist): Additions.
38139 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
38141         * lisp/indent.el (indent-region): Don't deactivate the mark.
38142         (Bug#20357)
38144 2015-04-17  Sam Steingold  <sds@gnu.org>
38146         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
38148 2015-04-16  Leo Liu  <sdl.web@gmail.com>
38150         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
38152 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
38154         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
38155         Don't use `pcomplete' any more.
38157 2015-04-16  Glenn Morris  <rgm@gnu.org>
38159         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
38161 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
38163         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
38164         * configure.ac (LIBJPEG): Leave it empty for MinGW.
38166 2015-04-16  Glenn Morris  <rgm@gnu.org>
38168         * lisp/replace.el (query-replace-from-to-separator):
38169         Delay initialization to avoid rogue setting after startup.
38171 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
38173         Pre-4.6 GCC succeeds with unknown option
38174         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
38175         (Bug#20338)
38177 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
38179         '[:graph:]' now excludes whitespace, not just ' '
38180         * doc/lispref/searching.texi (Char Classes):
38181         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
38182         sans whitespace (not sans space).
38183         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
38184         not just space.
38185         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
38187 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
38189         * lisp/subr.el (substitute-key-definition-key, special-form-p)
38190         (macrop): Drop deprecated second arg to indirect-function.
38191         (looking-back): Make the second arg non-optional.
38193         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
38194         command is actually sent to the shell.
38196 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
38198         Port jpeg configuration to Solaris 10 with Sun C
38199         * configure.ac: Check for jpeglib 6b by trying to link it, instead
38200         of relying on cpp magic that has problems in practice.  Check for
38201         both jpeglib.h and jerror.h features.  Remove special case for
38202         mingw32, which should no longer be needed (and if it were needed,
38203         should now be addressable by hotwiring emacs_cv_jpeglib).
38204         (Bug#20332)
38206 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
38208         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
38209         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
38210         Move to elisp-mode.el.
38211         (lisp-mode-variables): (Re)move elisp-specific settings.
38212         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
38213         from lisp-mode-variables.
38214         (elisp--font-lock-flush-elisp-buffers): New function, moved from
38215         lisp-mode.el.
38217         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
38218         Avoid pathological slowdown at top-level in large file.
38220 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
38222         Standardize names of ChangeLog history files
38223         Suggested by Glenn Morris in:
38224         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
38225         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
38226         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
38227         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
38228         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
38229         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
38230         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
38231         Remove.
38233         Split top-level entries into pre- and post-April 7
38234         This more clearly distingiushes pre-April-7 ChangeLog entries (which
38235         are for top-level files only) from post-April-7 entries (which are
38236         about files at all levels.  Problem reported by Glenn Morris in:
38237         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
38238         * ChangeLog.1: Move post-April-7 entries from here ...
38239         * ChangeLog.2: ... to this new file.
38240         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
38242 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
38244         Fix recent cus-start changes that added customize-rogues
38245         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
38246         vars early.
38247         * lisp/loadup.el ("cus-start"): Move to the end to reduce
38248         customize-rogue.
38250 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
38252         Define cl-concatenate as an alias to seq-concatenate
38253         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
38254           code by making cl-concatenate an alias to seq-concatenate.
38256 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
38258         * src/lread.c (intern_1): Make sure we'd find the symbol we add
38259         (Bug#20334)
38260         * src/xfaces.c (resolve_face_name): Don't use `intern' with
38261         Lisp_Strings.
38263 2015-04-15  Glenn Morris  <rgm@gnu.org>
38265         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
38267 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
38269         Clean up gnus-uu saving code slightly
38270         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
38271         save-restriction/widen calls make more sense.
38273 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
38275         Make [:graph:] act like [:print:] sans space
38276         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
38277         [:graph:] so that it matches everything that [:print:] does,
38278         except for space.
38279         * doc/lispref/searching.texi (Char Classes):
38280         * etc/NEWS:
38281         * lisp/emacs-lisp/rx.el (rx):
38282         Document [:graph:] to be [:print:] sans ' '.
38283         * src/character.c, src/character.h (graphicp): New function.
38284         * src/regex.c (ISGRAPH) [emacs]: Use it.
38285         (BIT_GRAPH): New macro.
38286         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
38287         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
38288         Return BIT_GRAPH for RECC_GRAPH.
38289         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
38290         and ISPRINT if BIT_PRINT.
38292 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
38294         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
38295         Don't use call-next-method in a cl-defmethod.
38297         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
38298         (eieio--class-p): Remove, provided by cl-defstruct.
38300 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
38302         Add seq-intersection and seq-difference to the seq library
38303         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
38304         New functions.
38305         * test/automated/seq-tests.el: Add tests for seq-intersection and
38306         seq-difference.
38307         * doc/lispref/sequences.texi: Add documentation for seq-intersection
38308         and seq-difference.
38310 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
38312         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
38313         to avoid leaking internals.
38315 2015-04-14  Sam Steingold  <sds@gnu.org>
38317         package--ensure-init-file: widen requires save-restriction
38319 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
38321         Improve the commit-msg Git hook for unibyte environments
38322         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
38323         in unibyte environments.  (Suggested by Paul Eggert
38324         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
38325         [:print:], based on UTF-8 sequences of the unprintable characters.
38327         Describe problems with cursor caused by Windows Magnifier
38328         * etc/PROBLEMS: Describe the problem with cursor shape on
38329         MS-Windows due to Windows Magnifier.
38330         (Bug#20271)
38332         Make [:print:] support non-ASCII characters correctly
38333         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
38334         (BIT_PRINT): New bit mask.
38335         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
38336         * src/character.c (printablep): New function.
38337         * src/character.h (printablep): Add prototype.
38338         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
38339         of 'print', 'alnum', and 'alphabetic'.
38340         * doc/lispref/searching.texi (Char Classes): Document the new
38341         behavior of [:print:].
38342         * etc/NEWS: Mention the new behavior of [:print:].
38344         Assign correct general-category and names to surrogates
38345         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
38346         surrogates.  This avoids assigning them the default
38347         general-category of 'Cn', i.e. unassigned codepoints.
38348         (unidata-get-name): Give surrogates synthetic names.
38350 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
38352         Assume C89 offsetof in xterm.c, xlwmenu.c
38353         * lwlib/xlwmenu.c (offset):
38354         * src/xterm.c (cvt_string_to_pixel_args):
38355         Use offsetof, not XtOffset.
38357 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
38359         Assume C89 offsetof in widget.c
38360         * src/widget.c (XtOffset): Remove; no longer needed.
38361         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
38363         Fix think-o in previous patch
38364         * src/window.c (count_windows, get_leaf_windows):
38365         Don't optimize count_windows incorrectly.
38367 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
38369         Avoid some int overflows in window.c
38370         * src/print.c (print_object):
38371         * src/window.c (sequence_number):
38372         * src/window.h (struct window.sequence_number):
38373         Don't assume window sequence number fits in int.
38374         * src/window.c (window_select_count):
38375         * src/window.h (struct window.use_time, window_select_count):
38376         Don't assume window use time fits in int.
38377         * src/window.c (Fsplit_window_internal):
38378         Don't assume user-supplied integer, or sum, fits in int.
38379         (Fset_window_configuration, count_windows, get_leaf_windows)
38380         (save_window_save, Fcurrent_window_configuration):
38381         Use ptrdiff_t for object counts.
38382         (Fset_window_configuration): Omit unused local 'n'.
38383         (count_windows): Simplify by writing in terms of get_leaf_windows.
38384         (get_leaf_windows): Don't store through FLAT if it's null.
38385         (extract_dimension): New static function.
38386         (set_window_margins, set_window_fringes, set_window_scroll_bars):
38387         Use it to avoid undefined behavior when converting user-supplied
38388         integer to 'int'.
38390 2015-04-13  Glenn Morris  <rgm@gnu.org>
38392         Minor doc copyedits
38393         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
38394         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
38396 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
38398         [Gnus] Catch the invalid-operation that idna.el will issue
38399         * lisp/gnus/gnus-art.el (gnus-use-idna):
38400         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
38401         * lisp/gnus/message.el (message-use-idna):
38402         Catch the invalid-operation that idna.el will issue.
38404 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
38406         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
38408 2015-04-13  Sam Steingold  <sds@gnu.org>
38410         package--ensure-init-file: widen before looking for
38411         "(package-initialize)"
38413 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
38415         Change diff-switches default to `-u' (Bug#20290)
38416         * doc/emacs/files.texi (Comparing Files): Document the new default
38417         value of `diff-switches'.
38418         * doc/emacs/trouble.texi (Sending Patches): Document the preference
38419         for unified diff format.  Escape the plus in the suggested `-F' regexp
38420         value.
38421         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
38423 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
38425         (gnus-group--setup-tool-bar-update): Fix last change
38426         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
38427         cursor-sensor-functions should be a list of functions.
38429 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
38431         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
38432         Use gmm-called-interactively-p.
38434 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
38436         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
38437         (Bug#20321)
38438         * lisp/cus-start.el (read-buffer-function): Don't advertise
38439         iswitchb-read-buffer any more.
38440         (iswitchb): Don't tweak this obsolete group any more.
38442 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
38444         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
38446         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
38447         Adding a string after a constructor's argument list will use
38448         that string as the constructor function docstring.  If this string
38449         is absent but the struct itself was given a docstring, use that as
38450         the constructor's docstring.
38451         Fixes bug#17284.
38453 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
38455         Deprecate `intangible' and `point-entered' properties
38456         * lisp/emacs-lisp/cursor-sensor.el: New file.
38457         * lisp/simple.el (pre-redisplay-functions): New hook.
38458         (redisplay--pre-redisplay-functions): New function.
38459         (pre-redisplay-function): Use it.
38460         (minibuffer-avoid-prompt): Mark obsolete.
38461         (redisplay--update-region-highlight): Adapt it to work as a function on
38462         pre-redisplay-functions.
38463         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
38464         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
38465         than point-entered to make the prompt intangible.
38466         * lisp/forms.el: Move `provide' calls to the end.
38467         (forms-mode): Don't use `run-hooks' on a local var.
38468         (forms--make-format, forms--make-format-elt-using-text-properties):
38469         Use cursor-intangible rather than `intangible'.
38470         (forms-mode): Enable cursor-intangible-mode.
38471         * lisp/isearch.el (isearch-mode): Use defvar-local.
38472         (cursor-sensor-inhibit): Declare.
38473         (isearch-mode): Set cursor-sensor-inhibit.
38474         (isearch-done): Set it back.
38475         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
38476         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
38477         any more.
38478         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
38479         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
38480         Add Edebug spec.
38481         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
38482         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
38483         inhibit-point-motion-hooks any more.
38484         (ses--cell-at-pos, ses--curcell): New functions, extracted from
38485         ses-set-curcell.
38486         (ses-set-curcell): Use them.
38487         (ses-print-cell, ses-setup): Use cursor-intangible instead of
38488         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
38489         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
38490         Use ses--cell-at-pos.
38491         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
38492         extracted from ses-command-hook.  Make them work with multiple windows
38493         displaying the same buffer.
38494         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
38495         Enable cursor-intangible-mode.
38496         (ses-command-hook): Remove cell highlight and mode-line update code.
38497         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
38498         Update for new name of text-property holding the cell name.
38499         (ses-rename-cell): Don't mess with mode-line-process.
38500         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
38501         cursor-sensor-functions property instead of point-entered.
38502         (erc-insert-timestamp-right, erc-format-timestamp):
38503         Use cursor-intangible rather than `intangible'.
38504         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
38505         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
38506         cursor-sensor-mode if needed.
38507         (erc-echo-timestamp): Adapt to calling convention of
38508         cursor-sensor-functions.
38509         (erc-insert-timestamp-right): Remove unused vars `current-window' and
38510         `indent'.
38511         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
38512         (gnus-update-group-mark-positions): Remove unused `topic' var.
38513         (gnus-group-insert-group-line): Remove unused var `header'.
38514         (gnus-group--setup-tool-bar-update): New function.
38515         (gnus-group-insert-group-line): Use it.
38516         (gnus-group-update-eval-form): Declare local
38517         dynamically-bound variables.
38518         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
38519         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
38520         (gnus-group-prepare-topics, gnus-topic-update-topic)
38521         (gnus-topic-change-level, gnus-topic-catchup-articles)
38522         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
38523         Use inhibit-read-only.
38524         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
38525         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
38526         * lisp/textmodes/reftex-index.el (reftex-display-index):
38527         Use cursor-intangible-mode if available.
38528         (reftex-index-post-command-hook): Check cursor-intangible.
38529         * lisp/textmodes/reftex-toc.el (reftex-toc):
38530         Use cursor-intangible-mode if available.
38531         (reftex-toc-recenter, reftex-toc-post-command-hook):
38532         Check cursor-intangible.
38533         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
38534         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
38535         (sgml-tags-invisible): Use with-silent-modifications and
38536         inhibit-read-only.  Enable cursor-sensor-mode.
38537         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
38538         calling convention of cursor-sensor-functions.
38539         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
38540         (table-point-entered-cell-hook, table-point-left-cell-hook):
38541         Don't autoload.
38542         (table-cell-entered-state): Remove var.
38543         (table--put-cell-point-entered/left-property)
38544         (table--remove-cell-properties):
38545         Use cursor-sensor-functions rather than point-entered/left.
38546         (table--point-entered/left-cell-function): Merge
38547         table--point-entered-cell-function and table--point-left-cell-function
38548         and adjust to calling convention of cursor-sensor-functions.
38550         Update ldef-boots.el
38552         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
38554         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
38556         Collapse successive char deletions in the undo log
38557         * src/cmds.c (remove_excessive_undo_boundaries): New function,
38558         extracted from Fself_insert_command.
38559         (Fdelete_char, Fself_insert_command): Use it.
38560         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
38561         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
38563         xterm and OSC 52: Add NEWS entry, and tweak the code
38564         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
38565         to top-level.
38566         (terminal-init-xterm-activate-set-selection): Set a terminal property.
38567         (xterm--set-selection): Use it instead of checking the value of
38568         `terminal-initted'.  Don't use string-bytes.
38570 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
38572         xterm.el: Implement OSC-52 functionality for setting the X selection
38573         * lisp/term/xterm.el (xterm-max-cut-length): New var.
38574         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
38575         New funs.
38576         (terminal-init-xterm, xterm--version-handler): Use them.
38578 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
38580         Remove left over code from when we used an obsolete/loaddefs.el file
38581         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
38582         when we used an obsolete/loaddefs.el file.
38584         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
38585         (semanticdb-without-unloaded-file-searches): Use declare.
38586         (semantic-fw-add-edebug-spec): Remove.
38588         * lisp/completion.el (completion-lisp-mode-hook):
38589         Use completion-separator-chars rather than local key binding.
38591         * src/*.c: Set deactivate_mark buffer-locally
38592         (Bug#20260)
38593         * src/insdel.c (prepare_to_modify_buffer_1):
38594         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
38595         buffer-locally.
38597 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
38599         python.el: Keep symmetry on sexp navigation with parens
38600         (Bug#19954)
38601         * lisp/progmodes/python.el
38602         (python-nav--forward-sexp): Add argument skip-parens-p.
38603         (python-nav-forward-sexp, python-nav-backward-sexp)
38604         (python-nav-forward-sexp-safe)
38605         (python-nav-backward-sexp-safe): Use it.
38606         * test/automated/python-tests.el
38607         (python-nav-forward-sexp-1): Fix test.
38609 2015-04-12  João Távora  <joaotavora@gmail.com>
38611         Don't use `setq-local' in Gnus code
38612         This might break upstream builds with older Emacsen
38613         * lisp/gnus/message.el (message-mode): Use `set' and
38614         `make-local-variable' instead of `setq-local'.
38616 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
38618         Update Makefile.in's .PHONY dependencies
38619         * Makefile.in (change-history-commit, master-branch-is-current)
38620         (no-ChangeLog): Now phony.
38622         Remove configure's --with-mmdf option
38623         * configure.ac (MAIL_USE_MMDF): Remove.
38624         * etc/NEWS: Document this.
38625         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
38626         (Bug#20308)
38628         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
38629         That way, 'make install' won't think it's a man page.
38630         Reported by Ashish SHUKLA in:
38631         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
38633         Improve 'make change-history' prereq tests
38634         * Makefile.in (gen_origin): Fix to match what's in the master branch.
38635         (no-ChangeLog, master-branch-is-current): New rules.
38636         (change-history): Depend on them, to avoid similar future problems.
38637         Escape the local-variables string to pacify Emacs when editing
38638         Makefile.in.
38640 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
38642         * test/automated/package-test.el (with-package-test):
38643         Kill Packages buffer.
38645         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
38646         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
38647         "Upgrade" last, and use capitalized instead of all-caps.
38649         * lisp/emacs-lisp/package.el: Completely silence async operations.
38650         (package--make-autoloads-and-stuff): Silence autoloads.
38651         (package--save-selected-packages): New function, silences
38652         `customize-save-variable'.
38653         (package--user-selected-p, package-install-from-buffer)
38654         (package-delete, package-install): Use it.
38655         (package-install-from-archive)
38656         (package-menu--perform-transaction): Silence.
38657         (package-menu-execute): Feedback when operation starts.
38659         Use delay-mode-hooks when visiting the init-file
38660         * lisp/emacs-lisp/package.el (package--ensure-init-file):
38661         delay-mode-hooks.
38662         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
38664         * lisp/files.el: Only message when saving if save-silently is nil.
38665         (save-silently): New variable.
38666         (files--message): New function.
38667         (find-file-noselect, save-buffer, basic-save-buffer)
38668         (basic-save-buffer-2, save-some-buffers, not-modified)
38669         (append-to-file): Use them.
38671 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
38673         Support debug declarations in pcase macros
38674         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
38675         (pcase-UPAT): Use it.  Remove "`".
38676         (pcase--edebug-match-macro): New function.
38677         (pcase-defmacro): Support debug declarations.
38678         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
38679         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
38680         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
38681         Add debug declaration.
38683         pcase.el: Edebug support for `app' and vector patterns
38684         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
38685         (pcase-UPAT): Use it.  Support `app' patterns.
38686         (pcase-QPAT): Support vector patterns.
38688         edebug.el: Disambiguate vector specifications
38689         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
38690         `(vector ...)' as a vector specification, not as a sublist.
38692         (gnus-summary-refer-thread): Don't clobber unread articles
38693         This fixes a bug where `A T' causes "random" articles to become marked
38694         as read.
38695         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
38696         gnus-newsgroup-unreads remains sorted.
38698         mouse-sel.el: Fix mouse-sel-get-selection-function
38699         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
38700         Use gui--last-selected-text-primary instead of no longer existing
38701         gui-last-selected-text.
38703         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
38705         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
38707 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
38709         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
38711         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
38712         right buffer.
38714         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
38715         (byte-compile--interactive): New var.
38716         (byte-compile--message): New function.
38717         (byte-compile-log-1, byte-force-recompile)
38718         (byte-recompile-directory, byte-recompile-file)
38719         (byte-compile-file, compile-defun)
38720         (byte-compile-file-form-defmumble, byte-compile)
38721         (byte-compile-file-form-defalias, display-call-tree): Use it.
38723         * lisp/files.el: Don't message when nothing happened.
38724         (save-some-buffers, basic-save-buffer): Before messaging to say
38725         "nothing was saved" check if (called-interactively-p 'any).
38727 2015-04-12  João Távora  <joaotavora@gmail.com>
38729         Summary: Improve sexp-based movement in message-mode
38730         Works by giving citations and smileys a different syntax.  This helps
38731         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
38732         sexp-based movement.
38733         * lisp/gnus/message.el (message--syntax-propertize): New function.
38734         (message-mode): Set syntax-related vars.
38735         (message-smileys): New variable.
38736         * test/automated/message-mode-tests.el: New file
38738 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
38740         Use bool for boolean in window.c
38741         * src/window.c: Omit unnecessary static function decls.
38742         (adjust_window_count, select_window, Fselect_window)
38743         (window_body_width, Fwindow_body_height, Fwindow_body_width)
38744         (set_window_hscroll, check_window_containing, Fwindow_at)
38745         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
38746         (unshow_buffer, replace_window, recombine_windows)
38747         (add_window_to_list, candidate_window_p, next_window)
38748         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
38749         (Fget_buffer_window, Fdelete_other_windows_internal)
38750         (replace_buffer_in_windows_safely, set_window_buffer)
38751         (Fset_window_buffer, Fforce_window_update)
38752         (temp_output_buffer_show, make_parent_window)
38753         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
38754         (resize_frame_windows, Fsplit_window_internal)
38755         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
38756         (Fresize_mini_window_internal, mark_window_cursors_off)
38757         (window_scroll, window_scroll_pixel_based)
38758         (window_scroll_line_based, scroll_command, Fscroll_other_window)
38759         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
38760         (Fmove_to_window_line, Fset_window_configuration)
38761         (delete_all_child_windows, apply_window_adjustment)
38762         (set_window_fringes, set_window_scroll_bars)
38763         (Fset_window_vscroll, foreach_window, foreach_window_1)
38764         (compare_window_configurations, Fcompare_window_configurations):
38765         Prefer 'bool', 'true', and 'false' for booleans.
38766         * src/window.h (WINDOW_MODE_LINE_LINES)
38767         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
38769 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
38771         Speed up byte-compilation and autoload generation by avoiding mode-hooks
38772         This prevents emacs-lisp-mode-hook from being run everytime an
38773         autoload file is generated, which can account for a fraction of
38774         package installation time depending on the hooks the user has
38775         configured.
38776         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
38777         * lisp/emacs-lisp/autoload.el (autoload-find-file)
38778         (autoload-find-generated-file): Use delay-mode-hooks.
38780         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
38781         (package-menu-refresh): Respect async and do new package checking.
38782         (list-packages): Use `package-menu-refresh' instead of repeating code.
38784         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
38785         (package--quick-help-keys): New variable.
38786         (package--prettify-quick-help-key): New function.
38787         (package-menu-quick-help): Use it.
38789         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
38790         (package--build-compatibility-table): Require finder.
38792         * test/automated/package-test.el: Fix new test.
38794         * lisp/emacs-lisp/package.el: Silence async operations.
38795         (package--silence): New variable.
38796         (package--message): New function.
38797         (package-import-keyring, package-refresh-contents)
38798         (package-compute-transaction, package-install, package-delete)
38799         (package-menu--perform-transaction, package-menu-execute): Use it.
38801         * test/automated/package-test.el: Test async functionality.
38802         (package-test-update-archives-async): New test.
38804 2015-04-11  Daiki Ueno  <ueno@gnu.org>
38806         Utilize `make-process' in epg.el
38807         * lisp/epg.el (epg-error-output): Abolish.
38808         (epg-context): New slot `error-buffer'.
38809         (epg--start): Use `make-process' and `make-pipe-process'.
38810         (epg--process-filter): Remove code separating stderr from stdout.
38811         (epg-wait-for-completion): Simplify `error-output' handling.
38812         (epg-reset): Dispose error buffer.
38814 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
38816         * .gitignore: Ignore doc temps and outputs.
38818         Port commit-msg to MSYS Bash+Gawk
38819         See Eli Zaretskii in:
38820         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
38821         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
38822         (cent_sign, print_at_sign, at_sign): Revert previous change.
38823         (print_at_sign): Prepend "BEGIN".
38824         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
38826         Port commit-msg to broken MS-Windows shell
38827         * build-aux/git-hooks/commit-msg (cent_sign):
38828         Just use UTF-8 here rather than ASCII + printf, as the latter fails
38829         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
38830         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
38832 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
38834         Support GnuTLS v3.4 and later on MS-Windows
38835         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
38836         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
38837         GnuTLS DLL to load according to value of libgnutls-version.
38838         (Bug#20294)
38840 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
38842         Minor quoting etc. fixes to misc manuals
38843         Fix some minor quoting and spacing issues.  Distinguish more
38844         clearly among grave accent and apostrophe (which are ASCII) and
38845         single quote (which is not).  Prefer the standard terms
38846         "apostrophe" and "grave accent" to alternative names that can be
38847         confusing.  Use apostrophes to single-quote ASCII text.
38848         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
38849         rather than approximating it in ASCII with grave accent.
38851 2015-04-11  Daiki Ueno  <ueno@gnu.org>
38853         Respect more keyword args in `make-process'
38854         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
38855         keywords as documented.
38857 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
38859         Extract ChangeLog entries when committing a directory
38860         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
38861         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
38862         Add a FIXME comment.
38863         (log-edit-changelog-entries): Extract from
38864         `log-edit-changelog-entries', handle FILE being a directory
38865         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
38867 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
38869         Fix problems found by --enable-gcc-warnings
38870         * src/process.c (create_process, Fmake_pipe_process)
38871         (Fmake_network_process): Omit unused locals.
38873         Fix commit-msg to handle scissors lines
38874         * build-aux/git-hooks/commit-msg:
38875         Ignore every line after a scissors line, such as a line generated
38876         by 'git commit -v'.  Problem reported by Johan Bockgård in:
38877         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
38879         port commit-msg to Gawk 3.0.4 (1999)
38880         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
38881         (print_at_sign, at_sign): New vars.  Use them to avoid problems
38882         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
38883         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
38885         Have commit-msg report commit failure
38886         * build-aux/git-hooks/commit-msg: If the commit is aborted,
38887         say so.  Simplify by doing this at the end.  Problem reported
38888         by Eli Zaretskii in:
38889         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
38891 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
38893         Clean up LDAP Configuration section of EUDC manual
38894         * doc/misc/eudc.texi: Combine indices.
38895         (LDAP Configuration): Use command markup.  Add index entries.
38896         Change formatting.  Wrap long lines.  Add noindent markup.
38898 2015-04-10  Daiki Ueno  <ueno@gnu.org>
38900         Add facility to collect stderr of async subprocess
38901         * src/w32.h (register_aux_fd): New function declaration.
38902         * src/w32.c (register_aux_fd): New function.
38903         * src/process.h (struct Lisp_Process): New member stderrproc.
38904         * src/process.c (PIPECONN_P): New macro.
38905         (PIPECONN1_P): New macro.
38906         (Fdelete_process, Fprocess_status, Fset_process_buffer)
38907         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
38908         (Fcontinue_process): Handle pipe process specially.
38909         (create_process): Respect p->stderrproc.
38910         (Fmake_pipe_process): New function.
38911         (Fmake_process): Add new keyword argument :stderr.
38912         (wait_reading_process_output): Specially handle a pipe process when
38913         it gets an EOF.
38914         (syms_of_process): Register Qpipe and Smake_pipe_process.
38915         * doc/lispref/processes.texi (Asynchronous Processes): Document
38916         `make-pipe-process' and `:stderr' keyword of `make-process'.
38917         * lisp/subr.el (start-process): Suggest to use `make-process' handle
38918         standard error separately.
38919         * test/automated/process-tests.el (process-test-stderr-buffer)
38920         (process-test-stderr-filter): New tests.
38921         * etc/NEWS: Mention new process type `pipe' and its usage with the
38922         `:stderr' keyword of `make-process'.
38924 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
38926         Minor quoting etc. fixes to lispref manual
38927         * doc/lispref/tips.texi (Documentation Tips):
38928         Distinguish more clearly among grave accent, apostrophe,
38929         and single quote.
38930         * doc/lispref/README, doc/lispref/buffers.texi:
38931         * doc/lispref/commands.texi, doc/lispref/control.texi:
38932         * doc/lispref/customize.texi, doc/lispref/display.texi:
38933         * doc/lispref/elisp.texi, doc/lispref/files.texi:
38934         * doc/lispref/frames.texi, doc/lispref/hash.texi:
38935         * doc/lispref/help.texi, doc/lispref/internals.texi:
38936         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
38937         * doc/lispref/markers.texi, doc/lispref/modes.texi:
38938         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
38939         * doc/lispref/os.texi, doc/lispref/positions.texi:
38940         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
38941         * doc/lispref/text.texi, doc/lispref/tips.texi:
38942         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
38943         Use American-style double quoting in ordinary text,
38944         and quote 'like this' when single-quoting in ASCII text.
38945         Also, fix some minor spacing issues.
38947 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
38949         Handle symlinked test directory in tramp-tests.el
38950         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
38951         (tramp--test-check-files): Use `file-truename' for directories.
38953 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
38955         Fix 'recenter' when visual-line-mode is turned on
38956         * src/window.c (Frecenter): Use the same code for GUI and TTY
38957         frames alike; use vmotion only for "initial" frames.  This is
38958         because vmotion doesn't support visual-line-mode.  Rewrite the
38959         'iarg >= 0' case to use move_it_* functions instead of using
38960         vmotion, for the same reason.  Fix the clipping of the argument
38961         value to support scroll-margin in all cases and avoid unwarranted
38962         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
38963         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
38964         which see.
38966 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
38968         * lisp/abbrev.el (define-abbrev-table): Refine last change.
38970         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
38971         use of c[ad]+r", so as to keep the "cl-" prefix on all
38972         cl-lib definitions.
38974         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
38975         Use inhibit-point-motion-hooks.
38977         * lisp/cedet/semantic: Remove some dead code.
38978         * lisp/cedet/semantic/util-modes.el
38979         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
38980         any more.
38981         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
38982         not supported any more.
38983         (semantic-safe): Use `declare'.
38984         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
38985         (semantic-tag-intangible-p): Remove unused functions.
38986         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
38987         Remove unused function.
38989         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
38990         (gnus-article-hide-text, gnus-article-unhide-text)
38991         (gnus-article-unhide-text-type): Remove special handling of
38992         `intangible' since that property is not used any more.
38993         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
38995 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
38997         Use the VC root in `log-edit-listfun'
38998         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
38999         `log-edit-listfun'.
39001 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
39003         Fix description of Unix time, mention new function.
39004         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
39005         Unix time.
39006         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
39007         (Basic Operations on Units): Mention `calc-convert-exact-units'.
39009 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
39011         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
39013 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
39015         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
39016         Don't add newline after the last entry.
39018 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
39020         css-mode.el: Add "not" pseudo-class
39021         (Bug#20267)
39022         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
39023         list of CSS pseudo-classes.
39025 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
39027         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
39029 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
39031         Stop messing with the EMACS env var
39032         * doc/emacs/misc.texi (Interactive Shell): Remove description of
39033         EMACS env var.
39035 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
39037         Adapt 'make change-history' to coding cookie
39038         * Makefile.in (change-history): Adjust to change of format of
39039         ChangeLog file, which now has a coding cookie before an indented
39040         copyright notice.
39042 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
39044         Adapt 'make change-history' to coding cookie
39045         * Makefile.in (change-history): Adjust to change of format of
39046         ChangeLog file, which now has a coding cookie before an indented
39047         copyright notice.
39049         gitlog-to-changelog coding cookie and mv -i
39050         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
39051         for copyright notice prototype, so that we get a proper "coding:"
39052         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
39053         existing ChangeLog.  Problems reported by Eli Zaretskii in:
39054         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
39056         Merge from gnulib
39057         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
39058         2015-04-09 gitlog-to-changelog: port to MS-Windows
39060 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
39062         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
39063         (Bug#20212)
39065 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
39067         Stop messing with the EMACS env var
39068         (Bug#20202)
39069         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
39070         * lisp/comint.el (comint-exec-1):
39071         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
39072         * lisp/progmodes/compile.el (compilation-start): Same and bring
39073         INSIDE_EMACS's format in line with other users.
39075         css-mode.el (css-smie-rules): Fix indentation after complex selectors
39076         (Bug#20282)
39077         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
39078         inner structure of selectors.
39080 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
39082         python.el: Indent docstring lines to base-indent
39083         (Bug#19595)
39084         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
39085         an initial patch.
39086         * lisp/progmodes/python.el
39087         (python-indent-context): Add :inside-docstring context.
39088         (python-indent--calculate-indentation): Handle :inside-docstring.
39089         (python-indent-region): Re-indent docstrings.
39090         * test/automated/python-tests.el (python-indent-region-5)
39091         (python-indent-inside-string-2): Fix tests.
39093         python.el: Increase native completion robustness
39094         (Bug#19755)
39095         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
39096         this and providing useful ideas.
39097         * lisp/progmodes/python.el
39098         (python-shell-completion-native-output-timeout): Increase value.
39099         (python-shell-completion-native-try-output-timeout): New var.
39100         (python-shell-completion-native-try): Use it.
39101         (python-shell-completion-native-setup): New readline setup avoids
39102         polluting current context, ensures output when no-completions are
39103         available and includes output end marker.
39104         (python-shell-completion-native-get-completions): Trigger with one
39105         tab only.  Call accept-process-output until output end is found or
39106         python-shell-completion-native-output-timeout is exceeded.
39108 2015-04-08  Samer Masterson  <samer@samertm.com>
39110         * lisp/eshell: Make backslash a no-op in front of normal chars
39111         (Bug#8531)
39112         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
39113         (eshell-parse-backslash): Return escaped character after backslash
39114         if it is special.  Otherwise, if the backslash is not in a quoted
39115         string, ignore the backslash and return the character after; if
39116         the backslash is in a quoted string, return the backslash and the
39117         character after.
39118         * test/automated/eshell.el (eshell-test/escape-nonspecial)
39119         (eshell-test/escape-nonspecial-unicode)
39120         (eshell-test/escape-nonspecial-quoted)
39121         (eshell-test/escape-special-quoted): Add tests for new
39122         `eshell-parse-backslash' behavior.
39124 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
39126         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
39127         after the file name.
39128         (Bug#20276)
39130 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
39132         Minor quoting etc. fixes to Emacs manual
39133         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
39134         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
39135         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
39136         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
39137         * doc/emacs/indent.texi, doc/emacs/macos.texi:
39138         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
39139         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
39140         * doc/emacs/search.texi, doc/emacs/trouble.texi:
39141         * doc/emacs/vc1-xtra.texi:
39142         Use American-style double quoting in ordinary text,
39143         and quote 'like this' when single-quoting in ASCII text.
39144         Also, fix some minor spacing issues.
39146         Minor quoting etc. fixes to elisp intro
39147         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
39148         American-style double quoting in ordinary text.  In ASCII text,
39149         consistently quote 'like this' instead of `like this', unless
39150         Emacs requires the latter.
39152 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
39154         * CONTRIBUTE: Mention log-edit-insert-changelog.
39156         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
39158 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
39160         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
39162 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
39164         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
39165         Fix inheritance of initargs.  (Bug#20270)
39167 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
39169         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
39170         while dowloading information.
39172         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
39173         (package--ensure-init-file): Check file contents before visiting.
39174         (package-initialize): Call it.
39175         (package-install-from-buffer, package-install): Don't call it.
39177 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
39179         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
39180         (Bug#17517)
39182 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
39184         * lisp/net/tramp-cache.el (tramp-flush-file-property):
39185         Fix nasty scoping bug.
39187 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
39189         Add notice to visual commands section
39190         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
39191         such as git call less with its -F option which omits pagination if
39192         the contents is less than one page long.  This interferes with
39193         eshell's visual (sub-)commands.
39195 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
39197         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
39198         environment variable expansion in file names.  (Bug#19839)
39200 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
39202         Prefer double-quote to accent-grave in man pages
39204 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
39206         (Bug#20257)
39207         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
39209 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
39211         Update etc/PROBLEMS.
39212         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
39213         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
39214         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
39215         respectively); other minor updates and tweaks.  (Bug#20011)
39217 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
39219         Add doc strings for some Isearch state vars
39220         * lisp/misearch.el (multi-isearch-buffer-list)
39221         (multi-isearch-file-list): Add doc strings.
39222         (Bug#20232)
39224 2015-04-07  Alan Mackenzie  <acm@muc.de>
39226         Always mark "<" and ">" in #include directives with text properties.
39227         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
39228         "anchored matcher" with an invocation of
39229         c-make-font-lock-search-function to allow fontification when there's
39230         no trailing space on an "#include <..>" line.
39232 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
39234         Generate a ChangeLog file from commit logs
39235         * .gitignore: Add 'ChangeLog'.
39236         * build-aux/gitlog-to-changelog: New file, from Gnulib.
39237         * build-aux/gitlog-to-emacslog: New file.
39238         * CONTRIBUTE: Document the revised workflow.
39239         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
39240         instead of just special cases.
39241         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
39242         (ChangeLog, unchanged-history-files, change-history)
39243         (change-history-commit): New rules.
39244         * admin/admin.el (make-manuals-dist--1):
39245         Don't worry about doc/ChangeLog.
39246         * admin/authors.el: Add a FIXME.
39247         * admin/make-tarball.txt:
39248         * lisp/calendar/icalendar.el:
39249         * lisp/gnus/deuglify.el:
39250         * lisp/obsolete/gulp.el:
39251         * lwlib/README:
39252         Adjust to renamed ChangeLog history files.
39253         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
39254         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
39255         Remove obsolete discussion of merging ChangeLog files.
39256         New section "Maintaining ChangeLog history".
39257         * build-aux/git-hooks/pre-commit:
39258         Reject attempts to commit files named 'ChangeLog'.
39259         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
39260         * make-dist: Make and distribute top-level ChangeLog if there's a
39261         .git directory.  Distribute the new ChangeLog history files
39262         instead of scattered ChangeLog files.  Distribute the new files
39263         gitlog-to-changelog and gitlog-to-emacslog.
39264         (Bug#19113)
39266         Rename ChangeLogs for gitlog-to-changelog
39267         This patch was implemented via the following shell commands:
39268         find * -name ChangeLog |
39269         sed 's,.*,git mv & &.1,
39270         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
39271         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
39272         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
39273         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
39274         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
39275         sh
39276         git commit -am"[this commit message]"
39278 This file records repository revisions from
39279 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
39280 2016-12-07abf87b6b3ead1367cbae5cc6b0743349f611 (inclusive).
39281 2016-12-07db8824bb97d07e3897e800eee946757a3 (inclusive).
39282 2016-09-26c9cef49b0fceb3c5e904837ea5675fe4306ac (inclusive).
39283 2016-08-22bb813cfea53e4162409f2adc0a793ab301894 (inclusive).
39284 2016-08-05faead6df626b3737c10f98e9c4964232aa6b9 (inclusive).
39285 2016-06-19d77d8dbd5b051bb681bacaee4a6faffbbdde9 (inclusive).
39286 2016-03-04a00c6cfb5f3cafbad92bd4584a0f50343a568 (inclusive).
39287 2016-02-15decb15e0496cec0c48d980c88a5a9d7cc00da (inclusive).
39288 2016-02-04b6d89ff9288a49099f041752908b5eb9613e (inclusive).
39289 commit ba1422e12f80ae1eb2aa9d0ce80c14e3ee4b3950 (inclusive).
39290 See ChangeLog.1 for earlier changes.
39292 ;; Local Variables:
39293 ;; coding: utf-8
39294 ;; End:
39296   Copyright (C) 2015-2016 Free Software Foundation, Inc.
39298   This file is part of GNU Emacs.
39300   GNU Emacs is free software: you can redistribute it and/or modify
39301   it under the terms of the GNU General Public License as published by
39302   the Free Software Foundation, either version 3 of the License, or
39303   (at your option) any later version.
39305   GNU Emacs is distributed in the hope that it will be useful,
39306   but WITHOUT ANY WARRANTY; without even the implied warranty of
39307   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
39308   GNU General Public License for more details.
39310   You should have received a copy of the GNU General Public License
39311   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.