Make seq-into return the sequence when no conversion needed
[emacs.git] / ChangeLog.2
blob0b73dc2f84144408e3d32f6186689872e4b48aa1
1 2016-11-28  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-11-28  Nicolas Petton  <nicolas@petton.fr>
41         * admin/authors.el (authors-renamed-files-alist): Addition.
43 2016-11-28  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-11-28  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-11-28  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-11-27  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-11-26  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-11-25  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-11-25  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-11-25  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-11-24  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-11-24  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-11-23  Glenn Morris  <rgm@gnu.org>
132         * admin/authors.el (authors-aliases): Add an entry.
134 2016-11-22  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-11-21  Nicolas Petton  <nicolas@petton.fr>
149         * etc/AUTHORS: Regenerate the AUTHORS file
151 2016-11-21  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-11-21  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-11-20  Eli Zaretskii  <eliz@gnu.org>
169         Avoid errors in shr-pixel-column due to dedicated windows
171         * lisp/net/shr.el (shr-pixel-column): If we are switching to
172         another buffer in the selected window, make that window
173         temporarily non-dedicated.  (Bug#24950)
175 2016-11-20  Tino Calancha  <tino.calancha@gmail.com>
177         Update format-time-string documentation
179         * doc/lispref/os.texi (Time Parsing):
180         Document %F, %g, %G, %u and %V.
182 2016-11-19  Eli Zaretskii  <eliz@gnu.org>
184         * admin/release-process: Update versions and blocking bug numbers.
186 2016-11-18  Eli Zaretskii  <eliz@gnu.org>
188         Improve documentation of functions that accept time values
190         * doc/lispref/os.texi (Time Calculations): Mention the meaning of
191         'nil' or a scalar number as the time-value argument.  Add a
192         cross-reference to 'float-time' for computing a time difference as
193         a scalar number of seconds.
195         * src/editfns.c (Fformat_time_string, Ftime_less_p)
196         (Ftime_subtract, Ftime_add, Fdecode_time, Fcurrent_time_string)
197         (Fcurrent_time_zone): Mention in the doc strings the meaning of
198         nil argument and the fact that a time value can be a scalar number
199         of seconds since the epoch.
200         (Ftime_subtract): Mention 'float-time'.
202 2016-11-18  Daniel Colascione  <dancol@dancol.org>
204         Speed up initialization by preferring /dev/urandom to GnuTLS
206         * src/sysdep.c (init_random): Try /dev/urandom before GnuTLS.
208         (cherry picked from commit a37eba849eddc41375ad73974f6fcb1258aa8eba)
210 2016-11-18  Glenn Morris  <rgm@gnu.org>
212         Add a comment in generated refcards about the source
214         * etc/refcards/calccard.tex, etc/refcards/cs-dired-ref.tex:
215         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
216         * etc/refcards/de-refcard.tex, etc/refcards/dired-ref.tex:
217         * etc/refcards/fr-dired-ref.tex, etc/refcards/fr-refcard.tex:
218         * etc/refcards/fr-survival.tex, etc/refcards/gnus-refcard.tex:
219         * etc/refcards/orgcard.tex, etc/refcards/pl-refcard.tex:
220         * etc/refcards/pt-br-refcard.tex, etc/refcards/refcard.tex:
221         * etc/refcards/ru-refcard.tex, etc/refcards/sk-dired-ref.tex:
222         * etc/refcards/sk-refcard.tex, etc/refcards/sk-survival.tex:
223         * etc/refcards/survival.tex, etc/refcards/vipcard.tex:
224         * etc/refcards/viperCard.tex: Add comment about the source.
226 2016-11-17  Dmitry Gutov  <dgutov@yandex.ru>
228         js-mode: Fix indent problem after a regexp
230         * lisp/progmodes/js.el (js--looking-at-operator-p): Check that the
231         slash is not ending a regexp (bug#24854).
233 2016-11-16  Eli Zaretskii  <eliz@gnu.org>
235         Fix sluggish display of symbols in UTF-8 language environment
237         * lisp/international/fontset.el (setup-default-fontset): Make sure
238         Symbola and FreeMono are set up in the default fontset as belonging
239         to the "iso10646-1" registry.  In the UTF-8 locale, this avoids a
240         long and futile search for a suitable font, whose side effect is a
241         lot of consing, which then hits the font-cache compacting issue,
242         and causes very sluggish redisplay of characters displayed by
243         these fonts.  All this happens because the default for the
244         registry is "iso8859-1".  (Bug#24953)
246 2016-11-16  Glenn Morris  <rgm@gnu.org>
248         Don't confuse how Texinfo outputs @var with the input
250         * doc/emacs/rmail.texi (Movemail):
251         * doc/lispref/control.texi (Pattern matching case statement):
252         * doc/lispref/frames.texi (Size and Position):
253         * doc/lispref/processes.texi (Asynchronous Processes):
254         * doc/lispref/text.texi (Document Object Model):
255         * doc/lispref/windows.texi (Coordinates and Windows):
256         Do not upper-case the argument of @var.
258 2016-11-16  Glenn Morris  <rgm@gnu.org>
260         * doc/lispref/display.texi (Scroll Bars):
261         * doc/lispref/frames.texi (Size and Position):
262         * doc/lispref/windows.texi (Window Sizes): Fix arglist typos.
264         * doc/emacs/cmdargs.texi (Initial Options): Copyedit for --daemon.
266 2016-11-15  Eli Zaretskii  <eliz@gnu.org>
268         More fixes in copyright notices in etc/refcards/
270         * etc/refcards/calccard.tex:
271         * etc/refcards/cs-dired-ref.tex:
272         * etc/refcards/cs-refcard.tex:
273         * etc/refcards/cs-survival.tex:
274         * etc/refcards/de-refcard.tex:
275         * etc/refcards/dired-ref.tex:
276         * etc/refcards/fr-dired-ref.tex:
277         * etc/refcards/fr-refcard.tex:
278         * etc/refcards/fr-survival.tex:
279         * etc/refcards/orgcard.tex:
280         * etc/refcards/pl-refcard.tex:
281         * etc/refcards/pt-br-refcard.tex:
282         * etc/refcards/refcard.tex:
283         * etc/refcards/ru-refcard.tex:
284         * etc/refcards/sk-dired-ref.tex:
285         * etc/refcards/sk-refcard.tex:
286         * etc/refcards/sk-survival.tex:
287         * etc/refcards/survival.tex:
288         * etc/refcards/vipcard.tex:
289         * etc/refcards/viperCard.tex: Change "GNU Emacs" to "this
290         document" in copyright notices.  (Bug#24520)
292 2016-11-13  Eli Zaretskii  <eliz@gnu.org>
294         Update copyright text in refcards
296         * etc/refcards/viperCard.tex:
297         * etc/refcards/vipcard.tex:
298         * etc/refcards/survival.tex:
299         * etc/refcards/sk-survival.tex:
300         * etc/refcards/sk-dired-ref.tex:
301         * etc/refcards/sk-refcard.tex:
302         * etc/refcards/ru-refcard.tex:
303         * etc/refcards/refcard.tex:
304         * etc/refcards/pt-br-refcard.tex:
305         * etc/refcards/pl-refcard.tex:
306         * etc/refcards/orgcard.tex:
307         * etc/refcards/gnus-refcard.tex:
308         * etc/refcards/fr-survival.tex:
309         * etc/refcards/fr-refcard.tex:
310         * etc/refcards/fr-dired-ref.tex:
311         * etc/refcards/dired-ref.tex:
312         * etc/refcards/de-refcard.tex:
313         * etc/refcards/cs-survival.tex:
314         * etc/refcards/cs-refcard.tex:
315         * etc/refcards/cs-dired-ref.tex:
316         * etc/refcards/calccard.tex: Update the copyright blurb.  (Bug#24520)
318 2016-11-12  Eli Zaretskii  <eliz@gnu.org>
320         Fix Outline command names
322         * doc/emacs/text.texi (Foldout): Use the outline-* names instead
323         of the obsolete aliases.  (Bug#24890)
325 2016-11-10  Philipp Stephani  <phst@google.com>
327         Send text received by bracketed paste to process
329         See Bug#24639.
331         * lisp/term.el (term--xterm-paste): New function.
332         (term-raw-map): Use it.
333         (xterm--pasted-text): Declare function from xterm.el.
335 2016-11-10  Alan Mackenzie  <acm@muc.de>
337         Correct the statement about programming modes always running prog-mode-hook.
339         * doc/emacs/modes.texi (Major Modes): Amend the statement about programming
340         modes running prog-mode-hook to say that it applies to many (not all) such
341         modes, and specifying exactly which modes.
343 2016-11-10  Eli Zaretskii  <eliz@gnu.org>
345         Improve documentation of 'occur'
347         * doc/emacs/search.texi (Other Repeating Search): Clarify how to
348         use Occur with search strings from last Isearch.  (Bug#24890)
350 2016-11-09  Noam Postavsky  <npostavs@gmail.com>
352         Do call debugger on failed cl-assert
354         "Don't call debug on failed cl-assert..." removed the call to `debug' in
355         cl--assertion-failed because `debug' calls `kill-emacs' in batch mode,
356         thus messing up ert test runs.  However, calling the debugger is useful
357         because it allows catching failed assertions even inside
358         `condition-case' calls.  The problem with ert can be avoided by calling
359         `debugger' instead of `debug' directly, since ert installs its own
360         debugger while running tests.
362         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): Call
363         `debugger' if `debug-on-error' is non-nil.
365 2016-11-09  Daniel Colascione  <dancol@dancol.org>
367         Avoid infloop in python
369         Fix bug#24905
371         * lisp/progmodes/python.el (python-info-docstring-p): Improve
372         infloop avoidance: replace (bobp) with generic test for
373         forward progress.
374         * test/automated/python-tests.el (python-bob-infloop-avoid): Add
375         test for bug#24905
377 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
379         Don't refer to obsolete FEATURE-unload-hook
381         * doc/lispref/tips.texi (Coding Conventions): Refer to
382         FEATURE-unload-function rather than its obsolete variant
383         FEATURE-unload-hook.  (Bug#24890)
385 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
387         Improve documentation of dabbrevs
389         * lisp/dabbrev.el (dabbrev-expand): Doc fix.  (Bug#24890)
391         * doc/emacs/abbrevs.texi (Dynamic Abbrevs): Mention
392         'dabbrev-check-all-buffers', 'dabbrev-check-other-buffers', and
393         'dabbrev-ignored-buffer-names' and their purpose.  (Bug#24890)
395 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
397         * lisp/chistory.el (list-command-history): Doc fix.  (Bug#24890)
399         * lisp/simple.el (set-mark-command): Doc fix.  (Bug#24890)
401 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
403         Improve documentation of some Help commands
405         * doc/emacs/help.texi (Help Mode): Fix mistake in key sequences.
406         Mention the 'l' and 'r' keys.
407         (Misc Help): Mention that 'C-h m' describes key bindings.
408         (Bug#24890)
410 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
412         Fix documentation of yes-or-no prompts
414         * doc/emacs/mini.texi (Yes or No Prompts): Fix mistakes in key
415         sequences.  (Bug#24890)
417 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
419         Fix documentation of partial completion style
421         * doc/emacs/mini.texi (Completion Styles): Fix the description of
422         the wildcard '*'.  (Bug#24890)
424 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
426         Fix documentation of the mode line on emacsclient frames
428         * doc/emacs/screen.texi (Mode Line): Document the '@' indicator on
429         emacsclient frames.
431 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
433         Fix description of 'C-z' in User manual
435         * doc/emacs/entering.texi (Exiting): 'C-z' is bound to
436         'suspend-frame'.  (Bug#24890)
438 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
440         Improve and clarify documentation of Outline Mode
442         * doc/emacs/text.texi (Outline Visibility): Use the outline-*
443         names instead of the obsolete aliases.  (Bug#24890)
445         * lisp/outline.el (outline-hide-sublevels, outline-hide-other)
446         (outline-hide-body): Doc fixes.  (Bug#24890)
448 2016-11-06  Eli Zaretskii  <eliz@gnu.org>
450         Add Emacs version number to nt/README.W32
452         * nt/README.W32: Include the version number of the latest Emacs
453         release.
455         * admin/admin.el (set-version): Update the version in nt/README.W32.
457 2016-11-06  Noam Postavsky  <npostavs@gmail.com>
459         Fix python-mode hideshow regexp
461         2015-02-07 "Fix hideshow integration[...]" changed the regexp added to
462         `hs-special-modes-alist' so that it worked when not searching from the
463         beginning of the line.  However, this allows matching tokens ending in
464         "def" or "class", not just those keywords.  This results in an infinite
465         loop in hs-hide-all (Bug #24815).
467         * lisp/progmodes/python.el (python-mode): Add symbol boundaries around
468         the def|class matching part of the regexp added to
469         hs-special-modes-alist.
471 2016-11-06  Paul Eggert  <eggert@cs.ucla.edu>
473         Modernize usage of 'macOS' in doc and comments
475         Apple changed the spelling of its operating system again, to "macOS",
476         effective with macOS 10.12 Sierra (2016-09-20).  Change Emacs
477         documentation and comments to match this.  Stick with older OS
478         spellings ("OS X", "Mac OS X") when talking about older releases where
479         the older names are more correct.
481 2016-11-06  Paul Eggert  <eggert@cs.ucla.edu>
483         Prefer comments /* like this */ in C code
485         Emacs C code assumes C99 features, but has long used traditional
486         comments /* like this */ instead of C99-style comments // like this.
487         Stick with traditional comments for now, partly for style, partly as
488         it may be safer with compilers that are not fully in C99 mode.
490 2016-11-05  Noam Postavsky  <npostavs@gmail.com>
492         * doc/lispref/loading.texi (Autoload): Better link (Bug#24845).
494 2016-11-05  Eli Zaretskii  <eliz@gnu.org>
496         Clarify documentation of face attribute functions
498         * doc/lispref/display.texi (Attribute Functions): Make sure to
499         document that an omitted FRAME argument means the same as nil.
500         (Bug#24879)
502 2016-11-05  Noam Postavsky  <npostavs@gmail.com>
504         Don't call debug on failed cl-assert
506         Doing this causes problems when running ert tests, for
507         instance (Bug#24778).  The call to `debug` when `debug-on-error' is
508         non-nil was introduced in 2015-02-14 "* lisp/emacs-lisp/cl*.el: Use
509         define-inline and move some code...".
511         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): Don't call
512         `debug' directly.
514 2016-11-04  Phillip Lord  <phillip.lord@russet.org.uk>
516         Update README for precompiled windows Emacs.
518          * nt/README.W32: Describe 64 and 32-bit downloads, optional
519            dependencies bundle. Remove old material on sourcing dependencies.
520            Remove references to Windows 95. Update GUI references to recent
521            Windows. Remove references to Usenet.
523 2016-11-04  Hong Xu  <hong@topbug.net>
525         Clarify documentation of 'vc-responsible-backend' wrt symlinks
527         * lisp/vc/vc.el (vc-responsible-backend): Clarify that symlinks
528         are not resolved when the VC backend is reported.
530         * doc/lispref/files.texi (Truenames): Document
531         'vc-responsible-backend'.  (Bug#23436)
532         * doc/emacs/maintaining.texi (Version Control Systems): Fix a
533         typo.
535 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
537         Clarify doc string of 'transpose-sexps'
539         * lisp/simple.el (transpose-sexps): Clarify the conditions for
540         transposing sexps that are lists or strings.  Mention the effect
541         of the prefix argument.  (Bug#24860)
543 2016-11-04  Tibor Csögör  <tibi@tiborius.net>  (tiny change)
545         Fix docstring of 'browse-url-firefox-new-window-is-tab'
547         * lisp/net/browse-url.el (browse-url-firefox-new-window-is-tab):
548         Remove obsolete note from docstring (obsoleted by previous commits).
549         (Bug#24843)
551 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
553         Improve documentation of 'font-lock-remove-keywords'
555         * doc/lispref/modes.texi (Customizing Keywords): Clarify the
556         'keywords' argument of 'font-lock-remove-keywords'.  Suggested by
557         Hong Xu <hong@topbug.net>.  (Bug#24830)
559 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
561         Fix documentation of the command summary key
563         * doc/misc/info.texi (Help-^L, Help-Xref, Top): Emacs Info uses
564         '?' for the summary of commands, whereas the stand-alone reader
565         uses 'H'.  (Bug#24825)
567 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
569         Mark relocation workarounds with REL_ALLOC
571         * src/search.c (boyer_moore): Mark workarounds for ralloc.c
572         relocation of buffer text with "#ifdef REL_ALLOC".
574 2016-11-02  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
576         Fix documentation for 'eudc-options-file'
578         * doc/misc/eudc.texi (The Server Hotlist): Update the default
579         value of 'eudc-options-file'.
581         Backport:
583         (cherry picked from commit 0575fd95d0b92a9a0ebff8df183a449190f74dbc)
585 2016-11-02  Tibor Csögör  <tibi@tiborius.net>
587         Fix documentation of 'eudc-inline-expansion-format'
589         * doc/misc/eudc.texi (Inline Query Expansion): Fix the default value of
590         'eudc-inline-expansion-format'. (Bug#24840)
592         Backport:
594         (cherry picked from commit 1fef1387c387d80f8ece326621539b89a6965702)
596 2016-10-31  Clément Pit--Claudel  <clement.pitclaudel@live.com>
598         python.el: Fix detection of native completion in Python 3 (bug #24401)
600         With Python 3.5, (python-shell-completion-native-get-completions ... "")
601         would return an empty list, causing python.el to think that native
602         completion was unavailable (the difference between Python 2 and Python 3
603         is due to https://bugs.python.org/issue25660).
605         * lisp/progmodes/python.el (python-shell-completion-native-try): Use "_"
606           to check whether native completion is available instead of "".
608 2016-10-26  Glenn Morris  <rgm@gnu.org>
610         * Makefile.in (install-arch-indep): Skip etc/refcards/emacsver.tex.in.
612 2016-10-26  Stefan Monnier  <monnier@iro.umontreal.ca>
614         * lisp/subr.el (set-transient-map): Exit for unbound events (bug#24755).
616 2016-10-26  Eli Zaretskii  <eliz@gnu.org>
618         Update category-table for Chinese characters
620         * lisp/international/characters.el (standard-category-table):
621         Update the ranges of Han and Chinese characters.  (Bug#24798)
623 2016-10-26  Noam Postavsky  <npostavs@gmail.com>
625         Inhibit buffer relocation during regex searches
627         * src/search.c (looking_at_1, fast_looking_at, search_buffer): Prevent
628         relocation of buffer contents during calls to re_search_2.  This ensures
629         the pointers into buffer text won't be invalidated by
630         r_alloc_sbrk (called from malloc with configurations where
631         REL_ALLOC=yes).
633 2016-10-26  Noam Postavsky  <npostavs@gmail.com>
635         Revert fixes to allocation of regex matching
637         The fix was not complete, and completing it was proving too complicated.
639         - Revert "* src/regex.c (re_search_2): Make new code safe for
640                   -Wjump-misses-init."
641           This reverts commit c2a17924a57483d14692c8913edbe8ad24b5ffbb.
642         - Revert "Port to GCC 6.2.1 + --enable-gcc-warnings"
643           This reverts commit f6134bbda259c115c06d4a9a3ab5c39340a15949.
644         - Revert "Fix handling of allocation in regex matching"
645           This reverts commit ad66b3fadb7ae22a4cbb82bb1507c39ceadf3897.
646         - Revert "Fix handling of buffer relocation in regex.c functions"
647           This reverts commit ee04aedc723b035eedaf975422d4eb242894121b.
649 2016-10-25  Eli Zaretskii  <eliz@gnu.org>
651         Comment for bug#24793
653         * lisp/info.el (Info-mode-font-lock-keywords): Add a comment
654         explaining why `..' quoting is not fontified using the
655         'Info-quoted' face.  (Bug#24793)
657 2016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
659         Default REL_ALLOC to 'no'
661         This should make ralloc-related bugs less likely on GNU/Linux
662         systems with bleeding-edge glibc.  See the email thread containing:
663         http://lists.gnu.org/archive/html/emacs-devel/2016-10/msg00801.html
664         Do not merge to master.
665         * configure.ac (REL_ALLOC): Default to 'no' on all platforms, not
666         merely on platforms with Doug Lea malloc.  Although bleeding-edge
667         glibc no longer exports __malloc_initialize_hook and so longer
668         passes the configure-time test for Doug Lea malloc, ralloc tickles
669         longstanding bugs like Bug#24358 and Bug#24764 and Emacs is likely
670         to be more reliable without it.  This patch is not needed on
671         master, which uses hybrid malloc in this situation.
673 2016-10-24  Eli Zaretskii  <eliz@gnu.org>
675         Yet another fix for using pointers into buffer text
677         * src/search.c (boyer_moore): Update pointers to buffer text
678         after call to set_search_regs.  (Bug#24358)
680 2016-10-24  Eli Zaretskii  <eliz@gnu.org>
682         Another fix for using pointer to buffer text
684         * src/search.c (Freplace_match): Move the call to BYTE_POS_ADDR
685         after the call to xpalloc, to avoid the danger of buffer text
686         relocation after its address was taken.  (Bug#24358)
688 2016-10-24  Michael Albinus  <michael.albinus@gmx.de>
690         Fix Bug#24478
692         * lisp/net/tramp-sh.el (tramp-histfile-override): Change default value
693         to "~/.tramp_history".
694         (tramp-open-shell): Check proper HISTFILE setting.
695         (tramp-maybe-open-connection): Cleanup also for errors.  (Bug#24478)
697 2016-10-24  Paul Eggert  <eggert@cs.ucla.edu>
699         Port --enable-gcc-warnings to bleeding-edge glibc
701         Bleeding-edge glibc sets emacs_cv_var_doug_lea_malloc to 'no'.
702         Do not merge to master.
703         * configure.ac: Check for valloc decl when compiling gmalloc.c.
704         * src/gmalloc.c (emacs_abort) [emacs]: Adjust decl to match
705         what is in lisp.h.  Remove duplicate decl.
706         (aligned_alloc): #undef before defining.
707         (aligned_alloc, memalign) [!MSDOS]: Declare.
708         (valloc) [HAVE_DECL_VALLOC]: Remove duplicate decl.
710 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
712         Fix handling of buffer relocation in regex.c functions
714         * src/search.c (search_buffer): Updated the base pointer to buffer
715         text after the call to re_search_2.  (Bug#24358)
717 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
719         Avoid relocating buffers while libxml2 reads its text
721         * src/xml.c (parse_region) [REL_ALLOC]: Freeze the ralloc arena
722         while libxml2 reads the current buffer's text.  (Bug#24764)
724 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
726         Attempt to catch reads from a buffer that is relocated
728         * src/xml.c (parse_region): Add assertion to ensure buffer text is
729         not relocated while libxml2 is reading it.  (Bug#24764)
731 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
733         Revert "* lisp/simple.el (process-menu-mode, list-processes--refresh):"
735         This reverts commit a4285bcb1114e29200001f33af9b4802167d6140.
736         Do not merge to master!
738 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
740         Revert "* lisp/ibuf-ext.el (ibuffer-do-shell-command-file):"
742         This reverts commit b0c447e4668116cecfda91d0203cb7cac2486d92.
743         Do not merge to master!
745 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
747         Revert "* lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)"
749         This reverts commit cf3c19b0298236293d9c56d5ba425af4f42c1f8e.
750         Do not merge to master!
752 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
754         ;* src/w32heap.c: Fix typo and wording of the comments.
756 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
758         electric-quote mode no longer worries about coding
760         * doc/emacs/text.texi (Quotation Marks), etc/NEWS: Document this.
761         * lisp/electric.el (electric--insertable-p): Remove.
762         All uses removed (Bug#24759).
764 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
766         * src/regex.c (re_search_2): Make new code safe for -Wjump-misses-init.
768 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
770         Port to GCC 6.2.1 + --enable-gcc-warnings
772         * src/regex.c (ENSURE_FAIL_STACK, re_search_2):
773         Redo recent regex changes to avoid complaints from GCC 6.2.1 when
774         Emacs is configured with --enable-gcc-warnings.  Also, work around
775         GCC bug 78081, which was uncovered by this new code.
777 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
779         Explain how to debug emacsclient lisp errors
781         * doc/lispref/debugging.texi (Error Debugging): Mention that
782         debug-on-signal is useful for getting backtraces from
783         emacsclient (Bug#24616).
785 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
787         Let describe-function work for lambda again
789         Since commit "* lisp/help-fns.el (describe-function): More type
790         checking[...]", `describe-function' throws a user-error when given a
791         non-symbol.  This prevents the [back] button in a *Help* buffer from
792         working when the page it goes back to describes an anonymous
793         function (e.g., the result of `describe-key' on a key which is bound to
794         a lambda form).
796         * lisp/help-fns.el (describe-function): Move the checks on FUNCTION
797         being an fbound symbol into the `interactive' form.  This allows
798         non-interactive calls to pass an anonymous function (Bug #24221).  Note
799         that passing a non-bound symbol non-interactively will still trigger a
800         `void-function' error from `describe-function-1'.
802 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
804         Fix kill-line's docstring
806         * lisp/simple.el (kill-line): The effect of show-trailing-whitespace is
807         important lines with *no* nonblanks (Bug #16654).
809 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
811         Fix handling of allocation in regex matching
813         `re_match_2_internal' uses pointers to the lisp objects that it
814         searches.  Since it may call malloc when growing the "fail stack", these
815         pointers may be invalidated while searching, resulting in memory
816         curruption (Bug #24358).
818         To fix this, we check the pointer that the lisp object (as specified by
819         re_match_object) points to before and after growing the stack, and
820         update existing pointers accordingly.
822         * src/regex.c (STR_BASE_PTR): New macro.
823         (ENSURE_FAIL_STACK, re_search_2): Use it to convert pointers into
824         offsets before possible malloc call, and back into pointers again
825         afterwards.
826         (POS_AS_IN_BUFFER): Add explanatory comment about punning trick.
827         * src/search.c (search_buffer): Instead of storing search location as
828         pointers, store them as pointers and recompute the corresponding address
829         for each call to `re_search_2'.
830         (string_match_1, fast_string_match_internal, fast_looking_at):
831         * src/dired.c (directory_files_internal): Set `re_match_object' to Qnil
832         after calling `re_search' or `re_match_2'.
833         * src/regex.h (re_match_object): Mention new usage in commentary.
835 2016-10-21  Paul Eggert  <eggert@cs.ucla.edu>
837         * lisp/electric.el (electric-quote-mode): Improve doc (Bug#24759).
839 2016-10-20  Tino Calancha  <tino.calancha@gmail.com>
841         vc-region-history: Search just on lines intersecting the region
843         * lisp/vc/vc.el (vc-region-history): If region ends in the beginning
844         of a line, then exclude that line from the search (Bug#24725).
846 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
848         Fix documentation of 'alist-get'
850         * doc/lispref/lists.texi (Association Lists): Fix the signature of
851         'alist-get'.  Fix the markup, the wording, and the punctuation in
852         the description. (Bug#24740)
854 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
856         * src/regex.h (re_match_object): Improve commentary.
858 2016-10-19  Alan Third  <alan@idiocy.org>
860         Fix cursor at bottom left of rectangle (bug#24364)
862         * lisp/rect.el (rectangle--col-pos): Don't assume point at EOL doesn't
863         require rectangle--point-crutches to be set.
865 2016-10-19  Michael Albinus  <michael.albinus@gmx.de>
867         Change Tramp version to "2.2.13.25.2"
869         * doc/misc/trampver.texi:
870         * lisp/net/trampver.el: Change version to "2.2.13.25.2".
872 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
874         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Fix last change.
876 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
878         Don't scan compiled module files for autoloads
880         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Ignore
881         compiled module files.  Make sure the extension really ends the
882         file name.
884 2016-10-18  Michael Albinus  <michael.albinus@gmx.de>
886         Fix Bug#24698
888         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
889         Don't send "stty tab0" to *BSD and Darwin machines.  (Bug#24698)
891 2016-10-18  Eli Zaretskii  <eliz@gnu.org>
893         * lisp/subr.el (start-process): Doc fix.  (Bug#24693)
895 2016-10-18  Göktuğ Kayaalp  <self@gkayaalp.com>
897         Fix display of vc-dir CVS file statuses in subdirectories
899         * lisp/vc/vc-cvs.el (vc-cvs-dir-status-files): Use 'cvs update'
900         instead of 'cvs status'.  It's faster, easier to parse, and
901         relieves us of the need to use vc-expand-dirs.  (Bug#24082)
902         (vc-cvs-after-dir-status): Parse its output.
904 2016-10-17  Eli Zaretskii  <eliz@gnu.org>
906         Update URL of MS-Windows optional DLLs
908         * nt/README.W32:
909         * nt/INSTALL: Update the URL of the MS-Windows binaries of the
910         optional libraries built with MSYS2/MinGW64 project tools.
912 2016-10-17  Eli Zaretskii  <eliz@gnu.org>
914         Fix time-related data types in 2 editfns.c functions
916         * src/editfns.c (format_time_string, Fcurrent_time_zone): Pass a
917         pointer to time_t value to emacs_localtime_rz and gmtime_r,
918         instead of relying on struct timespec's tv_sec member to be of
919         compatible type.
921 2016-10-17  Tino Calancha  <f92capac@gmail.com>
923         * lisp/simple.el (process-menu-mode, list-processes--refresh):
924         Include PID.  (Bug#21725)
926         (cherry picked from commit b7adc2f23787eb72015cd705b873e229db6a5049)
928 2016-10-17  Tino Calancha  <f92capac@gmail.com>
930         * lisp/ibuf-ext.el (ibuffer-do-shell-command-file):
931         Fix non-file-visiting-buffer case.  (Bug#22678)
933         (cherry picked from commit 738738259ba77fe17e433c64e0758ea59ab5bc75)
935 2016-10-17  Tino Calancha  <f92capac@gmail.com>
937         * lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)
939         (cherry picked from commit f4ef1a1fea15aa58fbb5e7a59bff260720658e49)
941 2016-10-17  Paul Eggert  <eggert@cs.ucla.edu>
943         Port to Ubuntu 16.10, which needs gcc -nopie
945         * configure.ac (emacs_cv_prog_cc_no_pie): Rename from
946         emacs_cv_prog_cc_nopie.  All usages changed.  Check for -no-pie in
947         preference to -nopie (Bug#24682).  Backport from master.
949 2016-10-17  Glenn Morris  <rgm@gnu.org>
951         * lisp/cus-start.el (exec-path): Handle nil elements.  (Bug#24471)
953 2016-10-16  Andreas Politz  <politza@hochschule-trier.de>
955         Catch the imenu-unavailable error in sh-mode completion table
957         * lisp/progmodes/sh-script.el (sh--cmd-completion-table):
958         Catch the imenu-unavailable error (bug#24238).
960 2016-10-16  Eli Zaretskii  <eliz@gnu.org>
962         More char-width fixes
964         * lisp/international/characters.el (char-width-table): More fixes
965         according to the latest EastAsianWidth.txt.  (Bug#24705)
967 2016-10-15  Eli Zaretskii  <eliz@gnu.org>
969         Fix char-width-table values for some Emoji
971         * lisp/international/characters.el (char-width-table): Add missing
972         range U+1F400..U+1F43E.  (Bug#24699)
974         * admin/notes/unicode: Mention the need to verify char-width-table
975         setting against data in EastAsianWidth.txt.
977 2016-10-15  Eli Zaretskii  <eliz@gnu.org>
979         Keep point when switching from and to *terminal* buffer
981         * lisp/term.el (term-reset-size): Don't reset the size if it
982         didn't change.  If the size did change, restore point after
983         adjusting the size.  (Bug#24465)
985 2016-10-15  Michael Albinus  <michael.albinus@gmx.de>
987         * INSTALL: Use correct Emacs release number 25.
989 2016-10-14  Eli Zaretskii  <eliz@gnu.org>
991         Avoid crashes due to objects read with the #n=object form
993         * src/lread.c (read1): Use Fcons for 'placeholder', not AUTO_CONS,
994         because elements of the list in 'read_objects' cannot be allocated
995         off the stack.  (Bug#24640)
997 2016-10-13  Eli Zaretskii  <eliz@gnu.org>
999         Improve doc string of 'completion-at-point-functions'
1001         * lisp/minibuffer.el (completion-at-point-functions): Doc fix.
1002         (Bug#24663)
1004 2016-10-13  Philipp Stephani  <phst@google.com>
1006         Fix crash in evaluating functions
1008         See Bug#24673
1010         * src/eval.c (funcall_lambda): Fix crash for bogus functions such
1011         as (closure).
1013 2016-10-13  Paul Eggert  <eggert@cs.ucla.edu>
1015         * src/filelock.c (current_lock_owner): Update comment.
1017 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1019         Port --enable-gcc-warnings to GCC 6.2.1
1021         Backport from master.
1022         * src/conf_post.h (GNUC_PREREQ): New macro.
1023         * src/keyboard.c: Use it to work around GCC bug 54561.
1024         * src/process.c (would_block): New function.
1025         (server_accept_connection, wait_reading_process_output, send_process):
1026         Use it.
1028 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1030         Work around Samba bug with ':' in symlink contents
1032         * src/filelock.c (current_lock_owner): When reading the contents
1033         of a lock, treat the UTF-8 for U+F022 as if it were ':' (Bug#24656).
1034         Backport from master.
1036 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1038         Port last_marked change to full-program optimizers
1040         * src/alloc.c (last_marked): Now EXTERNALLY_VISIBLE.
1042 2016-10-12  Eli Zaretskii  <eliz@gnu.org>
1044         Adapt GDB scripts to '--enable-check-lisp-object-type' builds
1046         * etc/emacs-buffer.gdb <$qnil>: New variable.
1047         (ybuffer-list, yset-buffer): Use $qnil for comparing against
1048         'nil', as direct comparison with Qnil doesn't work in a build with
1049         '--enable-check-lisp-object-type'.
1051         * src/.gdbinit: Adapt commands of the temporary breakpoint in
1052         init_sys_modes to a build with '--enable-check-lisp-object-type'.
1054 2016-10-11  Eli Zaretskii  <eliz@gnu.org>
1056         Avoid optimizing out the last_marked[] array
1058         * src/alloc.c <last_marked>: No longer 'static', to avoid having
1059         it optimized out in optimized builds, which then makes debugging
1060         GC problems harder.
1062 2016-10-09  Alan Mackenzie  <acm@muc.de>
1064         CC Mode manual: remove reference to former Emacs variable last-command-char
1066         * doc/misc/cc-mode.texi (Hanging Semicolons and Commas): Replace reference to
1067         variable last-command-char by one to macro c-last-command-char.
1069 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1071         Allow to disable compaction of font caches
1073         * src/font.c (syms_of_font) <inhibit-compacting-font-caches>: New
1074         boolean variable.
1075         * src/alloc.c (compact_font_caches): Use it to bypass the call to
1076         compact_font_cache_entry.  (Bug#24634)  (Bug#24565)
1078         * etc/NEWS: Mention the new variable.
1080 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1082         Allow selection of font for symbols as in Emacs 24.x
1084         * src/fontset.c (syms_of_fontset) <use-default-font-for-symbols>:
1085         New boolean variable.
1086         (face_for_char): Use it to fall back to pre-Emacs 25.1 behavior
1087         when selecting fonts for displaying symbol and punctuation
1088         characters.  (Bug#24644)
1090         * etc/NEWS: Mention the new variable.
1092 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1094         Fix horizontal scrolling during Isearch
1096         * lisp/isearch.el (isearch-update): Compute the window's body
1097         width in a way that is correct when there are no fringes.
1098         (Bug#24584)
1100 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1102         Fix infloop in redisplay due to truncated lines and invisible text
1104         * src/xdisp.c (forward_to_next_line_start): Don't call
1105         'get_next_display_element' after finding the end of line.  This
1106         avoids setting the row's end position to the wrong value when the
1107         next screen line begins with invisible text; that wrong value
1108         caused set_cursor_from_row position the cursor in the wrong screen
1109         line, and eventually triggered bug#24109.
1111 2016-10-07  David Engster  <deng@randomsample.de>
1113         gitmerge: Add cherry pick to gitmerge-skip-regexp
1115         * admin/gitmerge.el (gitmerge-skip-regexp): Add "cherry picked
1116         from commit", which is the string appended by 'git cherry-pick
1117         -x'.
1119         (cherry picked from commit f648e4866981b142fca788372e1fd9013a0bb16a)
1121 2016-10-06  Eli Zaretskii  <eliz@gnu.org>
1123         Improve documentation of 'menu-bar-open'
1125         * lisp/term/w32-win.el (w32-menu-bar-open): Clarify that sometimes
1126         two ESC keypresses are needed to exit the menu.
1128         * doc/emacs/screen.texi (Menu Bar): Qualify the description of how
1129         to exit menus.  (Bug#24596)
1131 2016-10-06  Eli Zaretskii  <eliz@gnu.org>
1133         Fix compilation with MinGW runtime 3.22.2 and w32api 3.18.2
1135         * nt/inc/ms-w32.h (_WIN32_WINNT) [!MINGW_W64]: Undefine before
1136         defining to avoid redefinition warnings.
1138         * nt/inc/sys/stat.h (_SYS_STAT_H, _INC_STAT_H): Define, to avoid
1139         inclusion of sys/stat.h from the system headers, which could then
1140         lead to compilation errors due to redefinition of 'struct stat'
1141         etc.  This is needed because latest versions of MinGW runtime
1142         include sys/stat.h from wchar.h.
1144         * src/image.c (__MINGW_MAJOR_VERSION) [WINDOWSNT]: Temporarily
1145         redefine to 4 to avoid conflict between 2 definitions of
1146         MemoryBarrier.  (Bug#24613)
1148         Do not merge to master!
1150 2016-10-05  John Wiegley  <johnw@newartisans.com>
1152         Add documentation note from Alex
1154 2016-10-05  Aurelien Aptel  <aaptel@suse.com>
1156         * src/alloc.c: call only non-null finalizers
1158 2016-10-04  Karl Fogel  <kfogel@red-bean.com>
1160         Clarify that doc fixes are okay in feature freeze
1162         * CONTRIBUTE (branches): Explain that doc fixes are always safe, even
1163         on a release branch in feature freeze.  Tweak wording of paragraph
1164         after that to avoid a misleading contrast.
1166 2016-10-04  Eli Zaretskii  <eliz@gnu.org>
1168         Avoid crashes when setting the cursor
1170         * src/xdisp.c (display_and_set_cursor): Don't index glyphs of a
1171         glyph row if hpos is out of valid bounds.  This avoids crashes in
1172         some rare cases.  (Bug#24614)
1174 2016-10-04  Philippe Vaucher  <philippe.vaucher@gmail.com>
1176         Restore 'command-debug-status' functionality
1178         * src/callint.c (Fcall_interactively): Bind command-debug-status
1179         to nil.  This restores functionality inadvertently removed in
1180         Emacs 25.1.  (Bug#24555)
1182         * lisp/subr.el (command-debug-status): Declare obsolete.
1184         * doc/lispref/debugging.texi (Internals of Debugger): Document
1185         that 'command-debug-status' is obsolete.
1187 2016-10-03  Karl Fogel  <kfogel@red-bean.com>
1189         Document yank behavior in the right place
1191         * lisp/simple.el (yank): Document the handling of the
1192         `yank-handled-properties' and `yank-excluded-properties' variables,
1193         and the `yank-handler' text property.
1194         (yank-pop): Refer to `yank' now (bug#286)
1196         * lisp/subr.el (insert-for-yank): Refer to `yank' now.
1197         (insert-for-yank-1): Refer to `insert-for-yank' now.
1199         See this thread for discussion:
1201           https://lists.gnu.org/archive/html/emacs-devel/2016-09/threads.html#00329
1202           From: Karl Fogel
1203           To: Emacs Devel
1204           Subject: Question about intended behavior of 'insert-for-yank-1'.
1205           Date: Mon, 12 Sep 2016 00:17:14 -0500
1206           Message-ID: <874m5lr92d.fsf@red-bean.com>
1208 2016-10-03  Philipp Stephani  <phst@google.com>
1210         Document nil args of compare-buffer-substrings
1212         * src/editfns.c (Fcompare_buffer_substrings): Document behavior when
1213         the arguments are nil.
1215 2016-10-03  Katsumi Yamaoka  <yamaoka@jpl.org>
1217         * doc/misc/message.texi (Bcc Warning): Fix markup.
1219         * doc/misc/message.texi (Bcc Warning):
1220         Document mml-secure-safe-bcc-list.
1222 2016-10-02  Noam Postavsky  <npostavs@gmail.com>
1224         Don't require isearch-update before isearch-done
1226         It is useful to be able to call `isearch-done' unconditionally to
1227         ensure a non-isearching state.
1229         * lisp/isearch.el (isearch-done): Check that `isearch--current-buffer'
1230         is a live buffer before using it (Bug #21091).
1231         * test/automated/isearch-tests.el (isearch--test-done): Test it.
1233         (cherry picked from commit 68f4b5292781bc331b040105c4079902b993835c)
1235 2016-10-02  Peder O. Klingenberg  <peder@klingenberg.no>
1237         Avoid error in icalendar--read-element
1239         * lisp/calendar/icalendar.el (icalendar--read-element): Avoid a regex
1240         stack overflow by not using regex to extract values from calendar
1241         events. (Bug#24315)
1243         (cherry picked from commit 55dde6c1a21a792d3d75c19e612c74dd054aaf1e)
1245 2016-10-02  Lars Ingebrigtsen  <larsi@gnus.org>
1247         Make a menu less ambiguous
1249         * doc/emacs/custom.texi (Key Bindings): The Modifier Keys node
1250         is about using modifier keys, not binding them (bug#10942).
1252         (cherry picked from commit 214f85a0a68b96a552ca605d601b33f6eef5c4ca)
1254 2016-10-02  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
1256         Doc fix for url-http
1258         * lisp/url/url-http.el (url-http): Document better return values
1259           (bug#13187) (tiny change)
1261         (cherry picked from commit 344303c8d9cb03d4778a73940e80e966280aa694)
1263 2016-10-01  Eli Zaretskii  <eliz@gnu.org>
1265         * lisp/frame.el (blink-cursor-delay): Doc fix.  (Bug#24372)
1267 2016-09-30  Katsumi Yamaoka  <yamaoka@jpl.org>
1269         * lisp/gnus/gnus-art.el (gnus-button-handle-library): Fix typo.
1271 2016-09-27  Paul Eggert  <eggert@cs.ucla.edu>
1273         Regexp Functions doc minor fixes
1275         * doc/lispref/searching.texi (Regexp Functions):
1276         Fix misspelling of “matching”.  Use @table for table.
1277         Reformat code example to fit into info file width (Bug#17862).
1279 2016-09-27  Katsumi Yamaoka  <yamaoka@jpl.org>
1281         Backport mm-convert-shr-links fix from master (bug#23964)
1283         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
1284         Preserve key bindings that shr adds (bug#23964).
1286 2016-09-26  Eli Zaretskii  <eliz@gnu.org>
1288         Improve documentation of 'expand-abbrev' and wrapper hooks
1290         * lisp/simple.el (filter-buffer-substring-functions)
1291         (buffer-substring--filter): Add a link to 'with-wrapper-hook' as
1292         the place to look for documentation of wrapper hooks.
1293         * lisp/minibuffer.el (completion-in-region-functions)
1294         (completion--in-region): Add a link to 'with-wrapper-hook' as the
1295         place to look for documentation of wrapper hooks.
1296         * lisp/abbrev.el (expand-abbrev, abbrev--default-expand): Clarify
1297         the doc strings.  (Bug#24540)
1299         * doc/lispref/text.texi (Buffer Contents): Mention
1300         'with-wrapper-hook's doc string as the place to learn about that
1301         obsolete facility.
1303 2016-09-25  Eli Zaretskii  <eliz@gnu.org>
1305         Minor copyedits of MS-Windows installation instructions
1307         * nt/INSTALL:
1308         * nt/README.W32: Add URL of Emacs dependencies on alpha.gnu.org.
1310 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1312         Fix display of cursor when 'blink-cursor-delay' has small value
1314         * lisp/frame.el (blink-cursor-check, blink-cursor-mode):
1315         Protect ourselves against too small values of blink-cursor-delay.
1316         This avoids erratic display of the cursor, or even failure to
1317         display it, when user types text at high speed or leans on a key
1318         to invoke the keyboard auto-repeat feature.  (Bug#24372)
1320 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1322         Improve the doc string of 'format'
1324         * src/editfns.c (Fformat): Fix ambiguity in the doc string's usage
1325         of a literal period.  (Bug#24407)
1327         This was backported from master
1328         (cherry picked from commit 7123896626b06c26c4e37839ab41e41980c8f433)
1330 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1332         Improve doc strings in whitespace.el
1334         * lisp/whitespace.el (whitespace-mode, whitespace-newline-mode)
1335         (global-whitespace-mode, global-whitespace-newline-mode): Improve
1336         the doc strings.  (Bug#24413)
1338         This was backported from master
1339         (cherry picked from commit 3462fe73351f3da5bc3ebf8296ee44dd2e6b1dbc)
1341 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1343         Improve detectability of 'next-logical-line' and 'previous-logical-line'
1345         * lisp/simple.el (next-line, previous-line): Mention
1346         'next-logical-line' and 'previous-logical-line' in the doc
1347         strings.  (Bug#24443)
1349         This was backported from master
1350         (cherry picked from commit e95d0d15bb1534803b0adb3c3a927c8beb7d4e79)
1352 2016-09-23  Martin Rudalics  <rudalics@gmx.at>
1354         Fix (next-frame nil t) crash (Bug#24281)
1356         * src/frame.c (candidate_frame): Check minibuf argument before
1357         comparing it to zero (Bug#24281).
1359         This was backported from master
1360         (cherry picked from commit dc491c3df305a73908fe8de20b7c428a5b38c846)
1362 2016-09-23  Noam Postavsky  <npostavs@gmail.com>
1364         Fix debugging of string-match-p errors
1366         * src/eval.c (call_debugger): Bind inhibit-changing-match-data to nil so
1367         that debugger code that needs to do regexp match won't break
1368         (Bug #23949, Bug #24166, Bug#16294).
1370         This was backported from master
1371         (cherry picked from commit 7fb75680b38fe0805c2ff7e9cca3bec8121ba984)
1373 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1375         Fix region display while dragging mouse
1377         * lisp/mouse.el (mouse-drag-track): Reset deactivate-mark in the
1378         buffer of the drag event, to allow mark to be set and the region
1379         be shown as we drag the mouse.  (Bug#24030)
1381         This was backported from master
1382         (cherry picked from commit 7d58b02f363ab02961faa950d1ba727df96f2f19)
1384 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1386         Fix 'vertical-motion' and 'posn-at-point' under 'visual-line-mode'
1388         * src/xdisp.c (move_it_in_display_line_to): Don't assume we can
1389         wrap on a whitespace character if it's followed by another
1390         whitespace character.  When returning under WORD_WRAP for a screen
1391         line that is continued, restore to wrap point when atpos/atx
1392         position would be displayed on the next screen line due to
1393         line-wrap.  (Bug#23570)
1395         This is backported from master
1396         (cherry picked from commit 99848b37d2c3e14c0af45fc6da437a806aa58a80)
1398 2016-09-23  Paul Eggert  <eggert@cs.ucla.edu>
1400         Improve display of tex-verbatim and Info quoted
1402         Problem reported by Glenn Morris (Bug#19889).
1403         * doc/emacs/display.texi (Standard Faces):
1404         * doc/lispref/display.texi (Basic Faces):
1405         * etc/NEWS: Mention fixed-pitch-serif.
1406         * lisp/faces.el (face-font-family-alternatives):
1407         New family alias Monospace Serif.
1408         (fixed-pitch-serif): New face, which uses the new family.
1409         * lisp/info.el (Info-quoted):
1410         * lisp/textmodes/tex-mode.el (tex-verbatim): Use the new face.
1411         * test/automated/font-parse-tests.el (font-parse-tests--data):
1412         Add test case for Monospace Serif.
1414         This is backport from master
1415         (cherry picked from commit 36906806ccfc0e53f1d8c365ab0d7151288b7833)
1417 2016-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
1419         Document how to check for ImageMagick support
1421         * doc/lispref/display.texi (ImageMagick Images): Say how to
1422         check for ImageMagick support, which isn't quite obvious
1423         (bug#20702).
1425         This is backport from master
1426         (cherry picked from commit faf07d646575c78d6d956ce91820ebbf38308553)
1428 2016-09-23  Tino Calancha  <f92capac@gmail.com>
1430         Run find-function-after-hook after finding a symbol
1432         * lisp/emacs-lisp/find-func.el (find-library):
1433         * lisp/help-mode.el (help-function-def, help-variable-def):
1434         Run `find-function-after-hook' inside the help-function of the
1435         buttons (bug#22583).
1436         * etc/NEWS: Mention the change.
1438         This is a backport from master.
1439         (cherry picked from commit f069d854508946bcc03e4c77ceb430748e3ab6d7)
1441 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1443         Document 'timerp'
1445         * doc/lispref/os.texi (Timers): Document 'timerp'.  (Bug#24511)
1446         Improve indexing.
1448 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1450         Improve documentation of overlay priorities
1452         * doc/lispref/display.texi (Overlay Properties): Minor copyedits.
1453         By popular demand, mention the '(PRIMNARY . SECONDARY)' form of
1454         overlay properties used for the region.  (Bug#20253)
1456 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1458         Fix 'dired-compress-files'
1460         * lisp/dired-aux.el (dired-do-compress-to): Make sure the archive
1461         file name is fully expanded by running it through
1462         'expand-file-name'.  Suggested by Drew Adams <drew.adams@oracle.com>.
1463         (Bug#24486)  Doc fix.
1464         * lisp/dired.el: Regenerated changes in autoloads.
1466 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1468         Update commentary of STRING_CHAR and FETCH_MULTIBYTE_CHAR
1470         * src/character.h (STRING_CHAR):
1471         * src/buffer.h (FETCH_MULTIBYTE_CHAR): Update commentary: these
1472         two macros no longer do any character unification, so the caveats
1473         in those comments are no longer pertinent.
1475 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1477         Increment Emacs version to 25.1.50
1479         * README:
1480         * configure.ac:
1481         * etc/NEWS:
1482         * msdos/sed2v2.inp: Bump the version to 25.1.50.
1484 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
1486         Document the optional zlib library in MS-Windows builds
1488         * nt/README.W32:
1489         * nt/INSTALL.W64:
1490         * nt/INSTALL: Mention the optional text decompression support and
1491         the zlib library.
1493 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
1495         Fix tagging of DEFUN by etags
1497         * lib-src/etags.c (C_entries): Tag DEFUN twice: once with its C
1498         name, and then again with its Lisp name.  This restores the
1499         ability to find Lisp primitives by their C name, which was lost
1500         when the etags back-end was switched to a more strict search
1501         criteria.
1503         * test/etags/ETAGS.good_1:
1504         * test/etags/ETAGS.good_2:
1505         * test/etags/ETAGS.good_3:
1506         * test/etags/ETAGS.good_4:
1507         * test/etags/ETAGS.good_5:
1508         * test/etags/ETAGS.good_6:
1509         * test/etags/CTAGS.good: Adapt to the changes in etags.c wrt
1510         tagging DEFUN.
1512 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
1514         Avoid resetting track-mouse by mouse clicks
1516         * lisp/mouse.el (mouse-drag-line, mouse-drag-track): Don't assume
1517         the previous value of track-mouse is nil; instead, save and
1518         restore the previous value.  (Bug#24480)
1520 2016-09-20  Eli Zaretskii  <eliz@gnu.org>
1522         Improve nt/README.W32 instructions
1524         * nt/README.W32: Add instructions for installing 64-bit builds of
1525         optional libraries.  (Bug#24470)
1527 2016-09-17  Eli Zaretskii  <eliz@gnu.org>
1529         Document that desktop file overrides frame parameters
1531         * doc/emacs/misc.texi (Saving Emacs Sessions):
1532         * doc/emacs/frames.texi (Frame Parameters): Document that frame
1533         parameters restored by desktop.el take precedence over the
1534         customizations in the init file, and explain how to countermand
1535         that.  For the details of the issue, see
1536         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00318.html.
1538 2016-09-15  Nicolas Petton  <nicolas@petton.fr>
1540         * etc/AUTHORS: Regenerate the AUTHORS file
1542 2016-09-16  Nicolas Petton  <nicolas@petton.fr>
1544         * Version 25.1 released.
1546 2016-09-15  Nicolas Petton  <nicolas@petton.fr>
1548         * etc/AUTHORS: Regenerate the AUTHORS file
1550 2016-09-15  Eli Zaretskii  <eliz@gnu.org>
1552         Update admin/authors.el
1554         * admin/authors.el (authors-fixed-entries): Add an entry for Bob
1555         Weiner.
1557 2016-09-14  Eli Zaretskii  <eliz@gnu.org>
1559         Update Antinews in ELisp manual
1561         * doc/lispref/anti.texi (Antinews): Update for Emacs 25.1.
1562         * doc/lispref/elisp.texi (Top): Update the main menu entry for
1563         Antinews.
1565 2016-09-11  Noam Postavsky  <npostavs@gmail.com>
1567         Fix comments on window height macros
1569         * src/window.h (WINDOW_MODE_LINE_HEIGHT, WINDOW_HEADER_LINE_HEIGHT): Fix
1570         confusing claim that "height is in pixels and in lines"; in fact it's in
1571         pixels.
1573 2016-09-10  Toke Høiland-Jørgensen  <toke@toke.dk>  (tiny change)
1575         Fix 'url-http-create-request' when cookies are used
1577         * lisp/url/url-http.el (url-http-create-request): Make sure the
1578         cookie headers are a unibyte string.  For the details, see
1579         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00202.html.
1581 2016-09-08  Martin Rudalics  <rudalics@gmx.at>
1583         Fix cross reference in frames.texi
1585         * doc/lispref/frames.texi (Minibuffers and Frames): Fix cross
1586         reference.
1588 2016-09-04  immerrr  <immerrr@gmail.com>
1590         Fix regexp-opt documentation (bug #17862)
1592         * lisp/emacs-lisp/regexp-opt.el (regexp-opt):
1593         * doc/lispref/searching.texi (Regexp Functions): Update PAREN doc.
1595 2016-08-31  Nicolas Richard  <youngfrog@members.fsf.org>
1597         * lisp/emacs-lisp/gv.el (gv-ref): Fix example of PLACE in docstring.
1599 2016-08-27  Noam Postavsky  <npostavs@gmail.com>
1601         Fix tags-query-replace docstring
1603         * lisp/progmodes/etags.el (tags-query-replace): Remove incorrect info
1604         regarding non-existent parameters.
1606 2016-08-26  Eli Zaretskii  <eliz@gnu.org>
1608         Clarify documentation of precision in format specs
1610         * doc/lispref/strings.texi (Formatting Strings): Be less
1611         definitive wrt what precision means in format specs other than
1612         floating-point, %s and %S.  (Bug#24314)
1614 2016-08-24  Eli Zaretskii  <eliz@gnu.org>
1616         Improve and clarify documentation of subprocesses
1618         * doc/lispref/processes.texi (Subprocess Creation, Shell Arguments):
1619         Mention 'make-process' rather than 'start-process'.  Update wrt
1620         standard destinations of standard output/error streams and due to
1621         different formats of arguments accepted by 'make-process'.
1622         (Processes): Mention process objects that represent connections.
1623         (Synchronous Processes): Minor clarifications.
1624         (Asynchronous Processes): Describe 'make-process' and
1625         'make-pipe-process' before 'start-process'.  Update and expand the
1626         documentation.
1627         (Deleting Processes, Process Information, Input to Processes)
1628         (Signals to Processes, Query Before Exit, Network): Update and
1629         expand the documentation, especially wrt process objects that
1630         represent connections.
1631         (Output from Processes): Mention the possibility of separating
1632         stderr via 'make-process'.
1633         (Filter Functions): Mention that stderr by default arrives at the
1634         filter function together with stdout.  (Bug#24287)
1636         * src/process.c (Fprocess_id, Fprocess_command)
1637         (Fprocess_contact, Fprocess_type, Fstop_process): Doc fixes for
1638         process objects that represent connections.
1640 2016-08-23  Paul Eggert  <eggert@cs.ucla.edu>
1642         * etc/PROBLEMS: Mention gnutls-cli 3.5.3 (Bug#24247).
1644 2016-08-21  Nicolas Petton  <nicolas@petton.fr>
1646         * etc/AUTHORS: Update the AUTHORS file
1648 2016-08-20  Philipp Stephani  <phst@google.com>
1650         Some assorted documentation clarifications
1652         * src/fileio.c (Fwrite_region): Clarify that END is ignored if
1653         START is nil.
1654         * src/editfns.c (Fbuffer_size): Add short discussion about
1655         narrowing.
1656         * src/callproc.c (Fcall_process_region): Discuss behavior when
1657         START and END are not buffer positions.
1659 2016-08-18  Eli Zaretskii  <eliz@gnu.org>
1661         Improve commentary in src/character.h
1663         * src/character.h (BYTES_BY_CHAR_HEAD, MULTIBYTE_LENGTH)
1664         (MULTIBYTE_LENGTH_NO_CHECK, STRING_CHAR_AND_LENGTH): Remove stale
1665         info from commentary and improve it.
1667 2016-08-17  Dmitry Gutov  <dgutov@yandex.ru>
1669         * etc/NEWS: Mention the change in json-encode-string.
1671         The change was made to fix bug#20154, and came up again in bug#24239.
1673 2016-08-16  Eli Zaretskii  <eliz@gnu.org>
1675         * src/doc.c (Fsubstitute_command_keys): Another fix for smart quotes.
1677         (Bug#24206)
1679 2016-08-16  Eli Zaretskii  <eliz@gnu.org>
1681         Avoid segfaults due to quoting in 'substitute-command-keys'
1683         * src/doc.c (Fsubstitute_command_keys): Correct character counts
1684         when the input string is unibyte.  (Bug#24206)
1686 2016-08-16  Martin Rudalics  <rudalics@gmx.at>
1688         In NEWS describe new handling of window margins (Bug#24193)
1690         * etc/NEWS: Describe new handling of margins when splitting or
1691         resizing windows (Bug#24193).
1693 2016-08-16  Martin Rudalics  <rudalics@gmx.at>
1695         Facultatively ignore margins when splitting and resizing windows (Bug#24193)
1697         Provide a new window parameter 'min-margins' which allows to
1698         ignore the actual widths of a window's margins when splitting or
1699         resizing that window horizontally.  This should serve as a
1700         workaround for handling the problems raised by Bug#24193.
1702         * lisp/window.el (window--min-size-1): Handle new window
1703         parameter 'min-margins'.
1704         (split-window): Fix text of error messages.
1705         * doc/lispref/windows.texi (Window Parameters): Describe new
1706         parameter 'min-margins'.
1708 2016-08-14  Noam Postavsky  <npostavs@gmail.com>
1710         Document CATEGORY arg to modify-category-entry
1712         * src/category.c (Fmodify_category_entry): Document CATEGORY argument.
1714 2016-08-13  Noam Postavsky  <npostavs@gmail.com>
1716         Document char-script-table's effect on word motion
1718         * doc/lispref/positions.texi (Word Motion): Talk about
1719         char-script-table (Bug #10494).
1721 2016-08-13  Eli Zaretskii  <eliz@gnu.org>
1723         Further fix for 'url-http-create-request' and multibyte strings
1725         * lisp/url/url-http.el (url-http-create-request): Run
1726         url-mime-charset-string through url-http--encode-string.
1727         (Bug#24117)
1729 2016-08-13  Noam Postavsky  <npostavs@gmail.com>
1731         Fix docstring of eval-expression
1733         * lisp/simple.el (eval-expression): Fix the docstring to reflect the
1734         fact that the prefix argument does not affect formatting for
1735         integers (Bug #20691).
1737 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
1739         Clarify when 'cursor' property is in effect
1741         * doc/lispref/text.texi (Special Properties): Minor copyedits.
1742         (Bug#24179)
1744 2016-08-11  Dmitry Gutov  <dgutov@yandex.ru>
1746         Convert the remaining strings to unibyte before concatenating
1748         * lisp/url/url-http.el (url-http--encode-string): New function.
1749         (url-http-create-request): Use it to convert ASCII to unibyte.
1750         (Bug#24117)
1752 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
1754         Fix bug with handling the bidi cache
1756         * src/xdisp.c (redisplay_window): Save and restore the state of
1757         the bidi cache before reusing the iterator after calls to
1758         try_window and try_window_reusing_current_matrix.
1760 2016-08-10  Eli Zaretskii  <eliz@gnu.org>
1762         * doc/lispref/text.texi (Change Hooks): Minor copyedits.
1764 2016-08-09  Eli Zaretskii  <eliz@gnu.org>
1766         Clarify documentation of before/after-change-functions
1768         * doc/lispref/text.texi (Change Hooks): Clarify that the hooks are
1769         not called in balanced pairs.
1771 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
1773         Document use of vectors in keymaps
1775         * doc/lispref/keymaps.texi (Format of Keymaps): Mention vector
1776         format (Bug #14797).
1778 2016-08-03  Alan Third  <alan@idiocy.org>
1780         Post AppDefined events from the main thread ONLY (bug#23934)
1782         * src/nsterm.h: Make nextappdefined var not just GNUStep.
1783         * src/nsterm.m (ns_send_appdefined, sendFromMainThread): Remove GNUStep
1785 2016-08-03  John Wiegley  <johnw@newartisans.com>
1787         Update to the AUTHORS file for Bob Weiner
1789                 * etc/AUTHORS: Update the packages attributed to Bob Weiner
1791 2016-08-02  John Wiegley  <johnw@newartisans.com>
1793         Revert "Fix local printer set to left aligned string formatter."
1795         This reverts commit 8a38e948b039516e70176ebe20c5349e2ade6ac5.
1797 2016-08-02  John Wiegley  <johnw@newartisans.com>
1799         Revert "Fix ses-delete-blanks to delete only blanks + documentation."
1801         This reverts commit 3c97b0f7589e06aeb1ab0147f0ee32974c32926d.
1803 2016-08-02  John Wiegley  <johnw@newartisans.com>
1805         Revert "Fix English."
1807         This reverts commit b275cc76f0c5ab49e81445fcc3420c8772aefd42.
1809 2016-08-01  Eli Zaretskii  <eliz@gnu.org>
1811         Improve doc strings of 'gud-gdb' and 'gdb'
1813         * lisp/progmodes/gdb-mi.el (gdb):
1814         * lisp/progmodes/gud.el (gud-gdb): Doc fix.  (Bug#24125)
1816 2016-08-01  Eli Zaretskii  <eliz@gnu.org>
1818         Fix doc string of 'minibuffer-message-timeout'
1820         * src/keyboard.c (syms_of_keyboard) <minibuffer-message-timeout>:
1821         Doc fix.  (Bug#24123)
1823 2016-07-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1825         Fix English.
1827         * doc/misc/ses.texi (Nonrelocatable references): Fix grammatically
1828           incorrect English.
1830 2016-07-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1832         Fix ses-delete-blanks to delete only blanks + documentation.
1834         * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
1835         'ses-range' modifier as an alternative to 'ses+'.
1836         (Advanced Features): Add a refernce to node 'Nonrelocatable
1837         references' concerning function 'ses-rename-cell'.
1838         (Standard formula functions): Mention the '!' 'ses-range'
1839         modifier as an alternative to 'ses-delete-blanks'.
1840         (More on cell printing): Fix fallback printer
1841         definition.  Minor editorial formatting changes.
1842         (Nonrelocatable references): Document the use of
1843         'ses-rename-cell' as a better way to make cell reference
1844         non-relocatable.
1845         (The data area): Document the presence of local printer
1846         definitions in the data area.
1848         * lisp/ses.el (ses-delete-blanks): Do not remove
1849         *error*.  Any error in an argument should propagate into the
1850         using formula rather than being silently hidden !
1852 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
1854         profiler: document prefix arg for tree expansion
1856         * doc/lispref/debugging.texi (Profiling):
1857         * lisp/profiler.el (profiler-report-toggle-entry): Document use of
1858         prefix argument to expand whole call trees.
1860 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
1862         Clarify usage of eshell-visual-options
1864         * lisp/eshell/em-term.el (eshell-visual-options): Add second option to
1865         example usage (Bug #19627).
1867 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
1869         Fix comment in files-in-below-directory
1871         * doc/lispintro/emacs-lisp-intro.texi (Files List): Comment should not
1872         say append, since the code is adding to front of list (Bug #21589).
1874 2016-07-28  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1876         Fix local printer set to left aligned string formatter.
1878         * lisp/ses.el (ses-local-printer-compile): Add missing case
1879         for left-aligned string formatter.
1881 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
1883         Bump Emacs version to 25.1 for the first RC
1885         * README:
1886         * configure.ac:
1887         * lisp/ldefs-boot.el:
1888         * msdos/sed2v2.inp: Bump Emacs version to 25.1.
1890 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
1892         * etc/AUTHORS: Update the AUTHORS file
1894         ;; * ChangeLog.2: ChangeLog update.
1896 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
1898         * admin/authors.el (authors-valid-file-names): Addition.
1900 2016-07-23  Eli Zaretskii  <eliz@gnu.org>
1902         Warn about Cairo-related problems
1904         * etc/NEWS: Warn about known problems in the Cairo build.
1905         (Bug#23925)
1907 2016-07-23  Paul Pogonyshev  <pogonyshev@gmail.com>
1909         Don't let completion break `declare' handling
1911         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Fix to not alter
1912         `defun-declarations-alist' by side effect (Bug #23648).
1914 2016-07-23  Noam Postavsky  <npostavs@gmail.com>
1916         Adjust match data before calling after-change-funs
1918         It's important to adjust the match data in between calling
1919         before-change-functions and after-change-functions, so that buffer
1920         change hooks will always see match-data consistent with buffer content.
1921         (Bug #23917)
1923         * src/insdel.c (replace_range): Add new parameter ADJUST_MATCH_DATA, if
1924         true call update_search_regs.  Update all callers (except
1925         Freplace_match) to pass 0 for the new parameter.
1926         * src/search.c (update_search_regs): New function, extracted from
1927         Freplace_match.
1928         (Freplace_match): Remove match data adjustment code, pass 1 for
1929         ADJUST_MATCH_DATA to replace_range instead.
1931 2016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
1933         Do not show string-rectangle preview if minibuffer is empty
1935         * lisp/rect.el (rectangle--string-preview): Remove condition that sets
1936         preview string to the default replacement string.
1938 2016-07-21  Achim Gratz  <Stromeko@nexgo.de>
1940         * etc/PROBLEMS: Add entry about selection problems under Plasma 5.
1942         Bug#24013
1944 2016-07-21  Paul Eggert  <eggert@cs.ucla.edu>
1946         Port to glibc 2.24 (pre-release) + ppc64
1948         Backport from master (Bug#24033).
1949         Inspired by a suggestion by Florian Weimer in:
1950         https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
1951         * src/emacs.c (main) [__PPC64__]:
1952         Special case for __PPC64__, which needs ASLR disabled in
1953         dumped Emacs too.
1955 2016-07-21  Katsumi Yamaoka  <yamaoka@jpl.org>
1957         * lisp/net/shr.el (shr-fill-line): Withdraw the last commit (4157159).
1959         * lisp/net/shr.el (shr-fill-line):
1960         Preserve text properties in folded lines (bug#24034).
1962 2016-07-17  Robert Cochran  <robert-git@cochranmail.com>  (tiny change)
1964         Expand FIXME near definition of fboundp
1966         This expansion of the FIXME is so that future developers are aware of
1967         the potential problems of aliasing fboundp to symbol-function without
1968         taking backwards compatibility into account.
1970         * src/data.c (fboundp): Note potential backwards compatibility issues in
1971         FIXME.
1973 2016-07-17  Noam Postavsky  <npostavs@gmail.com>
1975         kill-rectangle should mention killed-rectangle
1977         * lisp/rect.el (kill-rectangle): Mention `killed-rectangle' in docstring
1978         and warning message, rather than kill ring (Bug#19773).
1980 2016-07-16  Eli Zaretskii  <eliz@gnu.org>
1982         Avoid assertion violations in nhexl-mode
1984         * src/bidi.c (bidi_resolve_neutral): Convert an assertion to real
1985         code executed in all builds.  (Bug#24001)
1987 2016-07-15  Fredrik Bergroth  <fbergroth@gmail.com>  (tiny change)
1989         Use memmove instead of memcpy on overlapping regions
1991         * src/editfns.c (Ftranspose_regions): Regions may overlap, so
1992         use memmove instead of memcpy (bug#19213).
1995         This is a backport from trunk.
1996         (cherry picked from commit 354f9f0fc6cc05ed98883447f9b2f37943d79160)
1998 2016-07-15  Noam Postavsky  <npostavs@gmail.com>
2000         Document buffer-swap-text+save-excursion interaction
2002         * doc/lispref/buffers.texi (Swapping Text):
2003         * src/buffer.c (Fbuffer_swap_text): Add warning about interaction of
2004         `buffer-swap-text' and `save-excursion' (Bug #4655).
2006 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
2008         Fix eieio vs cl-generic incompatibilities found in Rudel (bug#23947)
2010         * lisp/emacs-lisp/cl-generic.el (cl-generic-apply): New function.
2011         * lisp/emacs-lisp/eieio-compat.el (eieio--defmethod): Fix incorrect
2012         mapping between cl-no-applicable-method and EIEIO's no-applicable-method.
2013         * lisp/emacs-lisp/eieio-core.el (eieio--class-precedence-c3):
2014         `class' is not a symbol but a class object.
2016 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
2018         Include cl-generic in package--builtin-versions (bug#22817)
2020         * lisp/emacs-lisp/cl-generic.el (package--builtin-versions):
2021         Add ourselves manually.  Don't merge since there's a better fix on master.
2023 2016-07-14  Michael Albinus  <michael.albinus@gmx.de>
2025         Improve timing in `tramp-test29-environment-variables'
2027         * test/automated/tramp-tests.el
2028         (tramp-test--shell-command-to-string-asynchronously):
2029         Add additional `accept-process-output' call.
2030         (tramp-test29-environment-variables): Remove additional sleep calls.
2032 2016-07-14  Michael Albinus  <michael.albinus@gmx.de>
2034         Add test for handling environment variables in Tramp
2036         * test/automated/tramp-tests.el
2037         (tramp-test--shell-command-to-string-asynchronously): New defun.
2038         (tramp-test29-environment-variables): New test.
2039         (tramp-test30-vc-registered)
2040         (tramp-test31-make-auto-save-file-name)
2041         (tramp-test32-special-characters)
2042         (tramp-test32-special-characters-with-stat)
2043         (tramp-test32-special-characters-with-perl)
2044         (tramp-test32-special-characters-with-ls, tramp-test33-utf8)
2045         (tramp-test33-utf8-with-stat, tramp-test33-utf8-with-perl)
2046         (tramp-test33-utf8-with-ls)
2047         (tramp-test34-asynchronous-requests)
2048         (tramp-test35-recursive-load, tramp-test36-unload): Rename.
2050 2016-07-13  Glenn Morris  <rgm@gnu.org>
2052         * lisp/emacs-lisp/package.el (describe-package-1)
2053         (package-status-external): Fix face references.  (Bug#23927)
2055 2016-07-12  Stephen Berman  <stephen.berman@gmx.net>
2057         Improve documentation of search functions
2059         Make the documentation of the search functions more accurate,
2060         complete, and uniform; in particular, extend the description of
2061         the effect when the 'count' parameter is a negative number to all
2062         of these functions.
2064         * src/search.c (Fsearch_backward, Fsearch_forward)
2065         (Fre_search_backward, Fre_search_forward)
2066         (Fposix_search_backward, Fposix_search_forward):
2067         * lisp/isearch.el (word-search-backward, word-search-forward)
2068         (word-search-backward-lax, word-search-forward-lax): Improve doc
2069         strings as described above.
2071         * doc/lispref/searching.texi (String Search, Regexp Search)
2072         (POSIX Regexps): Use 'count' instead of 'repeat' as the name of
2073         the fourth parameter of the *-search-{forward,backward} functions
2074         and improve documentation as described above.
2076 2016-07-12  Michael Albinus  <michael.albinus@gmx.de>
2078         Delete environment variables in Tramp when needed
2080         * lisp/net/tramp-sh.el (tramp-get-env-with-u-option): New defun.
2081         (tramp-sh-handle-start-file-process)
2082         (tramp-sh-handle-process-file, ): Use it.  (Bug#23952)
2084 2016-07-12  Eli Zaretskii  <eliz@gnu.org>
2086         Add "New in Emacs 25" section to the FAQ
2088         * doc/misc/efaq.texi (Latest version of Emacs): Update for later
2089         versions.
2090         (New in Emacs 25): New node.
2091         (Status of Emacs): Add it to the menu.
2093 2016-07-10  Eli Zaretskii  <eliz@gnu.org>
2095         Fix 'vertical-motion' in non-interactive sessions
2097         * src/indent.c (Fvertical_motion): Don't return uninitialized
2098         value in non-interactive session.  This fixes random errors in
2099         batch mode, see
2100         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00609.html
2101         and
2102         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00500.html
2103         for the details.
2105 2016-07-10  Andreas Schwab  <schwab@linux-m68k.org>
2107         Fix memory leak in imagemagick-types
2109         * src/image.c (Fimagemagick_types): Use AcquireExceptionInfo to
2110         avoid memory leak.
2112 2016-07-10  Eli Zaretskii  <eliz@gnu.org>
2114         Update ELisp manual to match 'string-collate-equalp' doc string
2116         * doc/lispref/strings.texi (Text Comparison): Remove reference to
2117         sorting from the description of 'string-collate-equalp'.  (Bug#23902)
2119 2016-07-09  Noam Postavsky  <npostavs@gmail.com>
2121         Clarify docstring of find-feature-regexp
2123         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Explain that `%s'
2124         is optional (Bug #23520).
2126 2016-07-09  Noam Postavsky  <npostavs@gmail.com>
2128         Add details to cl-lib defining macros' docstrings
2130         * lisp/emacs-lisp/cl-macs.el (cl-defun, cl-defmacro): Add terse summary
2131         of supported arglist forms (Bug #22462).
2133 2016-07-09  Eli Zaretskii  <eliz@gnu.org>
2135         Clarify doc string of 'save-buffer'
2137         * lisp/files.el (save-buffer): Clarify that backups might not be
2138         made even if this command is invoked with 2 or 3 "C-u"s.
2139         (Bug#3702)
2141 2016-07-08  Eli Zaretskii  <eliz@gnu.org>
2143         Un-confuse doc string of 'string-collate-equalp'
2145         * src/fns.c (Fstring_collate_equalp): Remove confusing text from
2146         doc string.  (Bug#23902)
2148 2016-07-07  Eli Zaretskii  <eliz@gnu.org>
2150         Clarify documentation of 'mouse-on-link-p'
2152         * lisp/mouse.el (mouse-on-link-p): Clarify the form of the POS
2153         argument.  (Bug#23899)
2155 2016-07-06  Phillip Lord  <phillip.lord@russet.org.uk>
2157         Fix missing undo-boundary on revert-buffer.
2159         * lisp/simple.el (undo-auto--undoable-change-no-timer): New function.
2160         * src/fileio.c (insert-buffer-contents): Call
2161           undo-auto--undoably-changed-buffers before changes.
2163         Addresses Bug#23785.
2165         Do not merge to master as c98bc98 also addresses the same bug.
2167 2016-07-06  Martin Rudalics  <rudalics@gmx.at>
2169         Amend last addition to etc/PROBLEMS
2171         * etc/PROBLEMS: Mention GTK+ problem with unexpected frame widenings
2173 2016-07-06  Paul Eggert  <eggert@cs.ucla.edu>
2175         Fix open-network-stream responsiveness
2177         Problem reported by Christer Ekholm (Bug#23864).
2178         Backport from master.
2179         * src/process.c (wait_reading_process_output):
2180         Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
2181         when wait == INFINITY and got_output_end_time is invalid.
2182         In this case the code should break, not continue.
2184 2016-07-05  Phillip Lord  <phillip.lord@russet.org.uk>
2186         Fix missing point information in undo
2188         * src/undo.c (record_insert): Use record_point instead of
2189           prepare_record, and do so unconditionally.
2190           (prepare_record): Do not record first change.
2191           (record_point): Now conditional on state before the last command.
2192           (record_delete): Call record_point unconditionally.
2193           (record_property_change): Use prepare_record.
2194           (record_marker_adjustments): Use prepare_record.
2196         Addresses Bug# 21722
2198 2016-07-04  Eli Zaretskii  <eliz@gnu.org>
2200         Avoid crashes when buffer modification hooks clobber match data
2202         * src/search.c (Freplace_match): Error out if buffer modification
2203         hooks triggered by buffer changes in replace_range, upcase-region,
2204         and upcase-initials-region clobber the match data needed to be
2205         adjusted for the replacement.  (Bug#23869)
2207 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
2209         Note combine-and-quote-strings doesn't shell quote
2211         * doc/lispref/processes.texi (Shell Arguments):
2212         * lisp/subr.el (combine-and-quote-strings): Add a note that
2213         combine-and-quote-strings doesn't protect arguments against shell
2214         evaluation (Bug #20333).
2216 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
2218         Explain when package-initialize isn't called
2220         * doc/lispref/os.texi (Startup Summary): Explain that package-initialize
2221         is not called when options -q, -Q, or --batch were passed (Bug #19151).
2223 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
2225         Fix escaping in sh-indent-after-continuation docstr
2227         * lisp/progmodes/sh-script.el (sh-indent-after-continuation): Properly
2228         escape backslashes in docstring (Bug#23046).
2230 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
2232         Clarify the documentation of back-references in replacements
2234         * doc/emacs/search.texi (Regexp Replace): Clarify that \D starts
2235         with \1, not \0.
2237         * lisp/replace.el (query-replace-regexp)
2238         (query-replace-regexp-eval, replace-regexp): Doc fix (Bug#23884)
2240 2016-07-01  Noam Postavsky  <npostavs@gmail.com>
2242         Clarify lexical binding with symbol args behavior
2244         * doc/lispref/variables.texi (Lexical Binding): Clarify that symbol
2245         arguments always refer to dynamic values (Bug #23781).  Remove mention
2246         of obsolete restriction regarding lexical binding for defun and
2247         defmacro, this no longer applies since 61b108cc 2012-05-29 "*
2248         lisp/emacs-lisp/byte-run.el (defmacro, defun): Move from C...".
2250 2016-06-30  Michael Albinus  <michael.albinus@gmx.de>
2252         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
2254 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
2256         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23865)
2258 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
2260         Avoid assertion violations when rendering some fonts
2262         * src/dispextern.h (FONT_TOO_HIGH): Don't consider a font "too
2263         high" if its pixel_size value is zero.  This avoids assertion
2264         violations at the end of x_produce_glyphs.
2266 2016-06-28  Noam Postavsky  <npostavs@gmail.com>
2268         Document more details of package activation
2270         * doc/emacs/package.texi (Package Installation): Explain that package
2271         activation adds to load-path (Bug #21704).
2273 2016-06-28  Noam Postavsky  <npostavs@gmail.com>
2275         Fixup warning message regarding HOME a bit more
2277         * src/w32.c (init_environment): The manual section title is "Windows
2278         HOME" (Bug #11612).  Move newline so warning fits in 80 character lines.
2280 2016-06-27  Eli Zaretskii  <eliz@gnu.org>
2282         * lisp/leim/quail/indian.el ("bengali-probhat"): Change indicator to BngPB.
2284 2016-06-27  Michael Albinus  <michael.albinus@gmx.de>
2286         Fix input method "probhat" for Bengali
2288         Author: উৎসব রায় <uroybd@gmail.com>
2290         * lisp/leim/quail/indian.el ("bengali-probhat"): Fix entry.
2292 2016-06-27  Noam Postavsky  <npostavs@gmail.com>
2294         Add to elisp-completion-at-point's docstring
2296         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Document
2297         position dependent behavior (Bug #19854).
2299 2016-06-27  Noam Postavsky  <npostavs@gmail.com>
2300             Eli Zaretskii  <eliz@gnu.org>
2302         Give more helpful warning about setting HOME
2304         * src/w32.c (init_environment): Improve warning message that pops when
2305         Emacs sets HOME according to existence of C:\.emacs (Bug #11612).
2307 2016-06-26  Eli Zaretskii  <eliz@gnu.org>
2309         Fix slow redisplay in term-mode
2311         * lisp/term.el (term-mode): Move the setting of
2312         bidi-paragraph-direction from 'ansi-term' to here, since term-mode
2313         is also affected.  Do not merge to master, since there the problem
2314         is solved in bidi.c by changing the regexps that delimit a
2315         paragraph.  (Bug#23801)
2317 2016-06-26  উৎসব রায়  <uroybd@gmail.com>
2319         New input method "probhat" for Bengali
2321         * lisp/leim/quail/indian.el ("probhat"): New input method.
2322         (Bug#23822)
2324         * etc/NEWS: Mention the new input method.
2326 2016-06-25  Noam Postavsky  <npostavs@gmail.com>
2327             Drew Adams  <drew.adams@oracle.com>
2329         Update docs for `customize-mode'
2331         * lisp/cus-edit.el (customize-mode): This function works with both major
2332         and minor modes, make docstring and prompt reflect that (Bug #23649).
2334         * doc/lispref/modes.texi (Derived Modes): Remove note about
2335         customize-mode being experimental; it has been around since Emacs
2336         22 (Bug #11299).
2338 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
2340         Fix documentation of 'assoc-string' and 'compare-strings'
2342         * src/minibuf.c (Fassoc_string): Clarify how CASE-FOLD affects the
2343         string comparison.  (Bug#23833)
2344         * src/fns.c (Fcompare_strings): Fix the description of how
2345         IGNORE-CASE affects the comparison.
2347         * doc/lispref/strings.texi (Text Comparison): Clarify how
2348         CASE-FOLD affects the string comparison in 'assoc-string'.  Fix
2349         the description of how IGNORE-CASE affects the comparison in
2350         'compare-strings'.
2352 2016-06-22  Dmitry Gutov  <dgutov@yandex.ru>
2354         Error on multibyte characters in HTTP request
2356         * lisp/url/url-http.el (url-http-create-request): Check the
2357         constructed request in the end to verify that it does not contain
2358         multibyte characters (bug#23750).
2360 2016-06-22  Katsumi Yamaoka  <yamaoka@jpl.org>
2362         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
2363         Mask keys that launch `widget-button-click' (bug#22157).
2365 2016-06-22  Dmitry Gutov  <dgutov@yandex.ru>
2367         Unset GIT_DIR when calling Git commands
2369         * lisp/vc/vc-git.el (vc-git--call, vc-git-command):
2370         Unset GIT_DIR (bug#23769).
2372 2016-06-21  Phillip Lord  <phillip.lord@russet.org.uk>
2374         Ensure undo-boundary after insert-file-contents.
2376         * src/fileio.c: Record undoable change during insert-file-contents.
2378         Addresses Bug #23785.
2380 2016-06-21  Eli Zaretskii  <eliz@gnu.org>
2382         Clarify documentation of 'line-spacing' and 'line-height'
2384         * doc/lispref/display.texi (Line Height): Clarify how the line
2385         height is determined via variables and text properties.  (Bug#23806)
2387 2016-06-20  Eli Zaretskii  <eliz@gnu.org>
2389         Fix removal of variables from process-environment
2391         * src/callproc.c (add_env): Fix comparison of a variable with a
2392         value against the same variable without a value.  (Bug#23779)
2394 2016-06-20  Glenn Morris  <rgm@gnu.org>
2396         * admin/authors.el (authors-ignored-files, authors-valid-file-names)
2397         (authors-renamed-files-alist): Additions.
2399         * admin/authors.el (authors-aliases, authors-fixed-case): Additions.
2401 2016-06-18  Noam Postavsky  <npostavs@gmail.com>
2403         Fix documentation of completion functions
2405         So that the described behavior matches the code (and docstrings).
2407         * doc/lispref/minibuf.texi (Basic Completion): Symbol keys of hash table
2408         collections are used like string keys, not ignored (Bug #10416).
2410 2016-06-18  Eli Zaretskii  <eliz@gnu.org>
2412         Clarify documentation of 'font-lock-maximum-decoration'
2414         * doc/emacs/display.texi (Font Lock): Explain how to make the
2415         customization of 'font-lock-maximum-decoration' effective for an
2416         existing buffer.  (Bug#23783)
2418 2016-06-17  Glenn Morris  <rgm@gnu.org>
2420         * doc/misc/cl.texi (Usage): Add some more details.
2422 2016-06-17  Noam Postavsky  <npostavs@gmail.com>
2424         Fbackward_prefix_chars: stay within buffer bounds
2426         The commit 1fd3172d "(Fbackward_prefix_chars): Set point properly while
2427         scanning" (1998-03-18), moved the check against of the position against the
2428         buffer beginning out the loop condition so that we might end up checking
2429         the syntax of characters before the beginning of the buffer.  This can
2430         cause segfaults or trigger a "Point before start of properties" error in
2431         `update_interval' (called indirectly from `char_quoted').
2433         * src/syntax.c (Fbackward_prefix_chars): Stop the loop when beginning of
2434         buffer is reached (Bug #3552, Bug #17132, Bug #19379).
2436 2016-06-16  Paul Eggert  <eggert@cs.ucla.edu>
2438         Fix ifdef-vs-if typo with RANDR13_LIBRARY
2440         * src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
2441         This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
2442         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00198.html
2444         (cherry picked from commit dce99f222f1ca33265cd56ddb157817be1dc078e)
2446 2016-06-16  Stephen Berman  <stephen.berman@gmx.net>
2448         Fix last todo-mode change
2450         * lisp/calendar/todo-mode.el (todo-read-category): Return the
2451         keymap in order to use its defined key bindings.
2453 2016-06-15  Stephen Berman  <stephen.berman@gmx.net>
2455         Improve last todo-mode fix
2457         * lisp/calendar/todo-mode.el (todo-read-category): Use
2458         set-keymap-parent instead of copy-keymap, and default (as
2459         previously) to the global binding (for rationale, see
2460         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00217.html).
2462 2016-06-14  Stephen Berman  <stephen.berman@gmx.net>
2464         Fix todo-mode use of minibuffer completion keymap (bug#23695).
2466         * lisp/calendar/todo-mode.el (todo-read-category): Don't
2467         override minibuffer-local-completion-map globally (bug#23695).
2468         Bind <SPC> key to self-insert-command.
2470 2016-06-14  Glenn Morris  <rgm@gnu.org>
2472         * src/alloc.c (ALIGN): Avoid error on DragonFly BSD.  (Bug#23764)
2474         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
2475         Avoid mangling autoloads with unspecified arguments.  (Bug#21299)
2477 2016-06-13  Glenn Morris  <rgm@gnu.org>
2479         * lisp/help-fns.el (describe-function-1): Avoid reporting advised
2480         autoloads as aliases.  (Bug#21299)
2482 2016-06-13  Stephen Berman  <stephen.berman@gmx.net>
2484         Minor grammar fix (bug#23746)
2486         * doc/lispref/processes.texi (Synchronous Processes):
2487         Another minor grammar fix (bug#23746).
2489 2016-06-13  Stephen Berman  <stephen.berman@gmx.net>
2491         Doc fixes for grammar and typos (bug#23746)
2493         * doc/emacs/files.texi (Customize Save):
2494         * doc/emacs/frames.texi (Window Dividers):
2495         * doc/emacs/misc.texi (Printing):
2496         * doc/lispref/compile.texi (Compiler Errors):
2497         * doc/lispref/keymaps.texi (Changing Key Bindings):
2498         * doc/lispref/loading.texi (Named Features):
2499         * doc/lispref/markers.texi (Marker Insertion Types):
2500         * doc/lispref/modes.texi (Mode Hooks):
2501         * doc/lispref/text.texi (Undo):
2502         * src/floatfns.c (Fldexp):
2503         * src/xfaces.c (syms_of_xfaces):
2504         Minor doc fixes for grammar and typos (bug#23746).
2506 2016-06-13  Eli Zaretskii  <eliz@gnu.org>
2508         * doc/lispref/processes.texi (Process Buffers): Minor rewording.  (Bug#23446)
2510 2016-06-13  Eli Zaretskii  <eliz@gnu.org>
2512         Add cross-reference to ELisp manual
2514         * doc/lispref/commands.texi (Classifying Events): Add
2515         cross-reference to "Motion Events".  (Bug#23756)
2517 2016-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
2519         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704)
2521         Don't rewrite (funcall 'f ...) to (f ...).
2523 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
2525         Restore initial undo boundary with viper
2527         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Add back last undo
2528           boundary if it has been removed.
2530         Addresses Bug#22295.
2532 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
2534         Revert "Fix viper undo breakage from undo-boundary changes"
2536         This reverts commit c0139e32f1f3bb287b04e02a69a7848d6a040003.
2538 2016-06-11  Ken Brown  <kbrown@cornell.edu>
2540         Fix dbus crash on 32-bit Cygwin
2542         * src/dbusbind.c (Fdbus__init_bus): Use make_save_pointer to store
2543         connection address.  (Bug#23741)
2544         (xd_lisp_dbus_to_dbus): Use XSAVE_POINTER to retrieve connection
2545         address.
2547 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
2549         Bump version to 25.0.95
2551         * README:
2552         * configure.ac:
2553         * lisp/ldefs-boot.el:
2554         * msdos/sed2v2.inp: Bump Emacs version to 25.0.95.
2556 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
2558         * etc/AUTHORS: Update the AUTHORS file
2560 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
2562         add entries to authors.el
2564         * admin/authors.el (authors-renamed-files-alist): Add char-fold files.
2566 2016-06-10  Jules Tamagnan  <jtamagnan@gmail.com>
2568         Fix eldoc-related freezes in python mode
2570         * lisp/progmodes/python.el (python-eldoc-get-doc): New defvar.
2571         (python-eldoc-function-timeout)
2572         (python-eldoc-function-timeout-permanent): New defcustoms.
2573         (python-eldoc-function): If python-eldoc--get-doc-at-point times
2574         out, effectively turn off ElDoc in current buffer.  (Bug#23609)
2576 2016-06-09  Martin Rudalics  <rudalics@gmx.at>
2578         Handle mouse leaving initial window in `mouse-set-region' (Bug#23707)
2580         * lisp/mouse.el (mouse-set-region): If the mouse ends up in
2581         another window or on the menu bar, use `window-point' of
2582         selected window instead of `posn-point' of the event end
2583         (Bug#23707).
2585 2016-06-08  Marco Wahl  <marcowahlsoft@gmail.com>
2587         org.el: Fix bindings of < and > for calendar scrolling
2589         [This patch taken from upstream Org repo with 8b63dc9 dated
2590         2014-10-20 (Bug#23725).]
2591         * lisp/org/org.el (org-read-date-minibuffer-local-map):
2592         Switch to the current calendar API for scrolling the calendar.
2594 2016-06-08  Phillip Lord  <phillip.lord@russet.org.uk>
2596         Fix undo boundary in recursive edit (Bug#23632)
2598          * src/keyboard.c (recursive_edit_1): specbind
2599            undo-auto--undoably-changed-buffers.
2600          * lisp/simple.el (undo-auto--undoably-changed-buffers):
2601            fix docstring.
2603 2016-06-07  Glenn Morris  <rgm@gnu.org>
2605         Doc fixes re alist-get.  (Bug#23548)
2607         * lisp/subr.el (alist-get): Doc fix.
2608         * doc/lispref/lists.texi (Association Lists): Improve alist-get.
2610 2016-06-07  Glenn Morris  <rgm@gnu.org>
2612         * lisp/progmodes/python.el (inferior-python-mode):
2613         Avoid tabs.  (Bug#23616)
2615         * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>: Doc fix.
2617 2016-06-07  Tino Calancha  <f92capac@gmail.com>
2619         * lisp/help-fns.el (describe-function-1):
2620         Fix handling of file name for aliases.  (Bug#21950)
2622         * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
2624         * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
2626 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
2628         Fix crash in syntax.c after GC
2630         Problem reported by Vincent Belaïche (Bug#23704).
2631         * src/syntax.c (skip_chars): Recompute pointers into the
2632         buffer after every call to update_syntax_table_forward,
2633         as it can GC.
2635 2016-06-06  Dmitry Gutov  <dgutov@yandex.ru>
2637         Improve squiggly heredoc support in non-SMIE Ruby mode
2639         * lisp/progmodes/ruby-mode.el (ruby-parse-partial): Support
2640         squiggly heredocs here, too (port from upstream).
2642 2016-06-06  Stephen Berman  <stephen.berman@gmx.net>
2644         Fix doc string quoting
2646         * lisp/files.el (shell-quote-wildcard-pattern):
2647         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
2648         * lisp/subr.el (replace-regexp-in-string):
2649         * lisp/view.el (view-mode):
2650         * src/nsfns.m (syms_of_nsfns):
2651         * src/syntax.c (Fbackward_prefix_chars):
2652         Fix quoting problems in doc strings (Bug#23696).
2654 2016-06-05  Martin Rudalics  <rudalics@gmx.at>
2656         Fix mouse dragging of vertical dividers with scroll bars on left (Bug#23690)
2658         * lisp/mouse.el (mouse-drag-line): With scroll bars on the left
2659         adjust trailing edge of window on the left when dragging the
2660         vertical divider of the mode line.  (Bug#23690)
2662 2016-06-04  Eli Zaretskii  <eliz@gnu.org>
2664         * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
2666         (Bug#23641)
2668 2016-05-31  Glenn Morris  <rgm@gnu.org>
2670         * test/automated/viper-tests.el (viper-test-undo-kmacro):
2671         Delete temp-file at end.
2673         * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
2675         * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
2677         * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table):
2678         Fix typo.  (Bug#23654)
2680 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
2682         * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-link (bug#22434)
2684 2016-05-30  Bill Wohler  <wohler@newt.com>
2686         Correct cl-flet usage (Bug#22317)
2688         * lisp/mh-e/mh-compat.el: Rename mh-cl-flet to mh-flet and convert alias to
2689         macro using patch from Katsumi Yamaoka <yamaoka@jpl.org>.
2690         * lisp/mh-e/mh-thread.el (mh-thread-set-tables):
2691         * lisp/mh-e/mh-show.el (mh-gnus-article-highlight-citation):
2692         * lisp/mh-e/mh-mime.el (mh-display-with-external-viewer):
2693         (mh-mime-display, mh-press-button, mh-push-button):
2694         (mh-display-emphasis): Call mh-flet instead of mh-cl-flet.
2696 2016-05-30  Bill Wohler  <wohler@newt.com>
2698         Release MH-E manual version 8.6
2700         * doc/misc/mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH):
2701         Update for release 8.6.
2703 2016-05-30  Mike Kupfer  <m.kupfer@acm.org>
2705         Update MH-E's documentation about HTML renderers
2707         * doc/misc/mh-e.texi (HTML): Remove the footnote with the minimum Gnus
2708         version (we are no longer trying to support multiple Emacs
2709         releases). Sort the table of HTML renderers by name (the previous
2710         ordering was based on a 10-year-old survey). Add shr and gnus-w3m to
2711         the table. Remove the entry for w3 (no longer available).  Update
2712         existing entries so that they are more consistent about what features
2713         are discussed, and to reflect recent testing (Debian 8). Small tweaks
2714         to existing text.
2716 2016-05-30  Dmitry Gutov  <dgutov@yandex.ru>
2718         Fx the we->the typo
2720         * doc/emacs/trouble.texi (Sending Patches):
2721         Fix the typo (bug#23657).
2723 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
2725         Restore frames into the current display by default
2727         * lisp/desktop.el (desktop-restore-in-current-display):
2728         Default to t, not nil (Bug#23604).
2729         * etc/NEWS: Mention the change.
2731 2016-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2733         * lisp/recentf.el (recentf-open-files-item): Quick fix for (bug#22434).
2735         etc/TODO: Remove out-of-place issue
2737 2016-05-29  Eli Zaretskii  <eliz@gnu.org>
2739         Clarify doc string of 'file-name-sans-extension'
2741         * lisp/files.el (file-name-sans-extension, file-name-extension):
2742         Clarify in the doc strings what is the extension, and which
2743         leading period doesn't count.  (Bug#23643)
2745 2016-05-28  Eli Zaretskii  <eliz@gnu.org>
2747         Fix the MSDOS build
2749         * msdos/sed1v2.inp (PAXCTL_dumped, PAXCTL_notdumped): Define to
2750         empty, and remove the lines which use them in recipes, as that
2751         causes weird error message from Make and breaks the MSDOS build.
2753 2016-05-28  Andreas Schwab  <schwab@linux-m68k.org>
2755         * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Call
2756         substitute-command-keys to undo help--docstring-quote. (Bug#23634)
2758 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
2760         * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23631)
2762 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
2764         Fix infloop in 'number-sequence'
2766         * lisp/subr.el (number-sequence): Avoid overflow leading to an
2767         infloop.  (Bug#23627)
2769         * test/automated/subr-tests.el (number-sequence-test): New test.
2771 2016-05-26  Glenn Morris  <rgm@gnu.org>
2773         * lisp/emacs-lisp/find-func.el (find-function-library):
2775         Update for symbol-function no longer erroring.  (Bug#23626)
2777 2016-05-26  Glenn Morris  <rgm@gnu.org>
2779         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
2780         (w32-get-valid-locale-ids): Improve declarations.
2782 2016-05-26  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2784         Correct old cell name unbinding when renaming cell.
2786         Bug is to unbind old cell names when renaming a cell with
2787         'makunbound'. when the old cell name is of A1 type, then
2788         'kill-local-variable' must be used instead, so that only the current
2789         spreadsheet is affected. When the old cell name is a renamed cell,
2790         then 'ses--unbind-cell-name' must be used in order to remove the old
2791         name from the name hashmap.
2793         * lisp/ses.el (ses-rename-cell): check consistency of cell symbol from
2794         text-property and from array object. Instead of 'makunbound', use
2795         either 'ses--unbind-cell-name' or 'kill-local-variable' depending on
2796         whether the cell old name is a named cell or an A1 type cell
2798 2016-05-25  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2800         Document problem: slow screen refresh on missing font.
2802         See discussion of bug#22519 for more on this.
2804 2016-05-25  Glenn Morris  <rgm@gnu.org>
2806         * admin/admin.el (add-release-logs): Basic check of existing ChangeLog.
2808 2016-05-25  Glenn Morris  <rgm@gnu.org>
2810         * build-aux/gitlog-to-emacslog: Handle empty generated ChangeLog.
2812         This is relevant for M-x add-release-logs right after M-x authors.
2814 2016-05-25  Glenn Morris  <rgm@gnu.org>
2816         * admin/admin.el (add-release-logs): Generate ChangeLog if needed.
2818 2016-05-25  Paul Eggert  <eggert@cs.ucla.edu>
2820         * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
2822 2016-05-25  Glenn Morris  <rgm@gnu.org>
2824         * admin/authors.el (authors): First update the ChangeLog.
2826         * admin/make-tarball.txt: Related updates.
2828 2016-05-24  Dmitry Gutov  <dgutov@yandex.ru>
2830         Rename vc-stay-local back to vc-cvs-stay-local
2832         * lisp/vc/vc-cvs.el (vc-cvs-stay-local): Rename back from
2833         vc-stay-local (bug#19548).  Improve the docstring.
2834         (vc-cvs-stay-local-p): Update accordingly.
2836 2016-05-24  Glenn Morris  <rgm@gnu.org>
2838         * doc/emacs/files.texi (Comparing Files):
2839         * doc/emacs/trouble.texi (Sending Patches): Fix external xrefs.
2841         * doc/misc/eww.texi (Advanced): Fix xref.
2843 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
2845         Fix cross-references between manuals
2847         * doc/misc/viper.texi (Viper Specials):
2848         * doc/misc/url.texi (Tramp):
2849         * doc/misc/sem-user.texi (Smart Jump):
2850         * doc/lispintro/emacs-lisp-intro.texi (Finding More):
2851         * doc/misc/efaq.texi (Replacing text across multiple files): Fix
2852         cross-references between manuals.  (Bug#23612)
2853         * doc/lispintro/emacs-lisp-intro.texi (etags): Node deleted: no
2854         longer relevant to Emacs Lisp programming.
2856 2016-05-24  Glenn Morris  <rgm@gnu.org>
2858         * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to avoid ".".
2860         * admin/admin.el (add-release-logs): Also update etc/HISTORY.
2862 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
2864         Avoid aborting due to errors in arguments of 'set-face-attribute'
2866         * src/xfaces.c (Finternal_set_lisp_face_attribute): Check the
2867         FRAME argument before using it.  This avoids gratuitous aborts in
2868         Emacs built with --enable-checking when the luser was unlucky
2869         enough to get the argument list in wrong order.
2871 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
2873         Add automated test for viper-tests.el
2875 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
2877         Fix viper undo breakage from undo-boundary changes
2879         * lisp/simple.el (undo-auto-disable-boundaries): New variable
2880         * lisp/emulation/viper-init.el (viper-undo-in-complex-command,
2881           viper-undo-needs-adjustment): Rename
2882           variable to reflect new purpose,
2883           (viper-buffer-undo-list-mark): Remove
2884         * lisp/emulation/viper-cmd.el (viper-set-complex-command-for-undo):
2885           Add undo using `undo-boundary', disable default undo-boundary
2886           addition.
2887         * lisp/emulation/viper-cmd.el
2888           (viper-complete-complex-command-for-undo,viper-adjust-undo):
2889           Change function name, remove old undo list manipulation.
2890         * lisp/emulation/viper-cmd.el (viper-undo,viper-repeat,
2891           viper-change-state-to-vi,viper-change-state):
2892           Update for function name change.
2894         Addresses Bug #22295
2896 2016-05-22  Kaushal Modi  <kaushal.modi@gmail.com>
2898         Fix reference to obsolete fn ps-eval-switch
2900         lpr-eval-switch is functionally the same as ps-eval-switch,
2901         which was obsoleted in 2cdeb903c57126d3ad5f0cbd72e182584b76ee29.
2902         So use that instead (Bug#19717).
2903         * lisp/printing.el (pr-switches): Use lpr-eval-switch instead of
2904         ps-eval-switch.
2906 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
2908         Do not trash symlinks to init file
2910         If the user’s init file is a symbolic link, do not break the link
2911         when initializing the package system.  Problem reported by Jackson
2912         Hamilton (Bug#23050).
2913         * lisp/emacs-lisp/package.el (package--ensure-init-file):
2914         Bind find-file-visit-truename when visiting the init file, and
2915         save and restore the buffer name the way cus-edit does in a
2916         similar situation (Bug#454).
2918 2016-05-22  Alan Mackenzie  <acm@muc.de>
2920         Don't print the "decomposition" line for control chars in what-cursor-position
2922         This is a temporary workaround for bug #23594, where the decomposition line
2923         for linefeed corrupted the display on a Linux virtual terminal.
2925         * lisp/descr-text.el (describe-char): Remove `decomposition' from the list of
2926         character code properties printed for control characters.
2928 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
2930         Bring back xterm pasting with middle mouse
2932         Problem reported by Jan Synáček.
2933         Solution suggested by Stefan Monnier (Bug#23519).
2934         * lisp/isearch.el (isearch-mode-map): Add a binding for xterm-paste.
2935         (xterm--pasted-text): New decl.
2936         (isearch-xterm-paste): New function.
2937         * lisp/term/xterm.el (xterm--pasted-text): New function,
2938         taken from xterm-paste internals.
2939         (xterm-paste): Use it.
2941 2016-05-22  Eli Zaretskii  <eliz@gnu.org>
2943         Provide workaround for xftfont rendering problem
2945         * src/xftfont.c (syms_of_xftfont) <xft-font-ascent-descent-override>:
2946         New variable.
2947         (xftfont_open): Use it to work around problems with rendering some
2948         fonts.  (Bug#23360)
2950 2016-05-21  Jun Hao  <jun_hao@aol.com>
2952         * lisp/desktop.el: Disable restore frameset if in non-graphic display.
2954         (Bug#17693)
2956 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
2958         Mention GTK+ problems in etc/PROBLEMS
2960         * etc/PROBLEMS (GDK_SCALE, GDK_DPI_SCALE): Mention the possible
2961         problems this could create and the workaround.  (Bug#23587)
2963 2016-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
2965         * lisp/emacs-lisp/package.el (package-refresh-contents):
2967         Don't change the value of `package-check-signature'.
2968         (package-check-signature): Use `epg-find-configuration'
2969         instead of `executable-find'.
2971 2016-05-20  Daiki Ueno  <ueno@gnu.org>
2973         Revert "epg: Add a way to detect gpg1 executable for tests"
2975         This reverts commit d4ae6d7033b34e8b75c59aaf1584131e439ef2d5.
2977 2016-05-19  Eli Zaretskii  <eliz@gnu.org>
2979         Avoid errors with Czech and Slovak input methods
2981         * lisp/leim/quail/slovak.el (slovak, slovak-prog-1, slovak-prog-2)
2982         (slovak-prog-3): Remove the kp-* key bindings, they are not needed
2983         and cause errors in "C-u C-x =".
2984         * lisp/leim/quail/czech.el (czech, czech-qwerty, czech-prog-1)
2985         (czech-prog-2, czech-prog-3): Remove the kp-* key bindings.
2986         (Bug#23559)
2988 2016-05-19  Daiki Ueno  <ueno@gnu.org>
2990         epg: Add a way to detect gpg1 executable for tests
2992         Fixes bug#23561.
2994         * test/automated/epg-tests.el
2995         (epg-tests-program-alist-for-passphrase-callback): New
2996         constant.
2997         (epg-tests-find-usable-gpg-configuration): New function,
2998         renamed from `epg-tests-gpg-usable'.  All callers changed.
2999         (epg-tests-gpg-usable): Remove.
3001         * lisp/epg-config.el (epg-config--program-alist): Factor out
3002         constructor element to...
3003         (epg-config--configuration-constructor-alist): ...here.
3004         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
3005         and add PROGRAM-ALIST argument.
3007 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
3009         * lisp/emacs-lisp/package.el: Fix free variable warnings.
3011         (package--with-response-buffer): Replace two usages of
3012         `macroexp-let2*' with `let'.
3014 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
3016         * lisp/emacs-lisp/package.el (package--with-response-buffer):
3018         Fix some macro locals leaking into body.  (Bug#22440)
3020         * test/automated/package-test.el (package-test-signed):
3021         Manually check all possible values of `package-check-signature'.
3023 2016-05-18  Eli Zaretskii  <eliz@gnu.org>
3025         Improve documentation of 'server-name'
3027         * doc/emacs/misc.texi (Emacs Server): Fix example of setting
3028         'server-name'.  Mention how to do that with daemon sessions.
3029         (Bug#23576)
3031 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
3033         Modernize ASLR advice in etc/PROBLEMS
3035         * etc/PROBLEMS (Segfault during 'make'): Modernize advice for
3036         seccomp, Docker, and NetBSD (Bug#23529).
3038 2016-05-17  Juri Linkov  <juri@linkov.net>
3040         * lisp/char-fold.el: Rename from character-fold.el.
3042         * lisp/replace.el (replace-char-fold): Rename from replace-character-fold.
3043         * test/automated/char-fold-tests.el: Rename from character-fold-tests.el.
3044         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00529.html
3046 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
3048         Bump version to 25.0.94
3050         * README:
3051         * configure.ac:
3052         * msdos/sed2v2.inp: Bump Emacs version to 25.0.94.
3054 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
3056         etc/AUTHORS: Update the AUTHORS file
3058 2016-05-16  Alan Third  <alan@idiocy.org>
3060         Fix bug#23462: Crash when iconifying frame on OS X.
3062         * src/nsterm.m (x_iconify_frame): Block input while miniaturize is
3063         running.
3065 2016-05-16  Paul Eggert  <eggert@cs.ucla.edu>
3067         Avoid shrinking windows with Gtk+ 3.20.3
3069         Problem reported by Matthias Clasen (Bug#23144).
3070         This was fixed in a different way in master.
3071         Do not merge to master.
3072         * src/xterm.c (handle_one_xevent) [GTK_CHECK_VERSION (3, 20, 3)]:
3073         Do not call xg_frame_resized in the MapNotify case.
3075 2016-05-16  Eli Zaretskii  <eliz@gnu.org>
3077         Fix bug in default setting of 'ps-paper-type'
3079         * lisp/international/mule-cmds.el (set-locale-environment): Don't
3080         inherit the value of locale from previous examination of different
3081         environment variables, which didn't look at LC_PAPER, and so using
3082         that value would effectively ignore the setting of LC_PAPER.
3083         (Bug#23544)
3085 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
3087         Properly reject malformed or empty package sigs
3089         Problem report and fix by Lizzie Dixon (Bug#23513).
3090         * lisp/emacs-lisp/package.el (package--check-signature-content):
3091         Report an error if no good signatures OR if a fatal error.  Not AND.
3093 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
3095         Remove buggy non-native image scrolling
3097         This never worked, and could cause infinite recursion.
3098         Problem reported by Glenn Morris (Bug#22465).
3099         * lisp/xwidget.el (xwidget-webkit-scroll-behavior): Remove.
3100         All uses removed.
3102 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
3104         * doc/misc/texinfo.tex: Sync from gnulib.
3106 2016-05-12  Glenn Morris  <rgm@gnu.org>
3108         * lisp/emacs-lisp/find-func.el (find-feature-regexp)
3109         (find-alias-regexp): Fix :version.
3111 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3113         Do not mistake colon at the end of regexp for slash symbol
3115         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
3116         Check the parse state in the "Symbols with special characters"
3117         rule (bug#23515).
3119 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3121         Make package-install-from-buffer not move point
3123         * lisp/emacs-lisp/package.el (package-install-from-buffer):
3124         Use save-excursion here (bug#22616).
3126 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3128         Redo the fix for bug#21839
3130         * lisp/help.el (help-add-fundoc-usage): Undo the previous change.
3131         (help--make-usage-docstring): Escape newlines when printing.
3133         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
3134         Ditto (bug#21839).
3136 2016-05-10  Dmitry Gutov  <dgutov@yandex.ru>
3138         Don't treat JS spread as contination method call
3140         * lisp/progmodes/js.el (js--indent-operator-re):
3141         Allow only one dot (bug#23492).
3143         * test/indent/js.js (default): Add a corresponding example.
3145 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
3147         Allow newlines inside cl function arglists
3149         * lisp/help.el (help-add-fundoc-usage): Allow newlines inside
3150         ARGLIST (bug#21839).
3152 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
3154         Publicize cl--generic-all-functions
3156         * lisp/emacs-lisp/cl-generic.el (cl-generic-all-functions):
3157         Rename from cl--generic-all-functions.  Update both callers.
3159         * lisp/cedet/semantic/db-el.el
3160         (semanticdb-find-tags-external-children-of-type-method):
3161         And use it here (bug#23042).
3163 2016-05-09  Alan Mackenzie  <acm@muc.de>
3165         Add some "safe-local-variable" declarations for compatibility with master.
3167         These enable C files from the master repository to be visited in Emacs 25
3168         without generating irritating questions about configuration variable safety.
3170         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
3171         functions.
3172         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
3173         safe-local-variable property c-string-list-p.
3174         (c-macro-names-with-semicolon): give the safe-local-variable property
3175         c-string-or-string-list-p.
3177 2016-05-09  Lars Ingebrigtsen  <larsi@gnus.org>
3179         Fix doc string in `insert'
3181         * src/editfns.c (Finsert_and_inherit): The before-insertion
3182         markers do not move.
3183         (Finsert): Ditto.
3185 2016-05-08  Paul Eggert  <eggert@cs.ucla.edu>
3187         * doc/misc/emacs-mime.texi (time-date): Document now-builtins better.
3189 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
3191         Say 'All results processed' at the end
3193         * lisp/progmodes/xref.el (xref--query-replace-1):
3194         Say 'All results processed' at the end if the user hadn't
3195         cancelled the process (bug#23284).
3197 2016-05-07  Eli Zaretskii  <eliz@gnu.org>
3199         Document automatic adjustment of process' logical window dimensions
3201         * doc/lispref/processes.texi (Process Buffers): Document
3202         'set-process-window-size' and
3203         'window-adjust-process-window-size-function'.
3205         * etc/NEWS: Mention the new functionality and variable.
3207         * src/process.c (Fset_process_window_size): Improve the doc string.
3209 2016-05-06  Michael Albinus  <michael.albinus@gmx.de>
3211         tramp-sh.el: Work around a stat bug (backport from master)
3213         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
3214         stat versions which produce shell quoted output.  See also
3215         coreutils Bug#23422.
3217         (cherry picked from commit 6aad36ace9953b9672b13be68416d205532d5e59)
3219 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
3221         Doc fixes for fclist and grep
3223         A newline is needed between two fc-list calls.
3224         egrep and fgrep have been withdrawn from POSIX,
3225         so document grep -E and grep -F instead.
3227 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
3229         Minor doc fixes for quoting
3231         * doc/lispref/control.texi (Signaling Errors):
3232         * doc/lispref/display.texi (Displaying Messages):
3233         Don’t say that formats “generate”.  Try to word more clearly.
3234         * etc/NEWS: Coalesce near-duplicate entries.
3236 2016-05-05  Dmitry Gutov  <dgutov@yandex.ru>
3238         `nreverse' the marker pairs list
3240         * lisp/progmodes/xref.el (xref--buf-pairs-iterator): `nreverse'
3241         the marker pairs list for each buffer before returning.
3243 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
3245         Use save-excursion in xref-location-marker more
3247         * lisp/progmodes/elisp-mode.el (xref-location-marker): Use
3248         save-excursion, in order not to alter the value of point if the
3249         buffer is currently open in the background (problem reported by
3250         Robert Weiner).
3252         * lisp/progmodes/etags.el (xref-location-marker): Same.
3254 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
3256         shell-quote-argument DIR when appropriate
3258         * lisp/progmodes/project.el (project-file-completion-table):
3259         `shell-quote-argument' DIR as well.
3261         * lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
3262         `shell-quote-argument' (bug#23453).  Thanks for Kaushal Modi for
3263         pointing out the problem.  Assert that DIR doesn't start with `~'.
3265 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
3267         Rework xref-query-replace-in-results
3269         * lisp/progmodes/xref.el (xref-query-replace-in-results): Collect
3270         all xrefs from the buffer first, then delegate most of the
3271         processing to the value returned by xref--buf-pairs-iterator.
3272         (xref--buf-pairs-iterator): New function.  Return an "iterator"
3273         which partitions returned markers into buffers, and only processes
3274         markers from one buffer at a time.  When an xref is out of date,
3275         skip it with a message instead of signaling error (bug#23284).
3276         (xref--outdated-p): Extract from xref--buf-pairs-iterator.  Trim
3277         CR from both strings before comparing.
3278         (xref--query-replace-1): Remove the variable current-buf, no need
3279         to track it anymore.  Simplify the filter-predicate and search
3280         functions accordingly.  Iterate over buffer-markers pairs returned
3281         by the iterator, and call `perform-replace' for each of them.  Use
3282         multi-query-replace-map (bug#23284).  Use `switch-to-buffer' every
3283         time after the first, in order not to jump between windows.
3285         * test/automated/xref-tests.el
3286         (xref--buf-pairs-iterator-groups-markers-by-buffers-1)
3287         (xref--buf-pairs-iterator-groups-markers-by-buffers-2)
3288         (xref--buf-pairs-iterator-cleans-up-markers): New tests.
3290 2016-05-04  Juri Linkov  <juri@linkov.net>
3292         * lisp/replace.el (query-replace-read-from): Use minibuffer-with-setup-hook
3294         to set minibuffer-local value of text-property-default-nonsticky.
3295         (Bug#23418, bug#23127)
3297 2016-05-04  Stephen Berman  <stephen.berman@gmx.net>
3299         Fix todo-mode bug involving archived items (bug#23447)
3301         * lisp/calendar/todo-mode.el (todo-jump-to-category): When jumping
3302         from Todo Categories mode to a category with only archived items
3303         and todo-skip-archived-categories is non-nil, make sure the
3304         archive file buffer is in Todo Archive mode to prevent
3305         todo-category-select from raising an error, and don't set
3306         todo-current-todo-file, since that makes todo-show display the
3307         archived category.  Remove a no-op call to kill-buffer, which is
3308         already called in todo-insert-category-line.
3310 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
3312         Handle "empty line" regexp in xref searches
3314         * lisp/progmodes/xref.el (xref--collect-matches-1): Stop after one
3315         match if re-search-forward doesn't move point (bug#23426).
3317         * test/automated/xref-tests.el
3318         (xref-collect-matches-finds-an-empty-line-regexp-match):
3319         Uncomment test.
3321 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
3323         Add tests for xref-collect-matches
3325         * test/automated/xref-tests.el: New file.  Add tests for
3326         xref-collect-matches.
3328 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
3330         Use grep-find-ignored-directories instead of vc-directory-exclusion-list
3332         * lisp/dired-aux.el (dired-do-find-regexp):
3333         Use grep-find-ignored-directories instead of
3334         vc-directory-exclusion-list.  The result should be functionally
3335         similar (the former uses the latter as the default value), but it
3336         should be more consistent and appropriate WRT user
3337         customizations.
3338         (dired-do-find-regexp-and-replace): Update the docstring.
3340         * lisp/dired.el: Update the corresponding autoloads.
3342         * doc/emacs/dired.texi (Operating on Files): Update the
3343         documentation accordingly.
3345 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
3347         Clear buffer-undo-list when showing xrefs
3349         * lisp/progmodes/xref.el (xref--show-xref-buffer): Clear
3350         buffer-undo-list and temporarily bind it to t while rendering the
3351         buffer contents.
3353 2016-05-03  Alan Mackenzie  <acm@muc.de>
3355         Note the quote translation in `message' in section "incompatible changes".
3357         * etc/NEWS: Note that `message' translates quotes, that the translation
3358         cannot be disabled, and that `format' can be used to get the old
3359         behavior back.
3361 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
3363         * etc/NEWS: Mention (message "%s" (format ...)).
3365 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
3367         (Common Keywords): Correct what missing :group means
3369         * doc/lispref/customize.texi (Common Keywords): Correct what
3370         missing :group means.
3372 2016-05-03  Eli Zaretskii  <eliz@gnu.org>
3374         Improve documentation of Dired's 'A' and 'Q' commands
3376         * lisp/dired-aux.el (dired-do-find-regexp)
3377         (dired-do-find-regexp-and-replace): Mention
3378         'grep-find-ignored-files' and 'vc-directory-exclusion-list', and
3379         also the fact that REGEXP should be palatable by Grep.  (Bug#23426)
3380         * lisp/dired.el: Update the corresponding autoload forms.
3382         * doc/emacs/dired.texi (Operating on Files): Mention
3383         'grep-find-ignored-files' and 'vc-directory-exclusion-list'.
3384         (Bug#23429)
3386 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
3388         Doc fixes for quoting
3390         * doc/emacs/text.texi, doc/lispintro/emacs-lisp-intro.texi:
3391         * doc/lispref/control.texi, doc/lispref/display.texi:
3392         * doc/lispref/help.texi, doc/lispref/strings.texi, lisp/subr.el:
3393         * src/callint.c, src/doprnt.c, src/editfns.c:
3394         Document quoting a bit more systematically.
3395         Problem reported by Alan Mackenzie (Bug#23425).
3397 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
3399         posnp doc clarification
3401         * lisp/subr.el (posnp): Mention that a posn object is returned
3402         from `event-start' (bug#18211).
3404 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
3406         Mention what a missing :group does
3408         * doc/lispref/customize.texi (Common Keywords): Document that
3409         a missing :group reuses the group from the preceding item (bug#21601).
3411 2016-05-02  Eli Zaretskii  <eliz@gnu.org>
3413         Fix documentation of dired-aux search/replace commands
3415         * lisp/dired-aux.el (dired-do-find-regexp)
3416         (dired-do-find-regexp-and-replace): Doc fixes.  (Bug#23429)
3417         * lisp/dired.el: Update the corresponding autoload forms.
3419 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
3421         Fix quoting problem in cc-engine debug message
3423         * lisp/progmodes/cc-engine.el (c-replay-parse-state-state):
3424         Use "%s" format to pass through ‘'’ unscathed (Bug#23425), and
3425         likewise for ‘`’, and ‘%’.
3427 2016-05-02  Philipp Stephani  <phst@google.com>
3429         Add electric-quote-string unit test
3431         * test/automated/electric-tests.el (electric-quote-string): New test.
3433 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
3435         Don’t electrically quote ‘'’ in Python
3437         Problem reported by Philipp Stephani (Bug#23387).
3438         * lisp/electric.el (electric-quote-post-self-insert-function):
3439         Do not requote a string starter or ender.
3441 2016-05-02  Dmitry Gutov  <dgutov@yandex.ru>
3443         `nreverse' Grep hits before passing them to xref--convert-hits
3445         * lisp/progmodes/xref.el (xref-collect-matches): `nreverse' hits
3446         before passing them to xref--convert-hits.  Fixes a regression
3447         from cc0b7132.
3449 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
3451         * doc/misc/texinfo.tex: Sync from gnulib.
3453 2016-05-01  Juri Linkov  <juri@linkov.net>
3455         * lisp/isearch.el (isearch-forward-symbol-at-point): Add isearch-push-state.
3457         (Bug#23410)
3459 2016-05-01  Michael Albinus  <michael.albinus@gmx.de>
3461         tramp.texi: Revert last change due to backward compatibility
3463         (cherry picked from commit 910f9a0a936aacbffe9b9b790d7f698dfd287aac)
3465 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3467         cua-prefix-override-inhibit-delay doc fix
3469         * lisp/emulation/cua-base.el
3470         (cua-prefix-override-inhibit-delay): Typo fix in doc string
3471         (bug#23401).
3473         (cherry picked from commit 2b4c099822811ede787fc6e575bfbb17b3cc0681)
3475 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3477         global-eldoc-mode doc fix
3479         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
3480         specific about what "applicable" means (bug#23071).
3482         (cherry picked from commit 25e95b5dd8cd92e03788e589bf99a4b399f03114)
3484 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3486         normal-top-level-add-subdirs-to-load-path doc fix
3488         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
3489         Doc fix (bug#21962).
3491         (cherry picked from commit 28aaa6d20586e3330a23b017a65e56dd6461c003)
3493 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3495         isearch-search-fun-function doc tweak
3497         * lisp/isearch.el (isearch-search-fun-function): Mention what
3498         the STRING parameter is (bug#21552).
3500         (cherry picked from commit cafc2a5940cdc523cfea6dcf1cf540f48367c62a)
3502 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3504         Fill some imenu--index-alist doc lines
3506         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
3508         (cherry picked from commit 4b7bb8f596550628eaa83b82c0f7eabe59a84964)
3510 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3512         Fmarker_position doc string clarification
3514         * src/marker.c (Fmarker_position): Clarify the doc string
3515         (bug#21231).
3517         (cherry picked from commit eeac7c57273cec3f9408b18392dd2bafe3be4450)
3519 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3521         Further define-obsolete-* doc fixups
3523         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
3524         Fix up last change.
3525         (define-obsolete-variable-alias): Ditto.
3527         (cherry picked from commit 28e9f4390d8391c2c36be4ef515cf3a2c679a5a5)
3529 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3531         Describe WHEN in all the define-obsolete- macros
3533         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
3534         Say more verbosely what WHEN is (bug#21225).
3535         (define-obsolete-function-alias): Describe the WHEN parameter.
3536         (define-obsolete-variable-alias): Ditto.
3538         (cherry picked from commit 247c388f160581d207e41ca5926990bbf69d4a0f)
3540 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3542         Mention with-silent-modifications in the lispref manual
3544         * doc/lispref/text.texi (Changing Properties): Document
3545         with-silent-modifications (bug#21171).
3547         (cherry picked from commit fcd0d854eef6e439d51e8f07cf734d5e34e502b3)
3549 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3551         with-silent-modifications doc clarification
3553         * lisp/subr.el (with-silent-modifications): Rearrange the doc
3554         string a bit so that the most pertinent information is at the
3555         top (bug#21171).
3557         (cherry picked from commit e0e70f030e69d9696a963a86f5f7caaff4df06eb)
3559 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3561         clear-visited-file-modtime doc string fix
3563         * lisp/files.el (clear-visited-file-modtime): Fix possibly
3564         confusing doc string wording (bug#21169).
3566         (cherry picked from commit 1aaeaf1450756a71c9254a2a5b174c72084ca67a)
3568 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3570         Document mode mode line variables
3572         * doc/lispref/modes.texi (Mode Line Variables): Document
3573         `mode-line-front-space, `mode-line-misc-info',
3574         `mode-line-end-spaces' (bug#21014).
3576         (cherry picked from commit bf7a630b0a5d3900f2afb0e7a881ce62e2b9f935)
3578 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3580         Add a cross ref to Optional Mode Line
3582         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
3583         reference to the Emacs mode line node that explains things
3584         like `display-time-string' (bug#21002).
3586         (cherry picked from commit a3151a28789f413af73b14fbba557b2a587fca53)
3588 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3590         Add a doc string to display-time-string
3592         * lisp/time.el: Add a doc string to `display-time-string',
3593         because it's referred to in the manual, and is too mysterious
3594         otherwise (bug#21002).
3596         (cherry picked from commit 45559c584e5a4ddeed1539b028b50b95baa372f8)
3598 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3600         custom-buffer-style doc fix
3602         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
3603         value (bug#20724).
3605         (cherry picked from commit bcf0291d0cd02095b0809b1eb91f1e5c5c2ac5e3)
3607 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3609         Rearrange the doc of query-replace slightly
3611         * lisp/replace.el (query-replace): Move the mention of the
3612         interactive prefix arg earlier so that users can find it
3613         (bug#20654).
3615         (cherry picked from commit bcc10761c3b968fa4534718116a0a601ed7da389)
3617 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3619         apropos-print doc fix
3621         * lisp/apropos.el (apropos-print): Document the undocumented
3622         parameters (bug#20520).
3624         (cherry picked from commit 0714d7387812a151f59993ac77c7321724ef79b1)
3626 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3628         completion-table-with-predicate doc string fix
3630         * lisp/minibuffer.el (completion-table-with-predicate): t ->
3631         non-nil in the doc string (bug#20460).
3633         (cherry picked from commit b6a4d162208f239bc7804696d611ae52c686f138)
3635 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3637         Fill the completion-table-with-predicate doc string
3639         * lisp/minibuffer.el (completion-table-with-predicate): Fill
3640         the doc string (bug#20460).
3642         (cherry picked from commit 207a31432c1ed8b548003a3e4af32c49aa3441e9)
3644 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3646         replace-match-maybe-edit doc clarification
3648         * lisp/replace.el (replace-match-maybe-edit): Say what
3649         MATCH-DATA is (bug#20304).
3651         (cherry picked from commit 139874ba53c2e2de9868f8e5234d6ea2bcb97af8)
3653 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3655         add-timeout doc fix
3657         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
3658         value (bug#20181).
3660         (cherry picked from commit 921b40476f597c84d7c34aa289cd43caeb389c4a)
3662 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3664         Extremely minor doc fix in Choosing Window
3666         * doc/lispref/windows.texi (Choosing Window): There's only one
3667         action alist, I think (bug#20158).
3669         (cherry picked from commit 6c7e7f421d02d9290d6d1d85320737371160aef7)
3671 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3673         Transform mentions of `eval-after-load' to `with-eval-after-load'
3675         * doc/lispref/loading.texi (Hooks for Loading): Update text to
3676         not mention `eval-after-load' (bug#20038).
3678         (cherry picked from commit 9392193be56eebdfac702a0bbb5e954088371c7a)
3680 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3682         cursor-type doc fix
3684         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
3685         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
3687         (cherry picked from commit 77c5f4554ebb3b7c7d49bc881e45a550f6c93987)
3689 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3691         Add a link from Tool Bar to Images
3693         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
3694         Images node (bug#19722).
3696         (cherry picked from commit da5d0786163a91400eced4fddba4a92b652458d1)
3698 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3700         (default-mode-line-format): More explicit obsolete info
3702         * lisp/subr.el (default-mode-line-format): Be more explicit in
3703         how default values are now handled (bug#19424).
3705         (cherry picked from commit 9dc5f6d830e72420dc4d41c8f6ca1ca6b28609c0)
3707 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3709         Fcompare_buffer_substrings doc string clarification
3711         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
3712         doc string clarification (bug#19255).
3714         (cherry picked from commit aa692acbb598a1cc8219ed7a87dde25fd7626ba5)
3716 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3718         insert-file-contents-literally doc fix
3720         * lisp/files.el (insert-file-contents-literally): Say that the
3721         parameters are explained in the other function (bug#18317).
3723         (cherry picked from commit b6481b19bc9592492b1f70dfecb4de6256f537fe)
3725 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3727         Fix custom types for cursor-in-non-selected-windows
3729         * lisp/cus-start.el (standard): Use the same custom types for
3730         cursor-in-non-selected-windows as for cursor-type (bug#19214).
3732         (cherry picked from commit b66bc0cced786e0320e1c3b0758bd3c434d4e8b5)
3734 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3736         Doc clarification to mwheel-scroll
3738         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
3739         does not apply to Windows (bug#19209).
3741         (cherry picked from commit 696052b5fdfbc5c25dff3c6b081aebe70f6d06c7)
3743 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3745         Clarify the doc of eval-expression-print-format
3747         * lisp/simple.el (eval-expression-print-format): Doc
3748         clarification (bug#19114).
3750         (cherry picked from commit cd193a871f5a8e1c81ba86fc398ac382fa814383)
3752 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3754         Explictly explain that package-initialize loads the packages
3756         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
3757         in saying that `package-initialize' obviates adjusting the
3758         path or requiring the packages, as this is a question that
3759         apparently comes up now and then (bug#18829).
3761         (cherry picked from commit 619e0aedb2f3dbfe6821ac34e2d25b4e5c181117)
3763 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3765         Have the doc strings of `load-path' and `require' mention each other
3767         * src/fns.c (Frequire): Mention `load-path' and fill the doc
3768         string (bug#18829).
3770         * src/lread.c (syms_of_lread): Mention that `require' uses
3771         `load-path'.
3773         (cherry picked from commit 3eca9a03816f95da0030665223c0b5262f223ba7)
3775 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3777         Doc fix for insert-pair-alist
3779         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
3780         COMMAND-CHAR is (bug#18809).
3782         (cherry picked from commit 2824c587e9749a8f350f1d3dddd65176b4561dcb)
3784 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3786         Move doc of backup-directory-alist to the Backup node
3788         * doc/emacs/files.texi (Backup): Move the documentation of
3789         `backup-directory-alist' here from the "Single or Numbered
3790         Backups" node, because it doesn't seem to have much to do with
3791         numbering (bug#18692).
3793         (cherry picked from commit e77b8d84b4161f2cf8720dec2bf44a3e50134398)
3795 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3797         Tiny doc clarification for create-fontset-from-fontset-spec
3799         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
3800         Clarify what the optional part is (bug#18686).
3802         (cherry picked from commit c05d186455ce9907eeb6b21ea4227e453996c681)
3804 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3806         Fill the doc string of font-lock-keywords
3808         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
3809         reorganise some explanations (bug#21427).
3811         (cherry picked from commit c05716d3a26ea7518b89eacfccaf70c9d0731df7)
3813 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3815         Doc fix for font-lock-remove-keywords
3817         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
3818         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
3820         (cherry picked from commit bc00dcf12983cd399127d0eea39647f29778eb02)
3822 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3824         Clarify whitespace-style doc string
3826         * lisp/whitespace.el (whitespace-style): Doc clarification
3827         (bug#18296).
3829         (cherry picked from commit d96c720d0cca7c9ffbb4c712ad315bb707d6625c)
3831 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3833         Doc fixed for next-error-buffer-p
3835         * lisp/simple.el (next-error-buffer-p): Clarify doc string
3836         (bug#18202).
3838         (cherry picked from commit a10eb168cc96db9f0dab2d75550cbd8f08be2363)
3840 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3842         Tiny doc fix
3844         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
3845         (and fill) (bug#18201).
3847         (cherry picked from commit 2ef0040e2363a669d9b93df935d31c98fa130132)
3849 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3851         Doc fix
3853         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
3854         slightly (bug#18092).
3856         (cherry picked from commit 6b769c81d024f7eeb90b167e7df6f87d859614d4)
3858 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3860         delsel doc touch ups
3862         * lisp/delsel.el (delete-selection-helper): Use non-nil
3863         instead of t and clarify function return values (bug#18089).
3865         (cherry picked from commit d7a5b5be9a5869bcd233434ec3103dd1976d7df7)
3867 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3869         Doc fixes for menu-bar.el
3871         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
3872         REGION parameter (bug#18028).
3873         (clipboard-kill-region): Ditto.
3875         (cherry picked from commit 33d2c67bff0992ecbc0fe38556683242b9d1a4ae)
3877 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3879         Doc fix
3881         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
3883         (cherry picked from commit 6baca4911ec901579749dbf7596011d90fea3781)
3885 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3887         Minor doc clarification
3889         * lisp/subr.el (y-or-n-p): Document the return value from "n"
3890         (bug#18024).
3892         (cherry picked from commit 5d1f3192d484edee92caa46cd7d699da3e920259)
3894 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3896         Fill font-lock-mode doc string
3898         * lisp/font-core.el (font-lock-mode): Fill the text to make it
3899         narrower (bug#18008).
3901         (cherry picked from commit 27abf372836532c57be2e9e3ed23413729cc07fc)
3903 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3905         Wrap the auto-generated doc string
3907         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
3908         string to make it less likely that we get overlong lines
3909         (bug#17999).
3911         (cherry picked from commit 323b69664914d687fd4b48593479cea223dfbcb4)
3913 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3915         Clarify hi-lock-find-patterns
3917         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
3918         (bug#17989).
3920         (cherry picked from commit 552e90ce7dff3a7107243fdf71c4de3af443e13a)
3922 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3924         Add a doc string to `winner-mode'
3926         * lisp/winner.el (winner-mode): Add a doc string based on the
3927         comments in the file (bug#17716).
3929         (cherry picked from commit 2c3ab9b6e39a3d600e7d82deacc24effaec051bb)
3931 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3933         Doc fix for align-newline-and-indent
3935         * lisp/align.el (align-newline-and-indent): Mention that
3936         alignment is done by `align' (bug#17707).
3938         (cherry picked from commit 340a224ec3e01706112a07164da9a9f3f369a5aa)
3940 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3942         Doc fix for `kbd'
3944         * lisp/subr.el (kbd): Describe more fully the format of the
3945         parameter (bug#17039).
3947         (cherry picked from commit 3a33afe25d8518f194fa4706eaccdb2a786a0348)
3949 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3951         Doc tweak
3953         * lisp/simple.el (use-empty-active-region): Doc tweak.
3954         There's only one region (bug#16513).
3956         (cherry picked from commit 35fb7897f161d5e5a87e039dc1e427094640b0c8)
3958 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3960         Link from (emacs)Exiting to (lisp)Killing Emacs
3962         * doc/emacs/entering.texi (Exiting): Link to the lispref
3963         manual for further customisations (bug#15445).
3965         (cherry picked from commit bc5f27aa099cdde02ca66e71501b89300685ab28)
3967 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3969         find-lisp doc touchups
3971         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
3972         string (bug#15047).
3973         (find-lisp-find-files): Clarify doc.
3975         (cherry picked from commit e4c7657b0d1a31d64ca24bc64b5480cd7687e332)
3977 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3979         Don't have the manual claim that it lists all CL incompatibilities
3981         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
3982         incompatibilities isn't exhaustive, so don't say that it is
3983         (bug#15171).
3985         (cherry picked from commit fb685bc91a72508c97ce7e30f970d4157677f371)
3987 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3989         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
3991         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
3992         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
3993         (bug#14554).
3995         (cherry picked from commit e4c26271f2c2fe08f8490e25c63a436ab2a804ca)
3997 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3999         Doc string change to enable-recursive-minibuffers
4001         * src/minibuf.c (syms_of_minibuf): Mention
4002         minibuffer-depth-indicator-mode in the doc string to
4003         enable-recursive-minibuffers (bug#14147).
4005         (cherry picked from commit 23ba488a5e8290c4de91e0ff4161641efa364c0d)
4007 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4009         Clarify the `interactive' doc string slightly
4011         * src/callint.c (Finteractive): Clarify the doc string slightly
4012           (bug#14577).
4014         (cherry picked from commit cd993be60da2d12db0d390001373d486c1091c47)
4016 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4018         Clarify some doc strings
4020         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
4021         Clarify doc string (bug#8693).
4022         (syntax-propertize): Clarify doc string.
4024         (cherry picked from commit ad3ef417f3c40f086de9c547d6272e5685595e42)
4026 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4028         Add some concept index entries for custom types
4030         * doc/lispref/customize.texi (Composite Types): Add concept
4031         index entries for restricted-sexp, radio and choice (bug#7385).
4033         (cherry picked from commit 388bb723fa078158d3148de05e942f9c01e95dd8)
4035 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4037         Mention `lisp-indent-function' in the lispref manual
4039         * doc/lispref/macros.texi (Indenting Macros): Mention
4040         `lisp-indent-function' (bug#3393).
4042         (cherry picked from commit a1627691a896b2afaa264f93534178bc763564c9)
4044 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4046         Clarify doc string of internal compilation function
4048         * lisp/progmodes/compile.el (compilation-get-file-structure):
4049         Clarify doc string (bug#3137).
4051         (cherry picked from commit 123191decb7428db3b32a6c01631fa755088393a)
4053 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
4055         Use ‘T *restrict’ proto, not ‘T[restrict]’
4057         * src/fns.c (sort_vector_copy): Use a different way to attempt to
4058         work around GCC 3.0-and-earlier incompatibility with C99, one that
4059         does not have problems with modern non-GCC compilers.
4061 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
4063         Fix documentation of 'url-retrieve-synchronously'
4065         * doc/misc/url.texi (Retrieving URLs): Update argument list of
4066         'url-retrieve-synchronously'.  (Bug#23411)
4068 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
4070         * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bug#23411)
4072 2016-04-30  Leo Liu  <sdl.web@gmail.com>
4074         Fix last change to isearch-update (bug#23406)
4076         * lisp/isearch.el (isearch-update): Remove (setq cursor-sensor-inhibit
4077           nil) ie remove the original (unless (boundp 'cursor-sensor-inhibit)
4078           ...) form.
4080 2016-04-30  Leo Liu  <sdl.web@gmail.com>
4082         Autoload cursor-sensor-inhibit (bug#23406)
4084         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-inhibit): Autoload.
4085         * lisp/isearch.el (isearch-update): Remove boundp check.
4087 2016-04-30  Phillip Lord  <phillip.lord@newcastle.ac.uk>
4089         org-map-entries: Fix org-agenda-prepare-buffers call
4091         * lisp/org/org.el (org-map-entries): Check that buffer-file-name is non-nil
4092           before passing to org-agenda-prepare-buffers.
4094         This is a backport of commit 44c8cd7136e3fcd1e6bfa08895cac437b7a691fa
4095         from upstream org-mode. Addresses bug #23365.
4097 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4099         Followup for last commit in the user manual
4101         * doc/emacs/basic.texi (Moving Point): Clarify that
4102         set-goal-column has buffer-local effect.  (Bug#23405)
4104 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4106         Improve doc string of 'set-goal-column'
4108         * lisp/simple.el (set-goal-column): Doc fix.  (Bug#23405)
4110 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4112         Fix the MSDOS build
4114         * config.bat:
4115         * msdos/sedlisp.inp:
4116         * msdos/sedlibmk.inp:
4117         * msdos/sedleim.inp:
4118         * msdos/sedadmin.inp:
4119         * msdos/sed6.inp:
4120         * msdos/sed3v2.inp:
4121         * msdos/sed2v2.inp:
4122         * msdos/sed1v2.inp: Adapt to Emacs 25.
4124         * src/process.c (remove_slash_colon): Move out of "#ifdef
4125         subprocesses" block, as it its called unconditionally.  Move
4126         ADD_SUBFEATURE calls into "#ifdef subprocesses" block, as they
4127         reference variables only defined in that block.
4128         * src/msdos.h: Provide prototypes for IT_set_frame_parameters,
4129         faccessat, msdos_fatal_signal, syms_of_msdos, pthread_sigmask,
4130         dos_keysns, dos_keyread, run_msdos_command, and
4131         syms_of_win16select, to avoid compiler warnings.
4132         * src/msdos.c (SYS_ENVIRON): Define to either '_environ' or
4133         'environ', depending on the DJGPP version.
4134         Remove declarations of externally-visible Lisp objects, like
4135         Qbackground_color and Qreverse.
4136         (run_msdos_command): First argument is not signed, not unsigned.
4137         Use SYS_ENVIRON.
4138         (sys_select): Use 'timespec_cmp' instead of 'timespec_sign', as
4139         the latter doesn't work when 'time_t' is an unsigned data type.
4140         This caused idle timers to behave incorrectly: they only fired
4141         after a keyboard input event.
4142         * src/frame.c (adjust_frame_size) [MSDOS]: Account for
4143         FRAME_TOP_MARGIN that isn't counted in the frame's number of
4144         lines, but dos_set_window_size needs it to be added.
4145         * src/lread.c (INFINITY, NAN) [DJGPP < 2.05]: Provide definitions.
4146         * src/fns.c (sort_vector_copy) [__GNUC__ < 4]: Provide a prototype
4147         that works around compilation errors with older GCC versions.
4148         * src/w16select.c: Don't declare QCLIPBOARD and QPRIMARY as Lisp
4149         Objects.
4150         * src/filelock.c [MSDOS]: Ifdef away most of the code.  Provide
4151         no-op implementations for 'lock_file' and 'unlock_file'.
4152         (Ffile_locked_p) [MSDOS]: Always return nil.  This avoids multiple
4153         ifdefs in all users of filelock.c functionality.
4154         * src/conf_post.h (EOVERFLOW, SIZE_MAX) [DJGPP < 2.04]: Define.
4155         * src/emacs.c [MSDOS]: Include dosfns.h, to avoid compiler
4156         warnings.
4157         * src/dosfns.h: Provide prototypes for dos_cleanup,
4158         syms_of_dosfns, and init_dosfns.
4159         * src/deps.mk (atimer.o): Depend on msdos.h.
4160         (emacs.o): Depend on dosfns.h.
4161         * src/atimer.c [MSDOS]: Include msdos.h, to avoid compiler
4162         warnings.
4164         * lisp/window.el (window--adjust-process-windows): Skip the body
4165         if 'process-list' is not available.  This avoids failure to start
4166         up on MS-DOS.
4167         * lisp/vc/diff.el (diff-no-select): Test 'make-process', not
4168         'start-process', as the latter is now available on all platforms.
4169         * lisp/textmodes/ispell.el (ispell-async-processp): Replace
4170         'start-process' with 'make-process' in a comment.
4171         * lisp/term/internal.el (IT-unicode-translations): Modify and add
4172         a few translations to display Info files with Unicode markup.  Fix
4173         an ancient off-by-one mismatch error with Unicode codepoints.
4174         * lisp/progmodes/compile.el (compilation-start): Test
4175         'make-process', not 'start-process', as the latter is now
4176         available on all platforms.
4177         * lisp/man.el (Man-build-man-command, Man-getpage-in-background):
4178         Test 'make-process', not 'start-process', as the latter is now
4179         available on all platforms.
4180         * lisp/international/mule-cmds.el (set-coding-system-map): Test
4181         'make-process', not 'start-process', as the latter is now
4182         available on all platforms.
4183         * lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Doc
4184         fix.
4185         (eshell-execute-pipeline): Test 'make-process', not
4186         'start-process', as the latter is now available on all platforms.
4188 2016-04-30  Andreas Schwab  <schwab@linux-m68k.org>
4190         Remove \= from format string (bug#18190)
4192         * lisp/emacs-lisp/eieio.el (defclass): Remove \= from format
4193         string.
4195 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4197         Fix variable-pitch font on MS-Windows
4199         * lisp/faces.el (variable-pitch) [w32]: Name a variable-pitch font
4200         explicitly, to avoid Emacs picking up a bold-italic variant on
4201         some MS-Windows systems.  See this thread for details:
4202         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00746.html.
4204 2016-04-29  Alan Mackenzie  <acm@muc.de>
4206         Restore follow-scroll-up/down to scrolling by the combined size of all windows
4208         Also rename the current follow-scroll-up/down functions to
4209         follow-scroll-up-window and follow-scroll-down-window.  These scroll by the
4210         height of the current window.
4212         This fixes bug #23347.
4214         * lisp/follow.el (follow-mode): Tweak the doc string.
4215         (follow-scroll-up-arg, follow-scroll-down-arg): new functions, extracted from
4216         follow-scroll-up/down.
4217         (follow-scroll-up-window, follow-scroll-down-window): Functions renamed from
4218         follow-scroll-up/down.
4219         (follow-scroll-up, follow-scroll-down): Restore the historic functionality.
4221 2016-04-29  Alan Mackenzie  <acm@muc.de>
4223         Revert unneeded change which harms syntactic parsing.  This fixes bug #23308.
4225         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache): User
4226         c-state-old-cpp-end as an argument to c-with-all-but-one-cpps-commented-out
4227         regardless of the value of `here'.
4229 2016-04-29  Alan Mackenzie  <acm@muc.de>
4231         Correct indentation of ids in a C++ enum after a protection keyword.
4233         Also correct the misfontification of the last enum identifier.
4235         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): setq
4236         c-last-identifier-range to nil to ensure that only types recognized by this
4237         macro are set for fontification as types.
4238         (c-backward-typed-enum-colon): Function renamed from
4239         c-backward-colon-prefixed-type.  On finding a colon in the backward search,
4240         check it is preceded by an identifier rather than a keyword.
4242 2016-04-27  Glenn Morris  <rgm@gnu.org>
4244         * lisp/window.el (window--process-window-list): No-op if no processes.
4246         This avoids an issue with save-selected-window (from walk-windows)
4247         failing if frame.el is not loaded, eg if the terminal is resized
4248         during startup of a -nw CANNOT_DUMP build.  (Bug#23369).
4250 2016-04-27  Paul Eggert  <eggert@penguin.cs.ucla.edu>
4252         Port dumping to NetBSD with PaX
4254         Problem reported by Thomas Klausner (Bug#23371).
4255         * configure.ac (PAXCTL_dumped, PAXCTL_notdumped): New vars.
4256         Set them to setfattr and/or paxctl commands appropriate for
4257         GNU/Linux and/or NetBSD; the latter prefers paxctl +a.  Search
4258         for paxctl only if setfattr is not found.
4259         * src/Makefile.in (PAXCTL_dumped, PAXCTL_notdumped):
4260         New vars, replacing PAXCTL_if_present and SETFATTR_if_present.
4261         All uses changed.
4263 2016-04-27  Dmitry Gutov  <dgutov@yandex.ru>
4265         Don't mistake `for' inside a function for a part of array comprehension
4267         * lisp/progmodes/js.el (js--indent-in-array-comp): Also check the
4268         depth in parens between the bracket and `for' (bug#23391).
4270         * test/indent/js.js: Add a corresponding example.
4272 2016-04-27  Anders Lindgren  <andlind@gmail.com>
4274         Fix bug#22891: wrong terminal width when a fringe width is zero.
4276         When either fringe width is zero, Emacs reserved one column for a
4277         continuation glyph. Terminal windows does not take this into
4278         account when the frame is resized.
4280         * lisp/window.el (window-adjust-process-window-size): Use
4281         `window-max-chars-per-line' instead of `window-body-width'.
4282         * lisp/term.el (term-window-width): Remove function. (It does the
4283         same as `window-max-chars-per-line' but without recent bug fixes.)
4284         (term-mode): Use `window-max-chars-per-line' instead of
4285         `term-window-width'.
4287         Backport
4289         (cherry picked from commit 5b5403289888efe8783ae6a405845b925f544ec1)
4291 2016-04-27  Leo Liu  <sdl.web@gmail.com>
4293         Improve last change to vc-git-mode-line-string
4295         * lisp/vc/vc-git.el (vc-git-mode-line-string): Better fix that caches
4296           the result.
4298 2016-04-27  Stephen Berman  <stephen.berman@gmx.net>
4300         Todo mode doc bug fix
4302         * lisp/calendar/todo-mode.el (todo-show): Correct obsolete and no
4303         longer correct information in doc string.
4305 2016-04-27  Leo Liu  <sdl.web@gmail.com>
4307         Fix revision calculation in vc-git-mode-line-string
4309         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use
4310           vc-git-working-revision because vc-working-revision needs to decide
4311           the backend and may return nil.
4313 2016-04-26  Jorgen Schaefer  <contact@jorgenschaefer.de>
4315         Add Python 3.5 keyword "await"
4317         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
4318         keyword.
4320 2016-04-26  Lele Gaifax  <lele@metapensiero.it>
4322         Add new keywords of Python 3.5
4324         Python 3.5, released in mid September 2015, introduced a few new
4325         keywords to better support asynchronous code, "async" and "await"
4326         in particular. See https://www.python.org/dev/peps/pep-0492/ for
4327         details. (Bug#21783)
4328         * lisp/progmodes/python.el (python-rx-constituents): Add async
4329         def/for/with as block-start and async def as defun.
4330         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
4331         def/for/with as keyword.
4332         * test/automated/python-tests.el (python-indent-after-async-block-1,
4333         python-indent-after-async-block-2, python-indent-after-async-block-3,
4334         python-nav-beginning-of-defun-3): New tests to test indentation and
4335         navigation for the async keyword.
4337 2016-04-26  Mark Oteiza  <mvoteiza@udel.edu>
4339         Partially revert previous change.
4341         This commit partially reverts 0f332848cdb2ed6d46771914a911cbca194cd51a.
4342         * lisp/rect.el (rectangle--highlight-for-redisplay): Use region face.
4343         This function is for rectangle-mark-mode, not string-rectangle.
4345 2016-04-25  Paul Eggert  <eggert@penguin.cs.ucla.edu>
4347         Say why text-quoting-style is not a user option
4349         * doc/lispref/help.texi (Keys in Documentation):
4350         * etc/NEWS: Document why text-quoting-style is not a
4351         customizable variable (Bug#23372).
4353 2016-04-25  Glenn Morris  <rgm@gnu.org>
4355         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
4356         Future-proof against non-time-values.
4358 2016-04-25  Eli Zaretskii  <eliz@gnu.org>
4360         Don't mention ~/.emacs.bmk literally in doc strings
4362         * lisp/bookmark.el (bookmark-save-flag, bookmark-load): Don't
4363         mention "~/.emacs.bmk" explicitly as the default bookmark file in
4364         the doc strings.  (Bug#23350)
4366 2016-04-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4368         * etc/NEWS: Explain why multicolor font display is disabled on OS X Cocoa.
4370 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
4372         Port to Ubuntu 16.04 --enable-gcc-warnings
4374         * src/image.c (gif_load) [HAVE_GIF]: Fix pointer signedness problem.
4376 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
4378         * etc/NEWS: Improve wording of vc-git-log-output-coding-system etc.
4380 2016-04-24  Tino Calancha  <f92capac@gmail.com>
4382         Don't kill ~/ if it's the top level directory
4384         * lisp/dired-aux.el (dired-kill-subdir): Don't kill ~/ if it's
4385         the top level directory (bug#23017).
4387 2016-04-23  Tino Calancha  <f92capac@gmail.com>  (tiny change)
4389         describe-char: fix insert char documentation
4391         * lisp/descr-text.el (describe-char):
4392         Only 'ucs-names' entries can be inserted by unicode name (Bug#23325).
4394 2016-04-23  Dmitry Gutov  <dgutov@yandex.ru>
4396         (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
4398         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use `substring'
4399         instead of `replace-regexp-in-string', because REV can be nil
4400         (e.g. when FILE is a directory, bug#23344), and we actually know
4401         we only need the first 4 characters.
4403 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
4405         Bump version to 25.0.93
4407         * README:
4408         * configure.ac:
4409         * msdos/sed2v2.inp: Bump Emacs version to 25.0.93.
4411 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
4413         * etc/AUTHORS: Update the AUTHORS file
4415         * admin/update_autogen: Use #!/usr/bin/env bash
4417         * admin/authors.el (authors-ignored-files): Additions.
4419 2016-04-22  Martin Rudalics  <rudalics@gmx.at>
4421         In x_set_window_size restore do_pending_window_change calls
4423         * src/xterm.c (x_set_window_size):
4424         * src/w32term.c (x_set_window_size): Restore
4425         do_pending_window_change calls after their stupid removal on
4426         2015-08-31.
4428 2016-04-21  Ilya Zakharevich  <ilya@math.berkeley.edu>
4430         Fix Alt-modified keys on some European MS-Windows keyboards
4432         * src/w32fns.c (deliver_wm_chars): If the reported character is
4433         ASCII, AND Meta modifier is a candidate, behave as if Meta is
4434         present, i.e. fall back to the legacy code.  (Bug#23251)
4436 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
4438         Document 'help-go-forward'
4440         * doc/emacs/help.texi (Help Mode): Document and index
4441         'help-go-forward'.  (Bug#23323)
4443 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
4445         Revert "Allow to customize names of executables used by grep.el"
4447         This reverts commit c93ae7a1e5a94541189a8f36984014344d561ffc.
4449 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
4451         Revert "Don't use 'find-program'"
4453         This reverts commit 10597c977d55cbf9304b51c3b364ce58199384a0.
4455 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
4457         Revert "Use 'grep-find-program' in check-declare.el"
4459         This reverts commit 33bef6e90bfd20609d044b8a076c1570c627684a.
4461 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
4463         Clarify documentation of 'dired-mark-files-containing-regexp'
4465         * doc/emacs/dired.texi (Marks vs Flags): Clarify that for files
4466         visited in buffers, 'dired-mark-files-containing-regexp' searches
4467         the buffer rather than the file on disk.  (Bug#22694)
4469         * lisp/dired.el (dired-mark-files-containing-regexp): Clarify that
4470         for files visited in buffers, 'dired-mark-files-containing-regexp'
4471         searches the buffer rather than the file on disk.  (Bug#22694)
4473 2016-04-19  Eli Zaretskii  <eliz@gnu.org>
4475         Make tmm-menubar work in correct order again
4477         * lisp/tmm.el (tmm-prompt): Don't reverse 'tmm-km-list' right at the
4478         beginning; instead, pass a reversed copy to 'tmm--completion-table'.
4479         (Bug#23309)
4480         (tmm-menubar): Fix an off-by-one error in determining the menu
4481         item when the function is called with a non-nil 'x-position'
4482         argument.
4484 2016-04-18  Dmitry Gutov  <dgutov@yandex.ru>
4486         Remove the Meta-CVS VC backend
4488         * lisp/obsolete/vc-mcvs.el: Remove the file (bug#20475).
4490         * lisp/vc/log-view.el (log-view-extract-comment): Remove the MCVS
4491         reference.
4493         * doc/misc/efaq-w32.texi (Version control): Same.
4495 2016-04-18  Michael Albinus  <michael.albinus@gmx.de>
4497         Fix Bug#23276
4499         * lisp/autorevert.el (auto-revert-handler): Ignore errors
4500         coming from `revert-buffer'.  (Bug#23276)
4502 2016-04-17  Reto Zimmermann  <reto@gnu.org>
4504         Sync with upstream vhdl mode v3.38.1.
4506         * lisp/progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
4507         (vhdl-mode): No longer set comment-padding.
4508         (vhdl-begin-p): Handle missing space between keyword and parenthesis.
4509         (vhdl-beginning-of-statement-1): Fix indentation for "else generate".
4510         (vhdl-template-else, vhdl-template-elsif): Support generate statement.
4511         (vhdl-re-search-forward, vhdl-re-search-backward): Save match data.
4513 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
4515         Tweak configure.ac syntax in recent module patch
4517         * configure.ac: Use proper Autoconf parenthesization in
4518         recent HAVE_MODULES patch.  Although this doesn’t fix any bugs,
4519         the previous syntax was confusing.
4521 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
4523         Port to GCC 5.3.1 20160406 (Red Hat 5.3.1-6)
4525         * src/indent.c (Fvertical_motion): Pacify --enable-gcc-warnings
4526         when using the April 6 Fedora patch to GCC.
4528 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
4530         Make sh-electric-here-document-mode accessible in sh-mode-hook. (Bug#3226)
4532         * lisp/progmodes/sh-script.el (sh-mode-hook): Add
4533         sh-electric-here-document-mode as an option and the default value.
4534         (sh-mode): Mention sh-mode-hook in docstring.
4535         (sh-mode): Remove sh-electric-here-document-mode invocation.
4537 2016-04-16  Glenn Morris  <rgm@gnu.org>
4539         * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from previous.
4541 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
4543         Make use of rectangle-preview custom variable.
4545         lisp/rect.el (rectangle--string-preview): Only create a preview if
4546         rectangle-preview is non-nil (Bug#23248).
4548 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
4550         Make use of rectangle-preview face.
4552         * lisp/rect.el (rectangle--string-preview):
4553         (rectangle--highlight-for-redisplay): Replace 'region with
4554         'rectangle-preview (Bug#23248).
4556 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
4558         Use 'grep-find-program' in check-declare.el
4560         * lisp/emacs-lisp/check-declare.el (check-declare-directory): Use
4561         'grep-find-program', not 'find-program'.
4563 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
4565         Improve "C-h S" for cl-lib symbols
4567         * lisp/info-look.el: Add cl.info lookup to emacs-lisp-mode related
4568         manuals.  (Bug#23289)
4570 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
4572         Fix minor issues with removing left or right fringes
4574         * lisp/window.el (window-max-chars-per-line): Account for
4575         'left-fringe-width' and 'right-fringe-width' variables.
4577         * doc/lispref/windows.texi (Window Sizes): Document the effect on
4578         window text width when setting the width of one or both fringes to
4579         zero.
4580         * doc/emacs/display.texi (Fringes): Document the effect on window
4581         text width when setting the width of one or both fringes to zero.
4582         (Bug#22891)
4584 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
4586         Speed up redisplay in ansi-term mode
4588         * lisp/term.el (ansi-term): Force L2R 'bidi-paragraph-direction'.
4589         (Bug#20611)
4591 2016-04-16  Philipp Stephani  <phst@google.com>
4593         Simplify 8-bit character handling by terminal for 'raw-text'
4595         * lisp/international/mule.el (set-keyboard-coding-system): Treat
4596         'raw-text' as another coding type that requires 8-bit characters.
4597         * lisp/xt-mouse.el (xterm-mouse--read-coordinate): Use 'no-conversion'
4598         instead of 'latin-1'.
4600 2016-04-15  Glenn Morris  <rgm@gnu.org>
4602         * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bug#22722)
4604 2016-04-15  Eli Zaretskii  <eliz@gnu.org>
4606         Fix w32 memory-management problem when extending buffer text
4608         * src/w32heap.c (mmap_realloc): Only attempt extending a region if
4609         the following region has the same allocation base.  Also, use the
4610         original allocation base and enlarged size to commit reserved
4611         memory, to ensure that the allocation base stays at its original
4612         value.  This fixes several hard-to-debug problems whereby part of
4613         buffer text was overwritten with binary nulls, because
4614         mmap_realloc copied only part of buffer text when extending it.
4615         See
4616         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00325.html
4617         and http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#55 for two
4618         examples of the related problems.
4620 2016-04-14  Michael Albinus  <michael.albinus@gmx.de>
4622         Fix Bug#20637.  Do not merge to master
4624         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
4625         Use `vc-backend' instead of `vc-responsible-backend'.  (Bug#20637)
4627         * test/automated/vc-tests.el (vc-test--state)
4628         (vc-test--working-revision): Deactivate now failing checks.
4630 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
4632         substitute-command-keys keeps quotes’ text props
4634         Problem reported by Clément Pit--Claudel (Bug#23254).
4635         * src/doc.c: Include intervals.h.
4636         (Fsubstitute_command_keys): If the only substitutions are for
4637         quotes, copy the source string’s text properties too, since no
4638         substring lengths have changed.
4640 2016-04-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4642         * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping fixes.
4644 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
4646         Add semantic-symref-filepattern-alist entry for lisp-interaction-mode
4648         * lisp/cedet/semantic/symref/grep.el
4649         (semantic-symref-filepattern-alist):
4650         Add entry for lisp-interaction-mode
4651         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#47)
4653 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
4655         Perform xref searches without visiting unopened files
4657         * lisp/progmodes/xref.el (xref-collect-references): Instead of
4658         calling `semantic-symref-find-references-by-name', use
4659         `semantic-symref-instantiate' and `semantic-symref-perform-search'
4660         directly.  Ask for `line-and-text' results (bug#23223).
4661         (xref-collect-matches): Include the line text in the "hit"
4662         structure.
4663         (xref--convert-hits): New function, split off from
4664         `xref-collect-references' and `xref-collect-matches', to convert
4665         "hits" to xref instance list.  Create a temporary buffer here, to
4666         use it for post-processing all hit lines.
4667         (xref--collect-matches): Use a different approach for non-visited
4668         files.  Insert the line text into the temp buffer, apply the
4669         file's major mode the best we can without reading its whole
4670         contents, syntax-propertize, and search in the result.
4671         (xref--collect-matches-1): Extract, to handle the common logic
4672         between two cases.
4673         (xref--find-buffer-visiting): New function, a wrapper around
4674         `find-buffer-visiting' to amortize its cost.
4676         * lisp/cedet/semantic/symref/idutils.el
4677         (semantic-symref-idutils--line-re): New constant.
4678         (semantic-symref-parse-tool-output-one-line): Support result type
4679         `line-and-text'.
4681         * lisp/cedet/semantic/symref/grep.el
4682         (semantic-symref-grep--line-re)
4683         (semantic-symref-parse-tool-output-one-line): Same.
4685         * lisp/cedet/semantic/symref/cscope.el
4686         (semantic-symref-cscope--line-re)
4687         (semantic-symref-parse-tool-output-one-line): Same.
4689         * lisp/cedet/semantic/symref/global.el
4690         (semantic-symref-global--line-re)
4691         (semantic-symref-parse-tool-output-one-line): Same.
4693 2016-04-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
4695         Revert "Prevent bootstrap autoload backup files"
4697         This reverts commit c23c965bb9d0a4bcc1b6158833ff99aa20fd53e9.
4699 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
4701         Improve time zone documentation
4703         * doc/lispref/os.texi (Time Zone Rules):
4704         New section, mostly with material moved here from other sections.
4705         * doc/emacs/cmdargs.texi (General Variables):
4706         * doc/lispref/os.texi (Time Conversion, Time Parsing):
4707         Xref new section.
4708         * etc/NEWS, etc/PROBLEMS:
4709         * lisp/org/org.el (org-timestamp-format):
4710         * src/editfns.c (Fformat_time_string, Fdecode_time)
4711         (Fencode_time, Fcurrent_time_string, Fcurrent_time_zone)
4712         (Fset_time_zone_rule):
4713         When documenting time zone rule strings, mention the TZ
4714         environment variable in preference to mentioning the
4715         sort-of-internal function set-time-zone-rule.
4717 2016-04-12  Phillip Lord  <phillip.lord@russet.org.uk>
4719         Prevent bootstrap autoload backup files
4721          * lisp/emacs-lisp/autoload.el (autoload-find-generated-file): Suppress
4722            backups in newly created file.
4724           (autoload-ensure-default-file): Function split into two.
4725           (autoload-ensure-file-writeable): New function from split.
4727           (Bug#23203)
4729 2016-04-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4731         Disable multicolor fonts on OS X since they are not supported on free systems
4733         * src/macfont.m (macfont_list): Don't use color bitmap fonts.
4735 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
4737         Capitalize “Universal Time” in documentation
4739         It’s a proper noun.
4740         * lisp/vc/add-log.el (add-log-time-zone-rule): Also, fix typo by
4741         mentioning ‘format-time-string’ instead of ‘set-time-zone-rule’.
4743 2016-04-11  Eli Zaretskii  <eliz@gnu.org>
4745         Don't use 'find-program'
4747         * lisp/progmodes/project.el (project-file-completion-table): Use
4748         'grep-find-program', rather than the obsolete 'find-program'.
4750 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
4752         Sync with gnulib
4754         This is for picky compilers whose stdint.h fails our C11 tests.
4755         Problem reported for clang by Philipp Stephani (Bug#23261).
4756         This incorporates:
4757         2016-04-11 stdint: port to strict C11 left shift
4758         * doc/misc/texinfo.tex, lib/stdint.in.h: Copy from gnulib.
4760 2016-04-11  Leo Liu  <sdl.web@gmail.com>
4762         Fix last change on 2016-01-02
4764         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Move
4765           `cl-errs-re' before `lisp--el-match-keyword'; don't use `prepend'
4766           which highlights `cl-errs-re' even in comments or strings.
4768 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
4770         Port run-prolog EMACS to SWI-Prolog 7.2.3
4772         * lisp/progmodes/prolog.el (prolog-ensure-process):
4773         Work around incompatibility of SWI-Prolog 7.2.3 and earlier
4774         with the new way of dealing with the EMACS and INSIDE_EMACS
4775         environment variables.
4777 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
4779         Avoid crashes due to unreasonably large or small text scaling
4781         * lisp/face-remap.el (text-scale-min-amount)
4782         (text-scale-max-amount): New functions.
4783         (text-scale-set, text-scale-increase): Use them to limit the text
4784         scaling to a reasonable range of values.  (Bug#23259)
4786 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
4788         Improve documentation of 'with-eval-after-load'
4790         * lisp/subr.el (with-eval-after-load): Doc fix.  (Bug#23258)
4792 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
4794         Improve handling of non-ASCII characters in Git log messages
4796         * lisp/vc/vc-git.el (vc-git-commits-coding-system): Now a defcustom.
4797         (vc-git-log-output-coding-system): New defcustom.
4798         (vc-git-print-log, vc-git-command, vc-git--call): Use
4799         'vc-git-log-output-coding-system' for reading stuff from Git.
4800         Don't override values of 'coding-system-for-read/write' if they
4801         are bound by caller -- this allows the user to force an encoding
4802         via "C-x RET c".
4803         (vc-git-checkin): On MS-Windows, pass the log message via a
4804         temporary file, to work around the limitations on passing
4805         non-ASCII characters via command-line arguments.  Force using the
4806         'locale-coding-system' for Git command-line arguments.  This fixes
4807         problems with non-ASCII commit log messages on MS-Windows.
4808         (Bug#23076)
4810         * etc/NEWS: Mention the new vc-git related defcustoms.
4812 2016-04-09  Philipp Stephani  <phst@google.com>
4814         Remove undefined behavior in OS X dumper.
4816         Found by Address Sanitizer.
4818         * src/unexmacosx.c (unexec_write): Use Mach virtual memory API to
4819         avoid undefined behavior when reading arbitrary memory.
4821 2016-04-09  Joakim Verona  <joakim@verona.se>
4823         Fix clipping of xwidgets
4825         * src/xwidget.c (x_draw_xwidget_glyph_string): Use window_box
4826         instead of calculating the clipping borders manually.  Suggested
4827         by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
4829 2016-04-09  Eli Zaretskii  <eliz@gnu.org>
4831         Improve Lisp-level documentation of tooltips
4833         * doc/lispref/display.texi (Tooltips): New section.  (Bug#23246)
4834         (Display): Update the chapter menu.
4835         * doc/lispref/text.texi (Special Properties): Make the "tooltip"
4836         index entry more concrete.  Change the cross-reference to point to
4837         "Tooltips" in the ELisp manual.
4838         * doc/lispref/elisp.texi (Top): Update the master menu.
4839         * doc/emacs/frames.texi (Tooltips): Include more customization
4840         variables.  Add a cross-reference to the ELisp manual.
4842 2016-04-08  Glenn Morris  <rgm@gnu.org>
4844         Faces names should not end in "-face".
4846         * lisp/rect.el (rectangle-preview): Rename from rectangle-preview-face.
4847         * lisp/vc/vc-hooks.el (vc-state-base): Rename from vc-state-base-face.
4849 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
4851         * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
4853 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
4855         Comint and compile no longer set EMACS
4857         This mostly restores the change that I reverted on March 23,
4858         fixing most of Bug#20202.  The only part of the change that is
4859         still reverted is the change to M-x term, where compatibility with
4860         current Bash constrains us from moving too quickly (Bug#20484).
4861         Problem reported by Phillip Lord in: http://bugs.gnu.org/20484#108
4862         * etc/NEWS: Document this.
4863         * lisp/comint.el (comint-exec-1):
4864         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
4865         * lisp/progmodes/compile.el (compilation-start):
4866         Don’t set EMACS=t in the subsidiary process.
4868 2016-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
4870         * lisp/subr.el (read-key): Don't let the prompt linger (bug#22714)
4872 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
4874         Allow to customize names of executables used by grep.el
4876         * lisp/progmodes/grep.el (grep-find-program): Renamed from
4877         'find-program', which was a variable.  All uses changed.
4878         (grep-xargs-program): Renamed from 'xargs-program', which was a
4879         variable.  All uses changed.
4880         (grep-program): Now a defcustom rather than a simple variable.
4881         (Bug#23219)
4883 2016-04-08  Alan Third  <alan@idiocy.org>
4885         Set locale encoding to UTF-8 when run from OS X GUI.
4887         * src/nsterm.m (ns_init_locale): Append .UTF-8 when setting LANG.
4889 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
4891         Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
4893         * lisp/ffap.el (ffap-guess-file-name-at-point): Ignore errors
4894         while 'ffap-guesser' runs.  (Bug#23218)
4896 2016-04-08  Marcin Borkowski  <mbork@mbork.pl>
4898         Avoid infinite loop in 'studlify-word'
4900         * lisp/play/studly.el (studlify-region): Call
4901         'forward-word-strictly' and 'backward-word-strictly' instead of
4902         'forward-word' and 'backward-word'.  (Bug#19940)
4904 2016-04-07  Paul Eggert  <eggert@cs.ucla.edu>
4906         Don’t recommend obsolete EMACS env var
4908         * doc/misc/efaq.texi (Escape sequences in shell output):
4909         Remove long-obsolete (and now-confusing) notes about
4910         the EMACS environment variable in Emacs 21.1 and earlier.
4911         * doc/misc/efaq.texi (^M in the shell buffer):
4912         * etc/PROBLEMS:
4913         Remove obsolescent recommendation to consult the EMACS environment
4914         variable.
4916 2016-04-07  Glenn Morris  <rgm@gnu.org>
4918         * lisp/emacs-lisp/package.el: Change from a few days ago needs seq.
4920         * lisp/emacs-lisp/seq.el: Load cl-lib, not cl-extra.
4922 2016-04-07  Leo Liu  <sdl.web@gmail.com>
4924         Fix "Beginning of buffer" error in forward-page
4926         * lisp/textmodes/page.el (forward-page): Check before move to prevent
4927           "Beginning of buffer" error.
4929 2016-04-06  Dmitry Gutov  <dgutov@yandex.ru>
4931         Add a `transient' project type
4933         * lisp/progmodes/project.el (project-roots): Implement for the
4934         `transient' project type (bug#23224).
4935         (project-current): Instead of signaling an error, return a
4936         transient project instance rooted in the chosen directory.
4938 2016-04-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
4940         Revert "Backport HTTPS proxy fix"
4942         This reverts commit 2d1a6054b161bd1055d4feb11c8c5ac95543f5db.
4944         It's too late in the Emacs 25 release cycle to add things like this to
4945         Emacs 25.1.  It's border line new feature.
4947 2016-04-06  Tao Fang  <fangtao0901@gmail.com>
4949         Backport HTTPS proxy fix
4951         Cherry-picked from 3c623c26ae7d695746e05d8a2e16a67a6256b024
4953         Backport:
4955 2016-04-06  Paul Eggert  <eggert@cs.ucla.edu>
4957         Fix stability confusion in sort-tests
4959         Problem reported by Philipp Stephani (Bug#23205).
4960         * test/automated/sort-tests.el:
4961         (sort-tests--insert-words-sort-and-compare):
4962         Don’t assume that reversing a sorted list is the same
4963         as sorting with the reverse predicate.  This is not true
4964         for stable sorts when items compare equal.
4966 2016-04-05  Paul Eggert  <eggert@cs.ucla.edu>
4968         Avoid describe-key error with lambdas
4970         Problem reported by Sho Takemori (Bug#22716).
4971         * lisp/cedet/mode-local.el (describe-mode-local-overload)
4972         (xref-mode-local-overload): Use function-overload-p instead
4973         of assuming the argument is a symbol.
4975 2016-04-04  Artur Malabarba  <bruce.connor.am@gmail.com>
4977         * lisp/emacs-lisp/package.el (package-install-selected-packages):
4979         Skip unavailable packages.
4981 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
4983         Sync with gnulib
4985         This incorporates:
4986         2016-04-03 stdint: detect good enough pre-C++11 stdint.h in C++ mode
4987         2016-04-01 stddef: support configuring with g++
4988         * doc/misc/texinfo.tex, lib/stddef.in.h, m4/stdint.m4:
4989         Copy from gnulib.
4991 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
4993         Fix doc for Universal Time
4995         * doc/lispref/os.texi (Time of Day, Time Conversion):
4996         Be more careful about distinguishing UTC (which is not valid for
4997         pre-1961 time stamps) and UT (which is).
4998         (Time Parsing): Remove stray obsolete paragraph about a
4999         UNIVERSAL argument for ‘format-time-string’.
5001 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
5003         Handle Bug#23186
5005         * lisp/net/tramp.el (tramp-encoding-command-switch)
5006         (tramp-encoding-command-interactive):
5007         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
5008         `tramp-encoding-shell' could be nil.  (Bug#23186)
5010 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
5012         More format-time-string change fixups
5014         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-times):
5015         * lisp/org/org.el (org-timestamp-format):
5016         Fix doc to match new format-time-string behavior.
5017         * lisp/org/ox-icalendar.el (org-icalendar-convert-timestamp):
5018         Use (not (not X)) to treat non-nil values of utc arg as UTC.
5020 2016-04-02  Paul Eggert  <eggert@cs.ucla.edu>
5022         make-xwidget unused arg cleanup
5024         * doc/lispref/display.texi (Xwidgets): Remove stray refs.
5025         * src/xwidget.c (syms_of_xwidget): Qwebkit, not Qwebkit_osr.
5027 2016-04-02  Joakim Verona  <joakim@verona.se>
5029         Remove unused arguments from make-xwidget
5031         The arguments BEG and END were unused, and are now removed.
5033         * doc/emacs/display.texi (Xwidgets): Document the change
5034         * lisp/xwidget.el (make-xwidget, xwidget-insert)
5035         (xwidget-webkit-new-session): Reflect changed arguments
5036         * src/xwidget.c (Fmake_xwidget, syms_of_xwidget): Reflect changed arguments
5038 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5040         Document incompatible changes in 'format-time-string'
5042         * etc/NEWS: Mention the incompatible change in the interpretation
5043         of the 3rd argument to 'format-time-string'.  (Bug#21943)
5045 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5047         Improve documentation of byte-code objects
5049         * doc/lispref/compile.texi (Byte-Code Objects): Document the
5050         integer format of the argument descriptor.  (Bug#23061)
5052 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5054         Adapt calls to 'format-time-string' to changes in Emacs 25
5056         * lisp/vc/pcvs-info.el (cvs-fileinfo-from-entries): Use t as the
5057         last argument to format-time-string.  (Bug#23128)
5058         * lisp/gnus/gmm-utils.el (gmm-format-time-string): Use t as the
5059         last argument to format-time-string, when the TZ argument is not a
5060         number, per the doc string.
5062 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5064         Improve vc-diff with Git backend
5066         * lisp/vc/vc-git.el (vc-git-command): Don't override
5067         coding-system-for-read/write if they are already bound.
5068         Suggested by joaotavora@gmail.com (João Távora).  (Bug#20892)
5069         (vc-git-print-log): Don't override coding-system-for-read if it's
5070         already bound.
5072 2016-04-01  Dmitry Gutov  <dgutov@yandex.ru>
5074         (js--continued-expression-p): Special-case unary plus and minus
5076         * lisp/progmodes/js.el (js--continued-expression-p): Make an
5077         effort to recognize unary plus and minus, in the contexts where
5078         they make sense (https://github.com/mooz/js2-mode/issues/322).
5080 2016-04-01  Alan Mackenzie  <acm@muc.de>
5082         Prevent C++ Mode wrongly fontifying some identifiers near templates as types
5084         This fixes debbugs #7917.
5086         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): Accept 'maybe
5087         (from c-forward-type) as sufficient to record an id.  Record type id as well
5088         as ref ids.
5089         (c-forward-name): Bind c-last-identifier-range around the call to
5090         c-forward-<>-arglist to prevent it getting corrupted.  Don't automatically
5091         assume an identifier is a type when a template ">" is followed by a "(".
5092         (c-forward-type): Don't automatically assume an identifier is a type when a
5093         template ">" is followed by a "(".
5095         * lisp/progmodes/cc-fonts.el (c-font-lock-<>-arglists): Don't fontify an
5096         identifier as a type when its associated ">" is followed by a "(".
5098 2016-04-01  Eli Zaretskii  <eliz@gnu.org>
5100         Avoid crashes due to insanely large columns in tabulated-list-format
5102         * src/xdisp.c (append_stretch_glyph, produce_xwidget_glyph)
5103         (produce_image_glyph): Limit the pixel width of the produced glyph
5104         to SHRT_MAX.  (Bug#23178)
5105         (append_composite_glyph, append_glyph, append_glyphless_glyph):
5106         Add assertions to verify that the pixel width of the glyph will
5107         never overflow a 'short'.
5108         * src/term.c (append_composite_glyph): Add assertion to verify
5109         that the pixel width of the glyph will never overflow a 'short'.
5111 2016-03-31  Mark Oteiza  <mvoteiza@udel.edu>
5113         Teach M-x disassemble a default argument.
5115         Adopts default argument in the same way as `describe-function'.
5116         * lisp/emacs-lisp/disass.el (disassemble): Default to function at point,
5117         if any.
5119 2016-03-31  Eli Zaretskii  <eliz@gnu.org>
5121         Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
5123         * lisp/vc/vc-annotate.el (vc-annotate): Force DOS EOL decoding on
5124         MS-Windows and MS-DOS, when processing the output of "svn annotate".
5126 2016-03-31  Michael Albinus  <michael.albinus@gmx.de>
5128         Fix OS X specific settings in tramp-tests
5130         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
5132         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
5134         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
5135         (tramp--test-utf8): Improve settings of coding systems.
5136         Do not use `tramp--test-darwin-p' anymore.  (Bug#22145)
5138 2016-03-30  Alan Mackenzie  <acm@muc.de>
5140         Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
5142         * lisp/progmodes/cc-cmds.el: (c-beginning-of-defun, c-end-of-defun): Remove
5143         superfluous invocations of c-self-bind-state-cache.
5145         * lisp/progmodes/cc-defs.el: (c-self-bind-state-cache): Copy and terminate
5146         markers correctly.
5148         * lisp/progmodes/cc-engine.el (c-record-parse-state-state): Terminate stale
5149         markers.
5151 2016-03-30  Alan Mackenzie  <acm@muc.de>
5153         Merge branch 'emacs-25' of /home/acm/emacs/emacs.git/emacs-25 into emacs-25
5155 2016-03-29  Xue Fuqiao  <xfq.free@gmail.com>
5157         * doc/lispref/text.texi (Columns): Remove a nonexistent reference.
5159         The example was removed by Chong Yidong on Mar 5, 2012.
5161 2016-03-29  Paul Eggert  <eggert@cs.ucla.edu>
5163         * doc/man/emacsclient.1: Document +line:column option.
5165 2016-03-29  Eli Zaretskii  <eliz@gnu.org>
5167         Fix rare problems with echo-area display and multiple frames
5169         * src/xdisp.c (redisplay_window): Bind inhibit-redisplay non-nil
5170         around the call to x_consider_frame_title, to prevent
5171         resize_mini_window from undoing echo-area display.  (Bug#23124)
5173 2016-03-29  Alan Mackenzie  <acm@muc.de>
5175         In M-%, avoid making buffer-local binding of text-property-default-nonsticky
5177         This would happen when that variable already has a buffer local binding.  Such
5178         a binding would not be seen by read-from-minibuffer.  This fixes bug #23127.
5180         * lisp/replace.el (query-replace-read-from): Move the binding of
5181         text-property-default-nonsticky to inside of a new with-current-buffer buffer
5182         form with the minibuffer as argument.
5184 2016-03-27  Dmitry Gutov  <dgutov@yandex.ru>
5186         Remove prog-indentation-context
5188         * lisp/progmodes/prog-mode.el: (prog-indentation-context)
5189         (prog-first-column, prog-widen): Remove, as discussed in
5190         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
5192         * doc/lispref/text.texi (Mode-Specific Indent): Remove references
5193         to them.
5195         * etc/NEWS: Ditto.
5197         * lisp/progmodes/python.el: (prog-widen, prog-first-column):
5198         Remove the compatibility aliases and all uses.
5200         Do not merge to master.
5202 2016-03-27  Paul Eggert  <eggert@cs.ucla.edu>
5204         * src/font.c (QCuser_spec): Add missing colon to :user-spec.
5206 2016-03-27  Eli Zaretskii  <eliz@gnu.org>
5208         Don't start the 'midnight' timer twice
5210         * lisp/midnight.el (midnight-mode): Avoid starting the midnight
5211         timer twice when activating the mode the first time.  (Bug#23123)
5213 2016-03-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5215         * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of XFASTINT.
5217 2016-03-26  Stephen Berman  <stephen.berman@gmx.net>
5219         Fix todo-mode category movement
5221         * lisp/calendar/todo-mode.el (todo-move-category): Use moved
5222         category's existing categories sexp instead of invoking
5223         todo-update-categories-sexp in file moved to, in order to take
5224         archived items into account.  If the moved category has archived
5225         items, handle the source archive buffer properly.  Remove
5226         superfluous code.
5228 2016-03-26  Glenn Morris  <rgm@gnu.org>
5230         * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
5232 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
5234         Ignore non-nil. non-cons values of unread-command-events
5236         * src/keyboard.c (requeued_events_pending_p, read_char)
5237         (Finput_pending_p): Use CONSP instead of !NILP to see if there are
5238         unread command events to be processed.  (Bug#22976)
5240 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
5242         Improve documentatuon of 'truncate-partial-width-windows'
5244         * src/xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>:
5245         Clarify in the doc string how the width of partial-width windows
5246         is computed for the purposes of truncation decision.  (Bug#4338)
5248         * doc/emacs/windows.texi (Split Window): Clarify how the width of
5249         windows is calculated for the purposes of truncation decision.
5250         * doc/emacs/display.texi (Line Truncation): Remove a redundant
5251         index entry.
5253 2016-03-25  Paul Eggert  <eggert@cs.ucla.edu>
5255         * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU style.
5257 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5259         Fix 'dired-goto-file' in Dired buffers produced by find-dired
5261         * lisp/dired.el (dired-goto-file): Try looking for the file as a
5262         relative name with leading sub-directories, before looking for the
5263         basename alone.  (Bug#23089)
5265 2016-03-25  Nicolas Petton  <nicolas@petton.fr>
5267         Fix map-put and map-delete for alists (Bug#23105)
5269         * lisp/emacs-lisp/map.el (map-put): Do not bind the evaluated place
5270         expression to a new symbol.
5271         * test/automated/map-tests.el: Add a regression test.
5273 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5275         Minor copyedits of documentation for temporary displays
5277         * doc/emacs/windows.texi (Temporary Displays): Improve indexing.
5278         Minor changes in wording.
5279         (Window Choice, Displaying Buffers, Pop Up Window): Disambiguate
5280         index entries for 'display-buffer'.
5282         * etc/NEWS: Minor rewording of the entry about temporary displays.
5284 2016-03-25  Philipp Stephani  <phst@google.com>
5286         Add customization option for using UTF-8 coordinates in xt-mouse
5288         * lisp/xt-mouse.el (xterm-mouse-utf-8): New customization option.
5289         (xterm-mouse--read-coordinate): New function to replace
5290         `xterm-mouse--read-utf8-char'; uses UTF-8 only if enabled.
5291         (xterm-mouse--read-number-from-terminal): Adapt to new name.
5292         (xterm-mouse-tracking-enable-sequence)
5293         (xterm-mouse-tracking-disable-sequence): Replace constants with
5294         functions, mark constants as obsolete.
5295         (xterm-mouse--tracking-sequence): New helper function.
5296         (turn-on-xterm-mouse-tracking-on-terminal): Use new functions;
5297         enable UTF-8 only if customization option says so; store UTF-8
5298         flag in terminal parameter.  (Bug#23009)
5300         * test/automated/xt-mouse-tests.el: Add tests for xt-mouse.el.
5302 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5304         Minor doc string fixes in replace.el
5306         * lisp/replace.el (query-replace, query-replace-regexp)
5307         (query-replace-regexp-eval, map-query-replace-regexp)
5308         (replace-string, replace-regexp): Clarify in doc strings that
5309         these commands operate from point to the end of the buffer's
5310         accessible portion.  (Bug#23067)
5312 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5314         Fix scrolling upwards with 'xwidget-webkit-browse-url'
5316         * src/xwidget.c (Fxwidget_set_adjustment): Use CHECK_NUMBER instead
5317         of CHECK_NATNUM.  Suggested by Shayan Pirani <shayanpirani@gmail.com>.
5318         (Bug#22918)
5320 2016-03-25  K. Handa  <handa@gnu.org>
5322         Fix display of Indic scripts
5324         * src/ftfont.c (ftfont_shape_by_flt): For combining characters out
5325         of the range U+300...U+36F, use the "combining" FLT only with
5326         non-OTF fonts.
5328 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5330         Fix splash screen display at startup
5332         * src/frame.c (DEFAULT_ROWS): Enlarge to 36, so that the initial
5333         window displayed by "emacs -q" has enough space to show the whole
5334         text even if it includes 2 lines talking about recovering crashes
5335         sessions.  (Bug#23074)
5337         * lisp/startup.el (use-fancy-splash-screens-p): Fix off-by-one
5338         error when computing the window-height from frame-height.
5340         * etc/NEWS: Mention the change.
5342 2016-03-25  Martin Rudalics  <rudalics@gmx.at>
5344         Describe temporary displays in Emacs manual
5346         * doc/emacs/emacs.texi (Temporary Displays): New subsubsection.
5347         * doc/emacs/windows.texi (Window Choice): Minor fixes.
5348         (Temporary Displays): New subsubsection describing display of
5349         temporary buffers and `temp-buffer-resize-mode'.
5351 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
5353         Avoid stray As next to IDLW icons
5355         * lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere):
5356         Use "" for empty labels, not "a", as the latter now displays stray
5357         "A"s (Bug#18997).
5359 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
5361         Avoid GTK 3 crash with icons and masks
5363         Problem reported by Mosè Giordano (Bug#18997).
5364         * src/gtkutil.c (xg_get_pixbuf_from_pixmap): Remove.
5365         (xg_get_pixbuf_from_pix_and_mask): Do not use
5366         xg_get_pixbuf_from_pixmap, as it is poorly documented.  Instead,
5367         invoke XGetPixel directly.  This is slow but speed is not
5368         important here.  Also, fail for unusual situations (not TrueColor,
5369         or images that are not 8 bits per sample) instead of displaying
5370         junk or crashing.
5372 2016-03-24  Juri Linkov  <juri@linkov.net>
5374         * lisp/minibuffer.el (minibuffer-completion-help): Use fit-window-to-buffer
5376         instead of shrink-window-if-larger-than-buffer.  (Bug#23092)
5378 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
5380         Define make_save_ptr_ptr unconditionally
5382         * src/alloc.c (make_save_ptr_ptr): Remove the !(defined
5383         USE_X_TOOLKIT || defined USE_GTK) conditional.  Reported by
5384         Philipp Stephani <phst@google.com>.  (Bug#23101)
5386 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
5388         Preserve current buffer when popping up TTY menus
5390         * src/term.c (tty_menu_show): Be sure to save and restore the
5391         current buffer around TTY menu pop-ups.  (Bug#23101)
5393 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
5395         Improve font selection by family on MS-Windows
5397         * src/w32font.c (w32font_list_internal): Allow 'ascii-0' charset,
5398         in addition to 'iso10646-1', 'unicode-bmp', and 'unicode-sip'.
5399         This avoids rejecting many font families whose members are shown
5400         by 'font-family-list', in particular 'courier' requested by
5401         info.el.  Without this change, many values of ':family' attribute
5402         of a face have no effect on MS-Windows, because they are rejected
5403         due to bogus mismatch of the charset.
5405 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
5407         Comint, term, and compile now set EMACS
5409         This fixes directory tracking in ansi-term, at the expense of
5410         breaking some usages of 'configure'.  Setting EMACS is meant to be
5411         a somewhat temporary measure, until Bash 4.4 comes out and is
5412         common.  (Bug#20484).
5413         * etc/NEWS: Document this.
5414         * lisp/comint.el (comint-exec-1):
5415         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
5416         * lisp/progmodes/compile.el (compilation-start):
5417         * lisp/term.el (term-exec-1):
5418         Go back to setting the EMACS environment variable, for backward
5419         compatibility to Bash 4.3 and earlier.
5421 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
5423         Ignore more merges when generating ChangeLog
5425         * build-aux/gitlog-to-emacslog: Ignore all merges from gnu.org,
5426         not merely those from master and emacs-NN.  The ChangeLog entries
5427         they generate are not that useful.
5429 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
5431         Sync with gnulib
5433         This incorporates:
5434         2016-03-22 gitlog-to-changelog: suppress ignored chatter
5435         2016-03-21 sys_select: port to new Cygwin
5436         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
5437         * lib/sys_select.in.h: Copy from gnulib.
5439 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
5441         Resurrect GNUS-NEWS autogeneration
5443         * doc/misc/gnus-coding.texi (Gnus Maintenance Guide): Update
5444         GNUS-NEWS section to match current file locations and procedure.
5445         * etc/GNUS-NEWS: Regenerate by using new procedure.
5446         * lisp/Makefile.in (update-gnus-news): New rule, containing a
5447         procedure for building GNUS-NEWS.  The old procedure got lost
5448         somehow when Gnus was merged into Emacs.
5450 2016-03-22  Anders Lindgren  <andlind@gmail.com>
5452         Make `toggle-frame-maximized' respect the dock on OS X (bug#22988).
5454         * src/nsterm.m (ns_screen_margins): New function.
5455         (ns_screen_margins_ignoring_hidden_dock): New function.
5456         (ns_menu_bar_height): Reimplement in terms of `ns_screen_margins'.
5457         ([EmacsWindow zoom:]): Take all screen margins (except those
5458         originating from a hidden dock) into account.
5460 2016-03-22  Eli Zaretskii  <eliz@gnu.org>
5462         Fix bug in displaying header line with a box face
5464         * src/xdisp.c (get_next_display_element): Handle the case when a
5465         display string acquires the box face from an underlying string,
5466         not from the buffer.  (Bug#23091)
5468 2016-03-21  Kaushal Modi  <kaushal.modi@gmail.com>
5470         Fix an Isearch var to be a string (Bug#23038)
5472         * lisp/isearch.el (isearch--describe-regexp-mode): The `description' var
5473           needs to always be a string.  Add the missing default case for the
5474           cond form that ensures that.
5476         Before this bug fix, for the events when `regexp-function' and
5477         `search-default-mode' both were nil, `description' also stayed nil.  So
5478         when `space-before' was non-nil, the "non-string" `description'
5479         (with a value of nil) got passed as an argument to
5480         `replace-regexp-in-string' (where a string was expected).  That caused
5481         the error described in Bug#23038.
5483 2016-03-21  Leo Liu  <sdl.web@gmail.com>
5485         Fix (args-out-of-range 1) error in cursor-sensor--detect
5487         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
5488           hard-code (point-min) as 1 which fails in narrowed buffers.
5490 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5492         Render empty <ul><li><ul> correctly
5494         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
5495         correctly (bug#22964).
5496         (cherry picked from commit 4f6ea3988b66cf132c67fd0cc26d12eb9a300ba1)
5498         Backport:
5500 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5502         Ignore invalid base64 encoded embedded images
5504         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
5505         encoded embedded images (bug#22928).
5506         (cherry picked from commit f2da80d0e1ccd121c4891e869a45aeb9c6b1795d)
5508         Backport:
5510 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5512         Fix <p> and <div> newlines with or without <li> in shr
5514         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
5515         a <li>, if we are, and don't insert newlines there.
5516         (shr-ensure-paragraph): When mixing newlines and paragraph
5517         ensurements, don't insert too many blank lines.
5518         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
5519         new line.
5520         (cherry picked from commit 292921facaff2f02ac4e8602c1f7ecbdcfe7ef45)
5522         Backport:
5524 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
5526         Avoid errors in 'newline'
5528         * lisp/simple.el (newline): Don't barf if invoked with
5529         non-positive argument in the middle of a line.  (Bug#22490)
5531 2016-03-19  Michael Albinus  <michael.albinus@gmx.de>
5533         Fix Bug#23032
5535         * doc/misc/eshell.texi (Arguments): Mention the pipe symbol in
5536         remote file names.  (Bug#23032)
5538 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
5540         Adjudicate review comments in abbrevs.texi
5542         * doc/lispref/abbrevs.texi (Abbrev Files, Abbrev Expansion):
5543         * doc/emacs/abbrevs.texi (Dabbrev Customization): State the
5544         default values of variables.  Suggested by Steve Byrne
5545         <sbb@penguinis.org>.  (Bug#23016)
5547         * admin/release-process (Check manuals): Mark files reviewed by
5548         Steve Byrne.
5550 2016-03-18  Dmitry Gutov  <dgutov@yandex.ru>
5552         Fixup the "normal" matcher; highlight global var symbols, too
5554         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight
5555         operator name symbols with the "normal" matcher (it actually
5556         needed updating).  Highlight global variable symbols, too.
5558 2016-03-18  Marcin Borkowski  <mbork@mbork.pl>
5560         Honor prefix arg in doc-view-next-line-or-next-page
5562         * lisp/doc-view.el (doc-view-next-line-or-next-page): Take the
5563         prefix argument into consideration when continuous scrolling is
5564         not in effect (i.e., by default) (bug#19559).
5566 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
5568         Port to strict C99 offsetof
5570         * src/bidi.c (bidi_copy_it):
5571         * src/lisp.h (CHAR_TABLE_EXTRA_SLOTS):
5572         Use only a single identifier as the second argument of offsetof.
5573         Found by using clang -pedantic.
5575 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
5577         Port to GTK with strict C11 compiler
5579         * src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
5580         Cast from function type to void * where the C standard requires this.
5581         This works around a problem in the prototypes for
5582         g_signal_handler_find and g_signal_handlers_block_by_func, which
5583         use gpointer instead of GCallback.  Found by using gcc -pedantic.
5585 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
5587         Port to GTK with strict C99 compiler
5589         * src/emacsgtkfixed.c: Use workaround for GNOME bug 683906 only
5590         in glib 2.35.6 and earlier, since the bug is fixed in 2.35.7.
5591         * src/emacsgtkfixed.c (EmacsFixedPrivate):
5592         * src/emacsgtkfixed.h (EmacsFixedClass):
5593         Remove duplicate typedef, which strict C99 does not allow (Bug#23003).
5595 2016-03-17  Anders Lindgren  <andlind@gmail.com>
5597         Avoid screen artifacts with new OS X visible bell after scrolling
5599         * src/nsterm.m (EmacsBell): Save NSView when displaying the
5600         visible bell and set `needsDisplay' when removed.
5601         (hide_bell): Trace.
5602         (ns_copy_bits): Trace.
5604 2016-03-17  Michael Albinus  <michael.albinus@gmx.de>
5606         Suppress some Tramp tests for OSX, do not merge with master
5608         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
5609         (tramp--test-utf8): Use it.  (Bug#22145)
5611 2016-03-17  Glenn Morris  <rgm@gnu.org>
5613         * lisp/progmodes/xref.el (xref-buffer-name, xref--window):
5614         Move definitions before use.
5616         * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
5618         * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
5620 2016-03-17  Glenn Morris  <rgm@gnu.org>
5622         Address compilation warnings due to 2016-01-03 mml refactoring.
5624         * lisp/gnus/mml-sec.el (password-cache, mm-encode): Require.
5625         (message-options-get): Autoload.
5626         (message-options-set): Declare.
5627         (mml-secure-cache-passphrase, mml-secure-passphrase-cache-expiry):
5628         Simplify default value.
5629         * lisp/gnus/mml-smime.el (message-options-set): Remove declaration.
5630         * lisp/gnus/mml1991.el, lisp/gnus/mml2015.el:
5631         No longer a need for password-cache.
5633 2016-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
5635         * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp in strings
5637         (bug#22960).
5639 2016-03-16  Glenn Morris  <rgm@gnu.org>
5641         * lisp/dired-x.el (dired-omit-here-always): Correct error message
5642         for 2016-01-25 change.
5644         * lisp/dired-x.el (dired-omit-here-always): Replace undefined function
5645         removed 2016-01-30.
5647         * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
5649 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
5651         Avoid segfaults due to frame image cache being absent
5653         * src/image.c (cache_image): If the frame doesn't have an image
5654         cache, create it.  (Bug#23028)
5656 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
5658         Improve documentation of glyphless-character display
5660         * doc/emacs/display.texi (Text Display): Document and index the
5661         'glyphless-char' face.
5663 2016-03-16  Dmitry Gutov  <dgutov@yandex.ru>
5665         Support safe navigation operator in non-SMIE indentation code
5667         * lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
5668         Support safe navigation operator in non-SMIE indentation code.
5669         Cherry-picked from
5670         https://github.com/ruby/ruby/commit/68e16ddd7961b86e5013e62ae2954e88638de058.
5672 2016-03-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5674         Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
5676         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
5677         assume xsd:base64Binary values are UTF-8 strings.
5678         (soap-decode-xs-basic-type): Likewise.
5679         (soap-invoke): Document xsd:base64Binary handling.
5681 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
5683         Fix Ruby's operator precedence
5685         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
5686         Rearrange the smie-precs->prec2 form.
5688 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
5690         (ruby-interpolation-inside-another-interpolation): New failing test
5692         * test/automated/ruby-mode-tests.el
5693         (ruby-interpolation-inside-another-interpolation):
5694         New failing test.
5696 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
5698         Port to clang 3.7.0 on x86-64
5700         * configure.ac: Use AS_IF so that gl_WARN_ADD’s prerequisites are
5701         not done conditionally.  This helps clang, which needs
5702         -Wunknown-warning-option later when configured with warnings.
5703         * src/editfns.c (invalid_time): Now _Noreturn, since clang isn’t
5704         smart enough to figure this out on its own if warnings are enabled.
5705         (lisp_time_struct): Redo for clarity, and to pacify clang.
5706         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Don’t use
5707         uninitialized locals.  This avoids undefined behavior and pacifies
5708         clang.
5710 2016-03-15  Glenn Morris  <rgm@gnu.org>
5712         * test/automated/package-test.el (package-test-signed): Tweak skip
5713         condition, for hydra.
5715 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
5717         Sync with gnulib
5719         This incorporates:
5720         2016-03-15 time_rz: port to clang -Wunused-const-variable
5721         2016-03-15 select: port more to Intel 2016.1.150 compiler
5722         * lib/sys_select.in.h, lib/time_rz.c: Copy from gnulib.
5724 2016-03-15  Eli Zaretskii  <eliz@gnu.org>
5726         Fix startup of "emacs -nw" on systems that CANNOT_DUMP
5728         * src/xdisp.c (syms_of_xdisp) <resize-mini-windows>: Initialize to
5729         nil.
5731         * lisp/loadup.el <resize-mini-windows>: Set to 'grow-only' after
5732         loading window.el.  (Bug#22975)
5734 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
5736         Do not tokenize a comment before continuation as ';'
5738         * lisp/progmodes/ruby-mode.el (ruby-smie--implicit-semi-p):
5739         Account for a comment right after point.
5741 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
5743         Don't misindent arguments of a method call inside continuation
5745         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
5746         Use smie-indent-virtual instead of smie-rule-parent (bug#23015).
5747         Simplify the traversal loop.
5749 2016-03-14  Stefan Monnier  <monnier@iro.umontreal.ca>
5751         * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_echo_area
5753         (read_key_sequence): Test it here, as before.
5754         (bug#22825).
5756 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
5758         ASCII-only etc/NEWS etc.
5760         * etc/NEWS, nextstep/README: Revert the recently-added curved
5761         quotes, and stick to ASCII.  This typically involves replacing
5762         curved with straight quotes.  Since etc/NEWS is viewed so often by
5763         UTF-8-ignorant tools, rewrite its non-ASCII text to spell out
5764         Unicode, e.g., replace ‘‒’ with ‘U+2012 (FIGURE DASH)’.
5766 2016-03-14  Alan Mackenzie  <acm@muc.de>
5768         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
5770         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
5772         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
5773         rather than just using the cache variable c-state-cache.
5774         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
5775         to c-parse-state from other uses of the parse state cache.
5777         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
5778         c-self-bind-state-cache around the processing, replacing flawed bindings of
5779         c-state-cache.
5781 2016-03-14  Alan Mackenzie  <acm@muc.de>
5783         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
5785         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
5787         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
5788         rather than just using the cache variable c-state-cache.
5789         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
5790         to c-parse-state from other uses of the parse state cache.
5792         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
5793         c-self-bind-state-cache around the processing, replacing flawed bindings of
5794         c-state-cache.
5796 2016-03-14  Kaushal Modi  <kaushal.modi@gmail.com>
5798         Fix Isearch prompt when invoked with an argument
5800         * lisp/isearch.el (isearch--describe-regexp-mode): With
5801         `search-default-mode' set to nil, if user does C-u C-s, the minibuffer
5802         now displays "Regexp I-search: " again.  But if the user has set
5803         `search-default-mode' to t, and then does C-s, the minibuffer now
5804         displays "I-search: " because the default search mode is now regexp
5805         mode.  Comments have been added to explain the priority of conditions
5806         in the `cond' form.  (Bug#22991)
5808 2016-03-14  Cesar Quiroz  <cesar.quiroz@gmail.com>  (tiny change)
5810         Fix a typo in the Emacs manual
5812         * doc/emacs/maintaining.texi (VC Directory Commands): Fix a typo
5813         in a command name.
5815 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
5817         Curved quotes in etc/NEWS etc.
5819         * etc/NEWS, nextstep/README: Prefer curved quotes in the
5820         recently-changed text documentation.  See:
5821         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00860.html
5823 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
5825         Fix some single quotes in documentation
5827         * doc/emacs/anti.texi (Antinews): Avoid confusion in info and PDF
5828         when documenting quoting styles.
5829         * etc/NEWS, nextstep/README: In these plain text files, quote
5830         'like this' consistently, rather than also (sometimes) ‘like this’
5831         or (more often) `like this'.
5833 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
5835         Make lisp-completion-at-point's argument optional
5837         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point): Make
5838         the argument optional, like it was before the rename.
5840 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
5842         Tweak the left precedence of '=>'
5844         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Tweak the left
5845         precedence of '=>', to improve indentation and sexp navigation.
5847 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
5849         Indent '.' relative to the first sibling expression
5851         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
5852         Indent '.' relative to the first sibling expression, instead of the
5853         parent token (bug#17213).
5855 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
5857         Make '.' associative, for easier sexp navigation
5859         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
5860         Make '.' associative, for easier sexp navigation.
5862 2016-03-13  Phillip Lord  <phillip.lord@russet.org.uk>
5864         Revert "Simplify "Visit New File" to "New File""
5866         This reverts commit d457fd9dc782465e1547f74021390c9d5951d6af.
5868 2016-03-12  Phillip Lord  <phillip.lord@russet.org.uk>
5870         Simplify "Visit New File" to "New File"
5872         * doc/emacs/files.texi, lisp/menu-bar.el (menu-bar-file-menu),
5873           lisp/startup.el(normal-mouse-start-screen,
5874           normal-no-mouse-startup-screen): Change label "Visit New File" to "New
5875           File".
5877 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
5879         Update Unicode notes for importing a new Unicode version
5881         * admin/notes/unicode: Mention the need to update otf-script-alist
5882         in fontset.el when importing data files from a new Unicode
5883         version.
5885 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
5887         Import new data files from Unicode 9.0.0beta
5889         * admin/unidata/UnicodeData.txt:
5890         * admin/unidata/Blocks.txt:
5891         * admin/unidata/BidiMirroring.txt:
5892         * admin/unidata/BidiBrackets.txt: Update from Unicode 9.0.0beta.
5893         * admin/unidata/unidata-gen.el (unidata-gen-files): Bind
5894         'coding-system-for-read' to 'utf-8, as various Unicode data files
5895         now actually use non-ASCII characters.
5896         (unidata-setup-list, unidata-get-name): Support the new Tangut
5897         Ideographs block.
5899         * lisp/international/characters.el (standard-case-table): Add new
5900         characters from Unicode 9.0.0.
5901         (standard-category-table): Add Arabic block u+08A0..u+08FF.  Add
5902         Cyrillic Extended-C block.
5903         (char-width-table): Update ranges per Unicode 9.0.0.
5904         * lisp/international/fontset.el (script-representative-chars): Add
5905         new scripts defined by Unicode 9.0.0.
5906         (otf-script-alist): Add new OTF script tags.
5907         * lisp/international/mule-cmds.el (ucs-names): Update ranges per
5908         Unicode 9.0.0 additions.
5910 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
5912         Avoid errors in forms-mode when default major mode is text
5914         * lisp/forms.el (forms-mode): Bind
5915         change-major-mode-with-file-name to nil when calling
5916         set-visited-file-name.  (Bug#22982)
5918 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
5920         Avoid crashes at startup on systems that CANNOT_DUMP
5922         * src/xdisp.c (syms_of_xdisp) <redisplay--inhibit-bidi>: New
5923         boolean variable.
5924         (init_iterator, reseat_to_string)
5925         (Fcurrent_bidi_paragraph_direction)
5926         (Fbidi_find_overridden_directionality): Use
5927         redisplay--inhibit-bidi instead of purify-flag, to determine when
5928         it's safe to reorder bidirectional text.
5930         * lisp/loadup.el (redisplay--inhibit-bidi): Set to t at the
5931         beginning of the file.  Reset to nil when charprop.el is
5932         successfully loaded, or when we are going to dump, whichever
5933         happens last.  (Bug#22975)
5935 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
5937         Fix documentation of seq.el functions
5939         * doc/lispref/sequences.texi (Sequence Functions): Fix typos.  Add
5940         cross-references.  Fix formatting.  (Bug#22992)
5942 2016-03-11  Dmitry Gutov  <dgutov@yandex.ru>
5944         Support Ruby 2.3.0's safe navigation operator
5946         * lisp/progmodes/ruby-mode.el (ruby-smie--forward-token)
5947         (ruby-smie--backward-token): Tokenize '&.' as '.'.
5948         (ruby-smie--implicit-semi-p): Check for possible '&' before '.'.
5950         * test/indent/ruby.rb: Add an example using safe navigation
5951         operator.  Fix a syntax error in existing example.
5953 2016-03-11  John Wiegley  <johnw@newartisans.com>
5955         Update Emacs manual section related to character folding
5957         * doc/emacs/search.texi: Character folding is not on by default.
5959 2016-03-11  Eli Zaretskii  <eliz@gnu.org>
5961         Update admin/notes/unicode
5963         * admin/notes/unicode: Update the list of files from the UCD we
5964         are using.  Mention the possible need to change 'ucs-names' when
5965         importing a new version of the Unicode Standard.
5967 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
5969         Add symref-filepattern entries for c?perl-mode
5971         * lisp/cedet/semantic/symref/grep.el
5972         (semantic-symref-filepattern-alist): Add entries for perl-mode and
5973         cperl-mode.
5975 2016-03-10  Ken Raeburn  <raeburn@raeburn.org>
5977         Don't use XRANDR 1.3 extensions if the server doesn't support them.
5979         * src/xterm.h (struct x_display_info): Add fields to save XRANDR
5980         version number.
5981         * src/xfns.c (x_get_monitor_attributes): Save the version numbers
5982         after querying the X server.
5983         (x_get_monitor_attributes_xrandr): Don't use XRRGetOutputPrimary or
5984         XRRGetScreenResourcesCurrent if the server doesn't support at least
5985         RANDR version 1.3.  Conditionalize the code blocks on compiling
5986         against library version 1.3 or better, rather than feature tests for
5987         each function.
5988         * configure.ac: Stop testing for those two functions.
5990 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
5992         Sync with gnulib
5994         This incorporates:
5995         2016-03-08 intprops: make .h file license match module
5996         2016-03-08 acl: fix missing return on Cygwin
5997         2016-03-05 extern-inline: port to PGI CC
5998         * doc/misc/texinfo.tex, lib/intprops.h, lib/set-permissions.c:
5999         * m4/extern-inline.m4:
6000         Copy from gnulib.
6002 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
6004         Rework C source files to avoid ^(
6006         Work around Bug#22884 by rewording comments and strings to avoid ‘(’
6007         at the start of a line unless it starts a function.  This change
6008         is a short-term hack; in the longer run we plan to fix cc-mode’s
6009         performance for C files that have ‘(’ at the start of a line in a
6010         comment or string.
6012 2016-03-10  Eli Zaretskii  <eliz@gnu.org>
6014         By default, etags produces unqualified Perl tag names
6016         * lib-src/etags.c (Perl_functions): Produce unqualified names,
6017         unless -Q was specified.
6018         (print_help): Update the description of -Q.
6020         * doc/man/etags.1: Update the documentation of -Q.
6022         * test/etags/ETAGS.good_1:
6023         * test/etags/ETAGS.good_2:
6024         * test/etags/ETAGS.good_3:
6025         * test/etags/ETAGS.good_4:
6026         * test/etags/ETAGS.good_5:
6027         * test/etags/CTAGS.good: Adapt the expected test results to the
6028         changed Perl functionality.
6030 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6032         Indent methods with keyword names correctly
6034         * lisp/progmodes/ruby-mode.el (ruby-smie--at-dot-call):
6035         Rename to ruby-smie--before-method-name.  Now also check if we're
6036         after a 'def' keyword.  Update both callers.
6038 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6040         Propertize character literals and special global variables differently
6042         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Propertize
6043         character literals and global variables with special names with
6044         prefix and symbol syntax classes, for SMIE to tokenize them
6045         together automatically.
6046         (ruby-font-lock-keywords): Fix an old regression in highlighting
6047         character literals.
6049 2016-03-09  John Wiegley  <johnw@newartisans.com>
6051         Change how /etc/NEWS presents character folding
6053         * NEWS: Note that character folding is no longer the default.
6055 2016-03-09  John Wiegley  <johnw@newartisans.com>
6057         Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding off by default""
6059         This reverts commit a91b4b51ddf2575d821adb8b84fdf32cff83886e.
6061 2016-03-09  Andreas Schwab  <schwab@linux-m68k.org>
6063         Properly handle lambda as read function (bug 22961)
6065         * src/lread.c (readchar): Be more strict about checking for
6066         string in cons for read_vector.
6067         (unreadchar): Likewise.
6069 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6071         Propertize operator symbol names with symbol syntax class
6073         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
6074         Do it here.
6075         (ruby-font-lock-keywords): Instead of handling them here.  Leave
6076         highlighting them to the "normal" matcher, because now we can.
6077         (ruby-smie--forward-token, ruby-smie--backward-token):
6078         Likewise, don't special-case operator symbols anymore.
6079         (ruby-smie--args-separator-p): Simplify the regexp, match operator
6080         names with \s_.
6081         (ruby-smie--implicit-semi-p): Handle the special cases of ? and =
6082         at EOL the same way: check if the character has been assigned the
6083         symbol syntax class by syntax-propertize.
6085 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6087         Stop recognizing :#{} as symbol in ruby-mode
6089         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Remove
6090         the weird part that recognized colon followed by interpolation
6091         construct without quotes (e.g. ':#{abc}') as symbol, which is just a
6092         syntax error in any modern version of Ruby.  Fix nearby bug reference.
6094 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6096         Allow using the left shift operator without spaces on both sides
6098         * lisp/progmodes/ruby-mode.el (ruby-singleton-class-p): Rename to
6099         ruby-verify-heredoc, reverse the meaning of the return value, and
6100         short-circuit if preceded by a symbol not separated by whitespace.
6102         * test/automated/ruby-mode-tests.el (ruby-no-heredoc-left-shift)
6103         (ruby-no-heredoc-class-self): New tests.
6105 2016-03-08  Andreas Schwab  <schwab@linux-m68k.org>
6107         Properly handle unquoting in wdired (bug 22938)
6109         The recorded old names are not quoted, don't unquote them.
6111         * lisp/wdired.el (wdired-normalize-filename): Add argument
6112         unquotep, only unquote if non-nil.
6113         (wdired-get-filename): Don't unquote the old file name.
6114         (wdired-get-previous-link): Always unquote.
6116 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6118         Allow splat operator before percent literal
6120         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
6121         Allow splat operator before percent literal.
6123 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6125         Don't apply the return value of goto-char as syntax class
6127         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Don't
6128         apply the return value of goto-char as syntax class.
6130 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6132         Guard against nested percent literals
6134         * lisp/progmodes/ruby-mode.el
6135         (ruby-syntax-propertize-percent-literal):
6136         Don't check the syntax status.
6137         (ruby-syntax-propertize): Check it here.  And also guard against
6138         being in a larger percent literal.
6140         * test/automated/ruby-mode-tests.el
6141         (ruby-no-nested-percent-literals): New test.
6143 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6145         Recognize iuwu-mod after an escaped newline
6147         * lisp/progmodes/ruby-mode.el (ruby-smie--bosp): Check if the
6148         newline is escaped.
6149         (ruby-smie-rules): Indent iuwu-mod after an escaped newline
6150         correctly.
6152 2016-03-06  Andreas Schwab  <schwab@linux-m68k.org>
6154         Fix symbolic mode string conversion for s and t
6156         * lisp/files.el (file-modes-char-to-right): Fix values for ?s and
6157         ?t.
6158         (file-modes-symbolic-to-number): Default to a for ts permissions.
6160 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6162         Update 'ucs-names' database
6164         * lisp/international/mule-cmds.el (ucs-names): Update used and
6165         unused ranges from the latest UnicodeData.txt.
6167 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6169         Improve doc string of 'shell-command'
6171         * lisp/simple.el (shell-command): Mention that COMMAND is prompted
6172         for.  (Bug#22926)
6174 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6176         Make the code in movemail_strftime more general
6178         * lib-src/movemail.c (movemail_strftime): Transform the format
6179         string passed by the caller instead of using a separate format
6180         string.
6182 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6184         Speed up redisplay of binary files with long series of nulls
6186         * src/bidi.c (bidi_resolve_weak): Avoid entering a loop searching
6187         for a character needed for resolving the type of a series of BN
6188         and ET characters, as required by rule W5 of UAX#9, if the results
6189         of the resolution are known in advance, because we are at level
6190         zero, and the previous strong character was L.
6191         (bidi_resolve_neutral): Partially resurrect the optimization for a
6192         long series of control characters in an otherwise strictly L2R
6193         text.
6194         (bidi_level_of_next_char): Don't enter the loop that searches for
6195         a paragraph separator if the current character is already at base
6196         embedding level.  (Bug#22739)
6198 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
6200         Remove the highlighting support for quoting 'like this' inside Lisp docstrings
6202         Remove the highlighting support for quoting 'like this' inside
6203         Lisp docstrings.  This part of
6204         c4151ebe15479de4c2e511b068cdf9af6a4576cf seems to have been
6205         unintentional, considering substitute-command-keys gives wrong
6206         output for such usage.
6207         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
6208         (lisp-cl-font-lock-keywords-2): Do not highlight text between two
6209         straight quotes as symbol.
6211 2016-03-05  Paul Eggert  <eggert@cs.ucla.edu>
6213         Restore leading space in movemail pop output
6215         * lib-src/movemail.c (movemail_strftime) [WINDOWSNT]: New function.
6216         (strftime) [WINDOWSNT]: New macro.
6217         (mbx_delimit_begin): Go back to previous version of this code,
6218         now that there’s a special-purpose WINDOWSNT implementation
6219         that should do the right thing.  That way, the output continues
6220         to use leading space rather than leading zero for day of month.
6222 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
6224         Fix bidi-paragraph-direction in Rmail view buffer
6226         * lisp/mail/rmail.el (rmail-show-message-1): Reset
6227         bidi-paragraph-direction to nil before formatting the message for
6228         display.
6230 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
6232         Don't misindent computed property generator methods
6234         * lisp/progmodes/js.el (js--looking-at-operator-p):
6235         Don't misindent computed property generator methods
6236         (https://github.com/mooz/js2-mode/issues/317).
6238 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
6240         Fix mbox files produced by movemail on MS-Windows
6242         * lib-src/movemail.c (mbx_delimit_begin): Use portable strftime
6243         format specifiers, as at least the MS-Windows version of strftime
6244         doesn't support %e and %T.
6246 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
6248         doc string file descriptor exhaustion fix
6250         * src/doc.c (get_doc_string): Move newly-added check to a better
6251         location (Bug#22814).
6253 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
6255         Fix Bug#22814
6257         * src/doc.c (get_doc_string): Raise an error in case too many
6258         files are open.  (Bug#22814)
6260 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
6262         Fix insertion of edited servers in the dribble file
6264         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
6265         insert explicit newlines, because they're quoted (bug#22903).
6267         Backport:
6269         (cherry picked from commit ca4e30058eba0531f38fff75f14734acffab84ea)
6271 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
6273         Fix previous fix of enlarge-/shrink-window
6275         * lisp/window.el (enlarge-window, shrink-window): Consistently
6276         signal user-error instead of error.  Resize minibuffer window by
6277         delta lines instead of pixels.  When a window cannot be resized,
6278         signal an error only when this function was invoked by a command
6279         in the enlarge-/shrink-window group (this restores the behavior
6280         before the fix of bug#22723 for the non-interactive case).
6282 2016-03-03  Artur Malabarba  <bruce.connor.am@gmail.com>
6284         * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
6286 2016-03-03  Mark Oteiza  <mvoteiza@udel.edu>
6288         Complete temperature units in calc-convert-temperature
6290         * lisp/calc/calc-units.el (calc-convert-temperature): Complete with
6291         temperature units in math-standard-units.
6293 2016-03-02  Dmitry Gutov  <dgutov@yandex.ru>
6295         Make sure to use case-sensitive search
6297         * lisp/progmodes/xref.el (xref-collect-references): Make sure to
6298         use case-sensitive search.
6300 2016-03-02  Ulf Jasper  <ulf.jasper@web.de>
6302         Prevent infinite loop on not-well-formed xml. (Bug#16344)
6304         * lisp/xml.el (xml-parse-tag-1): Prevent inifinite loop. (Bug#16344)
6305         * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add
6306           test cases for Bug#16344.
6308 2016-03-02  Alan Third  <alan@idiocy.org>
6310         Add the missing test case for the previous patch
6312         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
6313         any processing.
6314         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
6315         DABBREV--SUBSTITUTE-EXPANSION.
6316         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
6318 2016-03-02  Alan Third  <alan@idiocy.org>
6320         Use the correct dabbrev expansion
6322         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
6323         any processing.
6324         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
6325         DABBREV--SUBSTITUTE-EXPANSION.
6326         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
6328 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
6330         Bump version to 25.0.92
6332         * README:
6333         * configure.ac:
6334         * msdos/sed2v2.inp: Bump version to 25.0.92.
6336 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
6338         * etc/AUTHORS: Update the AUTHORS file
6340 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
6342         authors.el updates
6344         * admin/authors.el (authors-ignored-files): Addition.
6346 2016-03-02  Michael Albinus  <michael.albinus@gmx.de>
6348         Fix Bug#22859
6350         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
6351         event in case of kqueue and file1 is nil.  (Bug#22859)
6353 2016-03-01  Eli Zaretskii  <eliz@gnu.org>
6355         Fix reordering of bidi text in an isolate inside an override
6357         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
6358         of FSI with either LRI or RLI, as determined by the first strong
6359         directional character in the isolate.  This prevents failure to
6360         isolate when the FSI...PDI text is inside a directional override.
6361         (Bug#22786)
6363 2016-03-01  Alan Mackenzie  <acm@muc.de>
6365         Document c-guess-basic-syntax in the CC Mode manual.
6367         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
6368         pxrefs to Custom Line-Up and Other Indentation.
6369         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
6370         Syntactic Analysis.
6372 2016-03-01  Michael Albinus  <michael.albinus@gmx.de>
6374         Fix targets in test/automated/Makefile.in
6376         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
6377         empty target and target all.
6379 2016-03-01  Leo Liu  <sdl.web@gmail.com>
6381         Comment on last change to define-derived-mode
6383         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
6385 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
6387         Allow binding `url-mime-accept-string'
6389         * lisp/url/url-http.el (url-http): Allow binding
6390         `url-mime-accept-string' (bug#22855).
6392         Backport:
6394         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
6396 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
6398         Also allow setting the paragraph direction to nil
6400         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
6401         setting the paragraph direction to nil ("auto").
6403 2016-02-29  Anders Lindgren  <andlind@gmail.com>
6405         Made the new OS X visible bell more visible.
6407         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
6408           "caution" image five times, as the image in its original size
6409           was hard to see.
6411 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
6413         Use the correct background color when filling nested <divs>
6415         * lisp/net/shr.el (shr-face-background): Return the first
6416         background, because that's the one that's visible (bug#22680).
6418         Backport:
6420         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
6422 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
6424         Make <div> in <li> not insert extra newlines
6426         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
6427         extra newlines (bug#19587).
6429         Backport:
6431         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
6433 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
6435         Uncomment the next-error-function integration in xref
6437         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
6438         Uncomment the next-error-function integration
6439         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
6441 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
6443         Remove the word "valid", to avoid ambiguity
6445         * doc/emacs/maintaining.texi (Identifier Search)
6446         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
6448 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
6450         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
6452 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
6454         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
6456         * etc/NEWS:
6457         * etc/PROBLEMS: Mention this.
6459         * lisp/autorevert.el (global-auto-revert-mode): Set
6460         `auto-revert-use-notify' to nil.  (Bug#22814)
6462 2016-02-28  Paul Eggert  <eggert@cs.ucla.edu>
6464         * etc/TODO: Minor quoting and grammar fixes.
6466 2016-02-28  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
6468         Fix ModelSim error parsing
6470         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
6471         ModelSim error parsing (bug#5768).
6473 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
6475         Make parse-time-string-chars faster
6477         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
6478         up the code (backport:).
6480 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
6482         Add a eww command to toggle paragraph direction
6484         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
6485         command and keystroke.
6487         * doc/misc/eww.texi (Advanced): Mention the `D' command.
6489 2016-02-27  Glenn Morris  <rgm@gnu.org>
6491         * nextstep/WISHLIST: Merge into etc/TODO and remove.
6493         * etc/TODO: Merge in items from nextstep/WISHLIST.
6494         * nextstep/README: Update for this change.
6496 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
6498         Fix char signedness issue in bidi code
6500         * src/dispextern.h (struct bidi_t): Change type of resolved_level
6501         and isolate_level to signed char.  (Bug#22830)
6503 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
6505         * lib-src/pop.c (socket_connection): Fix format string.
6507 2016-02-27  Eli Zaretskii  <eliz@gnu.org>
6509         Avoid inflooping in thing-at-point-looking-at
6511         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
6512         with regular expressions whose matching doesn't move point.
6513         (Bug#22756)
6514         Describe the argument DISTANCE in the doc string.
6516 2016-02-27  Leo Liu  <sdl.web@gmail.com>
6518         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
6520 2016-02-26  Michael Albinus  <michael.albinus@gmx.de>
6522         etc/PROBLEMS: Mention problems with using file descriptors
6524         * etc/PROBLEMS: Mention problems with using file descriptors
6525         of kqueue file notification library.
6527 2016-02-26  Kaushal Modi  <kaushal.modi@gmail.com>
6529         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
6531 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
6533         Remove unneeded workaround in xftfont.c
6535         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
6536         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
6537         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
6539 2016-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
6541         * lisp/saveplace.el (save-place-local-mode): New minor mode
6543         (toggle-save-place): Define as obsolete alias.
6544         (save-place--setup-hooks): New function.
6545         (save-place-mode): Use it.
6547 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
6549         Fix redisplay on a TTY after 'make-frame'
6551         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
6552         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
6554 2016-02-25  Alan Mackenzie  <acm@muc.de>
6556         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
6558         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
6559         `syntax-after' to ensure syntax-table text properties are respected.
6561 2016-02-25  Magnus Henoch  <magnus.henoch@gmail.com>
6563         Input method polish-slash should not use keyboard translation
6565         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
6566         polish-slash should not use keyboard translation (bug#19081).
6568 2016-02-25  Chris Feng  <chris.w.feng@gmail.com>
6570         Fix an assertion
6572         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
6573         implies start == 0) separately.
6575 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
6577         Fix 'toggle-save-place'
6579         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
6580         support save-place in the buffer.  Autoload the command.
6582 2016-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
6584         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
6586         * src/keyboard.c (read_key_sequence): Don't inadvertently set
6587         immediate_echo when we don't want any echo-keystrokes.
6588         (echo_keystrokes_p): Move earlier.
6590 2016-02-24  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
6592         Minor fixes in calculator.el
6594         * lisp/calculator.el (calculator-mode-map): Bind `E' for
6595         `calculator-exp'.
6596         (calculator-last-input): Fix a bug with pressing F1.
6597         (Bug#20764)
6599 2016-02-24  Anders Lindgren  <andlind@gmail.com>
6601         Update HISTORY section in readme for the NextStep interface.
6603         * nextstep/README: Update HISTORY after suggestion
6604         from former maintainer Adrian Robert.
6606 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
6608         Improve documentation of 'save-place-mode'
6610         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
6611         turning on 'save-place-mode' globally.
6613         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
6614         on the mode in all buffers.
6616 2016-02-24  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
6618         Allocate glyph matrices for the initial frame
6620         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
6622         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
6624 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
6626         Fix white space in last checkin
6628 2016-02-24  Dima Kogan  <gnuplot@dima.secretsauce.net>
6630         Make `insert-pair' always leave the cursor where documented
6632         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
6633         insert-pair states that after insertion, the point ends up
6634         after the opening character. This was not true if the pair was
6635         inserted to surround a region (bug#16949).
6637 2016-02-24  Kaushal Modi  <kaushal.modi@gmail.com>
6639         etc/NEWS: Mention the new second parameter to `package-install'
6641         * etc/NEWS: Mention the new second parameter to
6642         `package-install' (bug#22784).
6644 2016-02-24  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
6646         Highlight assignments in Makefiles more correctly
6648         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
6649         Highlight assignments preceded by a TAB character correctly
6650         (bug#20787).
6653         Backport:
6655         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
6657 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
6659         Improve documentation of focus-related hooks
6661         * doc/lispref/commands.texi (Focus Events): Mention focus-related
6662         hooks.  (Bug#21728)
6664 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
6666         Further improve doc string of 'disable-point-adjustment'
6668         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
6669         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
6671 2016-02-23  Michael Albinus  <michael.albinus@gmx.de>
6673         Further adaptions in file-notify-tests.el for w32notify
6675         * test/automated/file-notify-tests.el
6676         (file-notify--test-read-event-timeout, file-notify--test-timeout):
6677         Decrease values.
6678         (file-notify-test03-autorevert)
6679         (file-notify-test04-file-validity)
6680         (file-notify-test05-dir-validity): Run tests also for w32notify.
6681         (file-notify-test08-watched-file-in-watched-dir):
6682         Adapt expected events for w32notify.
6684 2016-02-23  Jan Tatarik  <jan.tatarik@gmail.com>
6686         Don't bug out on localised dates in gnus-icalendar
6688         * lisp/gnus/gnus-icalendar.el
6689         (gnus-icalendar-event:org-timestamp): Don't bug out on
6690         localised dates.
6692 2016-02-23  Drew Adams  <drew.adams@oracle.com>
6694         (ls-lisp-insert-directory): Make -B work
6696         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
6697         (bug#20776).
6699         Backport:
6701         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
6703 2016-02-23  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
6705         Make buttons in header lines work
6707         * lisp/help-mode.el (help-button-action): `help-xref-button' in
6708         header line doesn't work (bug#21024).
6710         Backport:
6712         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
6714 2016-02-23  Christopher Wellons  <wellons@nullprogram.com>
6716         Make setf for frame-height/width work again
6718         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
6719         frame-height/width work again (bug#21979).
6721 2016-02-23  Łukasz Stelmach  <stlman@poczta.fm>
6723         Encode header strings before printing
6725         * lisp/ps-print.el (ps-generate-header-line): Encode the
6726         header strings to avoid problems with non-ASCII headers
6727         (bug#22611).
6729         Backport:
6731         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
6733 2016-02-23  Nicolas Richard  <youngfrog@members.fsf.org>
6735         (cl-union): Do not ignore :test argument when lists are equal.
6737         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
6739         * test/automated/cl-seq-tests.el: New file (bug#22729).
6741 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
6743         Add `isearch' to `basic-faces'
6745         * doc/lispref/display.texi (Basic Faces): Mention the isearch
6746         and lazy-highlight faces.
6748         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
6749         group, too (bug#22760).
6751 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
6753         Make $, : and @ "prefix characters" in ruby-mode
6755         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
6756         syntax classes of $, : and @ to "prefix character"
6757         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
6758         (ruby-syntax-propertize): Undo that specifically for colons
6759         followed by an opening paren or bracket.
6760         (ruby-font-lock-keyword-beg-re): Include colon character.
6761         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
6762         not being a symbol constituent anymore.
6764 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
6766         Make find-tag-default-bounds more strict
6768         * lisp/subr.el (find-tag-default-bounds): Delegate to
6769         bounds-of-thing-at-point (bug#22692).
6771 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
6773         Minor fixes in filenotify.el
6775         * lisp/filenotify.el (top): Require 'cl-lib.
6776         (file-notify--rm-descriptor)
6777         (file-notify--event-watched-file): Use cl-caadr.
6778         (file-notify-callback): Handle also `ignore' events from inotify.
6780 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
6782         Additional fixes for file notification
6784         * lisp/filenotify.el (top): Require 'cl when compiling.
6785         (file-notify--event-watched-file): New defun.
6786         (file-notify--rm-descriptor, file-notify-callback):
6787         Handle case of several monitors running in parallel.
6789         * test/automated/file-notify-tests.el
6790         (file-notify--test-event-test): Simplify test.
6791         (file-notify--test-with-events): Get rid of outer definition.
6792         Check also results of tests performed in callbacks.
6793         (file-notify-test02-events): No wrapping when calling
6794         `file-notify-rm-watch'.  No special checking for callback tests.
6795         (file-notify-test07-backup): Adapt expected events for gfilenotify.
6796         (file-notify-test08-watched-file-in-watched-dir): Improve.
6798 2016-02-22  Eli Zaretskii  <eliz@gnu.org>
6800         Fix documentation of 'global-disable-point-adjustment'
6802         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
6803         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
6805 2016-02-22  Daiki Ueno  <ueno@gnu.org>
6807         Set file modes of pinentry socket for extra safety
6809         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
6810         (pinentry-start): Change the file modes of the socket file to 0700.
6811         This is just for extra safety since the parent directory is already
6812         protected with `server-ensure-safe-dir'.
6814 2016-02-22  Daiki Ueno  <ueno@gnu.org>
6816         Clarify GnuPG version compatibility chapter
6818         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
6819         description a bit clearer.
6821 2016-02-22  Daiki Ueno  <ueno@gnu.org>
6823         Revert "Change the default socket location for pinentry"
6825         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
6826         It turned out that the address is fixed in Pinentry itself.
6828 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
6830         Kill off xref--display-history
6832         Now that the core workflow keeps the xref window visible, there's
6833         less value in storing this history.  And it never was
6834         comprehensive enough to undo scrolling changes.
6835         * lisp/progmodes/xref.el (xref--display-history)
6836         (xref--save-to-history, xref-quit): Remove.
6837         (xref--show-pos-in-buf): Update accordingly.
6838         (xref--xref-buffer-mode-map): Remove xref-quit binding.
6840 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
6842         Keep the xref buffer visible until the user quits it explicitly
6844         * lisp/progmodes/xref.el (xref--pop-to-location):
6845         Rename WINDOW argument to ACTION.
6846         (xref--with-dedicated-window): New macro.
6847         (xref--show-pos-in-buf): Rename from `xref--display-position'.
6848         Add and handle new argument, SELECTED.  Use the above macro.
6849         (xref--show-location): Add SELECTED argument.
6850         (xref-show-location-at-point): Make an effort to avoid the
6851         original window when showing the location.
6852         (xref-goto-xref): Don't quit the xref window (bug#20487 and
6853         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
6854         (xref--query-replace-1): Use xref--with-dedicated-window as well.
6855         (xref--next-error-function): Call xref--show-location instead of
6856         xref--pop-to-location.
6857         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
6858         Only pass that value to xref--pop-to-location.  Pass the current
6859         selected window to xref-show-xrefs-function as the `window'
6860         property.
6861         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
6862         to DISPLAY-ACTION as well.
6864 2016-02-21  Daiki Ueno  <ueno@gnu.org>
6866         Change the default socket location for pinentry
6868         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
6869         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
6870         ~/.emacs.d/pinentry.
6871         (pinentry-start): Change the file modes of the socket file to 0700.
6872         This is just for extra safety since the parent directory is already
6873         protected with `server-ensure-safe-dir'.
6875 2016-02-21  Daiki Ueno  <ueno@gnu.org>
6877         Mention how to enable pinentry feature
6879         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
6880         * lisp/net/pinentry.el: Likewise.
6882 2016-02-21  Paul Eggert  <eggert@cs.ucla.edu>
6884         Sync with gnulib
6886         This incorporates:
6887         2016-02-10 stdalign: port to older HP and IBM cc
6888         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
6890 2016-02-21  David Engster  <deng@randomsample.de>
6892         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
6894         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
6895           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
6896           not an idle hook, so it's not appropriate to call it there. It will
6897           already be called in the `semantic-idle-work-core-handler', which
6898           runs when Emacs is actually idle.
6900 2016-02-21  David Engster  <deng@randomsample.de>
6902         Restore point when writing semantic table to disk
6904         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
6905           `semantic-fetch-tags' in `save-excursion', since it might move point
6906           in current buffer. (Bug #22287)
6908 2016-02-21  Daiki Ueno  <ueno@gnu.org>
6910         Mention pinentry.el in epa manual
6912         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
6913         describing the differences between three GnuPG branches, and how
6914         to enable pinentry.el.
6915         (Caching Passphrases): Add xref to the compatibility chapter.
6917 2016-02-21  Michael Albinus  <michael.albinus@gmx.de>
6919         Fix Bug#22736
6921         * lisp/filenotify.el (file-notify-callback): Use the proper
6922         descriptor when calling the callback.  (Bug#22736)
6924         * test/automated/file-notify-tests.el
6925         (file-notify--test-event-handler): Deactivate trace.
6926         (file-notify-test08-watched-file-in-watched-dir): Bind
6927         `file-notify--test-tmpfile' temporarily in `dir-callback'.
6929 2016-02-21  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
6931         Grammar fix in doc string
6933         * lisp/custom.el (defgroup): Grammar fix in doc string.
6935 2016-02-20  Daiki Ueno  <ueno@gnu.org>
6937         Naming fix for consistency
6939         * lisp/epg-config.el (epg-find-configuration): Rename from
6940         `epg-configuration-find' to be consistent with other epg-* functions.
6941         Change all callers.
6943 2016-02-20  Daiki Ueno  <ueno@gnu.org>
6945         Prefer customized value for GnuPG executable
6947         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
6948         configuration if it is already set with custom.  (Bug#22747)
6950 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
6952         Fix memory reservation on MS-Windows
6954         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
6955         units.  This avoids leaving gaps in reserved memory regions that
6956         no one can use, since memory reservation must produce 64KB-aligned
6957         addresses.  (Bug#22526)
6959 2016-02-20  Anders Lindgren  <andlind@gmail.com>
6961         Update NextStep readme and add wish list.
6963         * nextstep/README: Rewritten from scratch. New sections on
6964         "History", "Overview of Cocoa and Objective-C", "Guidelines",
6965         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
6966         * nextstep/WISHLIST: New file containing list of issues and ideas
6967         associated with the NS port of Emacs.
6969 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
6971         Report also result in `file-notify--test-event-handler'
6973 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
6975         Improve file-notify-test08-watched-file-in-watched-dir
6977         * test/automated/file-notify-tests.el (file-notify--test-desc2):
6978         New variable.
6979         (file-notify--test-cleanup): Use it.
6980         (file-notify--test-event-handler): Enable trace.
6981         (file-notify-test08-watched-file-in-watched-dir): Tag it as
6982         :expensive-test.  Rewrite callbacks to use
6983         `file-notify--test-event-handler'.  Read events in loop.  Check
6984         `file-notify--test-results'.
6985         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
6987 2016-02-20  Stephen Berman  <stephen.berman@gmx.net>
6989         Fix todo-mode item date editing bugs
6991         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
6992         range error by making sure the value of the numerical month date
6993         component cannot be nil.  Prevent wrong type error on trying to edit
6994         day number in February by making sure numerical instead of string
6995         value of the year component is passed to todo-read-date.
6996         (todo-read-date): When using the numerical month date component make
6997         sure to use `*' for an arbitrary month instead of its numerical value.
6999 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
7001         Fix "[:upper:]" for non-ASCII characters
7003         * src/regex.c (re_match_2_internal): Support [:upper:] and
7004         [:lower:] for non-ASCII characters.  (Bug#18150)
7006 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
7008         Allow customising the article mode cursor behavior
7010         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
7012         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
7013         (gnus-article-mode): Use it.
7015 2016-02-20  Ari Roponen  <ari.roponen@gmail.com>
7017         Use pop-to-buffer-same-window in woman.el
7019         * lisp/woman.el (woman-really-find-file): Work around going to
7020         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
7021         (WoMan-find-buffer): Ditto.
7023 2016-02-20  Tassilo Horn  <tsdh@gnu.org>
7025         New filenotify test for bug#22736
7027         * test/automated/file-notify-tests.el
7028         (file-notify-test08-watched-file-in-watched-dir):
7029         (file-notify--test-desc1): New filenotify test for bug#22736
7031 2016-02-20  Marcin Borkowski  <mbork@mbork.pl>
7033         Report critical battery errors
7035         * lisp/battery.el (battery-pmset): Report critical battery
7036         errors (bug#18157).
7038 2016-02-19  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
7040         Make eww message toggling message clearer
7042         * lisp/net/eww.el (eww-toggle-fonts): Make the message
7043         clearer.
7045 2016-02-19  Mark Oteiza  <mvoteiza@udel.edu>
7047         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
7049 2016-02-18  Martin Rudalics  <rudalics@gmx.at>
7051         Fix bugs in window resizing code
7053         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
7054         parenthesis.
7055         (shrink-window, enlarge-window): Fix bug#22723 where windows
7056         with preserved size would not get resized.  Also now signal an
7057         error when the window cannot be shrunk or enlarged as requested.
7059 2016-02-17  Eli Zaretskii  <eliz@gnu.org>
7061         Fix decoding DOS EOL in a unibyte buffer
7063         * src/coding.c (decode_eol): Loop over bytes, not characters.
7064         (Bug#5251)
7066 2016-02-17  Alan Mackenzie  <acm@muc.de>
7068         Correct c-parse-state cache manipulation error.
7070         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
7071         comparison bound.  Amend comments.
7073 2016-02-17  Daiki Ueno  <ueno@gnu.org>
7075         Take advantage of new GnuPG version check function
7077         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
7078         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
7079         is usable.
7081 2016-02-17  Daiki Ueno  <ueno@gnu.org>
7083         Make GnuPG version check robuster
7085         We changed the default gpg program to "gpg2" from "gpg" in the commit
7086         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
7087         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
7088         series.  Check the actual version of "gpg2" at run time, and properly
7089         divert to "gpg" if necessary.
7090         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
7091         (epg-config--program-alist): New variable.
7092         (epg--configurations): New variable.
7093         (epg-configuration-find): New function.
7094         (epg-config--make-gpg-configuration): New function.
7095         (epg-config--make-gpgsm-configuration): New function.
7096         (epg-configuration): Mark as obsolete.
7097         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
7099 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
7101         Fix x-load-color-file pointer signedness
7103         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
7104         For sscanf and int *, use %d, not %u.
7105         Problem found on Ubuntu 15.10 x32, which lacks X support.
7107 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
7109         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
7111 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7113         Follow convention for greek letter constants.
7115         * lisp/calc/calc-units.el (math-standard-units):
7116         Add "sigma" and alias σ to it.
7118 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7120         Add Stefan-Boltzmann constant to calc units table.
7122         * lisp/calc/calc-units.el (math-standard-units):
7123         Add Stefan-Boltzmann constant.
7125 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7127         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
7129 2016-02-16  Glenn Morris  <rgm@gnu.org>
7131         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
7133         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
7134         Prefill with relevant elements for term/xterm.
7136 2016-02-16  Tassilo Horn  <tsdh@gnu.org>
7138         Fix soffice UserInstallation-URL for Windows
7140         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
7141         UserInstallation-URL when calling soffice on Windows.
7143 2016-02-16  Lars Ingebrigtsen  <larsi@gnus.org>
7145         Fix display of <pre> elements
7147         * lisp/net/eww.el (eww-display-html): Remove CRLF before
7148         parsing so that <pre> elements don't render with ^M at the end
7149         of the lines.
7151 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7153         Minor fixes in global-auto-composition-mode
7155         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
7156         Produce prettier names of globalized minor modes.
7157         * lisp/composite.el (global-auto-composition-mode): Make it a
7158         globalized mode.  (Bug#22682)
7160 2016-02-15  Alan Mackenzie  <acm@muc.de>
7162         Allow arithmetic operators inside C++ template constructs.
7164         Fixes debbugs #22486.  This corrects the previous patch with this message
7165         which was empty.
7167         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
7168         variable.
7169         (c-<>-notable-chars-re): New language variable.
7171         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
7172         c-<>-notable-chars-re in place of the former fixed string in searching for
7173         places to stop and examine.
7174         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
7175         multichar operator in place of the former c->-op-without->-cont-regexp.
7176         Add code to skip forwards over a balanced parenthesized expression.
7178 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7180         Avoid crashes in semi-malformed 'condition-case'
7182         * src/eval.c (internal_lisp_condition_case): Treat a handler
7183         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
7185 2016-02-15  Alan Mackenzie  <acm@muc.de>
7187         Allow arithmetic operators inside C++ template constructs.
7189         Fixes debbugs #22486.
7191         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
7192         variable.
7193         (c-<>-notable-chars-re): New language variable.
7195         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
7196         c-<>-notable-chars-re in place of the former fixed string in searching for
7197         places to stop and examine.
7198         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
7199         multichar operator in place of the former c->-op-without->-cont-regexp.
7200         Add code to skip forwards over a balanced parenthesized expression.
7202 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7204         Fix regression with 'recent-keys' and keyboard macros
7206         * src/keyboard.c (record_char): Don't record in 'recent_keys'
7207         events that come from executing keyboard macros.  (Bug#22674)
7209 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7211         Fix wording in a doc-view.el comment
7213         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
7214         "illegal" for something that is not against the law.
7216 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7218         CONTRIBUTE cleanups and updates
7220         * CONTRIBUTE: Mention URLs and info nodes more consistently,
7221         avoiding possibly-confusing punctuation adjacent to a URL, and
7222         giving full shell commands for 'info'.  Start with a brief but
7223         complete how-to, for people who want to get started right away.
7224         Then briefly discuss how to join the development process in the
7225         typical order.  Omit needless words.  Update some of the
7226         now-obsolete file names, info node names, and quoting styles.
7227         Better document emacs-NN branches and how they are merged.
7228         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
7229         and trunk to master.  This file still needs work.
7231 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
7233         Port USE_STACK_LISP_OBJECTS fix to Clang
7235         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
7236         Recent versions of Clang claim to be GCC 4.2.1 but do not have
7237         the GCC bug.
7239 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
7241         Port to x86 GCC 4.3.1 and earlier
7243         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
7244         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
7245         for GCC 4.3.1 and earlier.
7247 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
7249         Fix point movement under 'scroll-conservatively'
7251         * src/xdisp.c (redisplay_window): Correct a typo in computing the
7252         effective number of text lines in a window.  (Bug#22637)
7254 2016-02-14  Thomas Plass  <thomas.plass@arcor.de>
7256         Replace colon in file name (not legal on Windows)
7258         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
7259         name (not legal on Windows). [tiny change]
7261 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
7263         Fix a typo in edt.texi
7265         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
7266         "Herbert J. Skuhra" <herbert@mailbox.org>.
7268 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
7270         Make 'mmap_realloc' on MS-Windows more reliable
7272         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
7273         committing fails, return NULL.  Don't call GetLastError twice for
7274         the same API error.
7275         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
7276         before calling VirtualQuery, to avoid using garbled values if the
7277         call fails.  If committing more pages from the same block fails,
7278         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
7279         if the call to VirtualAlloc to commit more pages fails.
7280         (Bug#22526)
7282 2016-02-14  Oscar Fuentes  <ofv@wanadoo.es>
7284         Grep alias `all' shall not match parent directory
7286         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
7287           directory for `all'. Fixes bug#22577
7289 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
7291         Bump version to 25.0.91
7293         * README:
7294         * configure.ac:
7295         * msdos/sed2v2.inp: Bump version to 25.0.91.
7297 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
7299         * etc/AUTHORS: Update the AUTHORS file
7301 2016-02-13  Glenn Morris  <rgm@gnu.org>
7303         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
7305 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
7307         Index tilde characters in names of backup files
7309         * doc/emacs/files.texi (Backup Names): Improve indexing.
7310         (Bug#22625)
7312 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
7314         Document deprecation of hi-lock-mode's 'C-x w' bindings
7316         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
7317         "C-x w" bindings of hi-lock-mode.
7319         * etc/NEWS: Mark the deprecation entry as documented.
7321 2016-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
7323         Announce that the `C-x w' bindings are deprecated
7325 2016-02-13  Paul Eggert  <eggert@cs.ucla.edu>
7327         Suppress GNUstep hardening
7329         Fedora 23 normally hardens GNUstep applications, which causes
7330         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
7331         Fix this by eliding the hardening options (Bug#22518).
7332         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
7333         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
7334         (GNU_OBJC_CFLAGS): Omit options like
7335         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
7337 2016-02-12  Eli Zaretskii  <eliz@gnu.org>
7339         Fix redisplay after a large insertion
7341         * src/xdisp.c (redisplay_internal): Don't accept the results of
7342         "optimization 3" if the cursor ends up in a partially visible
7343         glyph row.  (Bug22637)
7345 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
7347         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
7349         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
7351                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
7352                 change.  (Bug#22634)
7354 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
7356         * lib-src/make-docfile.c: Include stdarg.h.
7358 2016-02-11  Alan Mackenzie  <acm@muc.de>
7360         Extend gpm-mouse-mode's doc string and doc to point out limitations.
7362         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
7363         inability to transfer text between Emacs and other programs which use GPM.
7365         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
7366         between Emacs and other progrmas which use GPM.
7368 2016-02-11  Eli Zaretskii  <eliz@gnu.org>
7370         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
7372         * lisp/isearch.el: Turn char-folding back oon by default.
7374         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
7376 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
7378         Revert "Support integer image rotation and respect EXIF rotations"
7380         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
7382         This change does not work on Fedora.
7384 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
7386         Revert "Document EXIF image rotation"
7388         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
7390         This change does not work on Fedora, for instance.
7392 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
7394         Document OS X LANG default
7396         * doc/emacs/cmdargs.texi (General Variables):
7397         Document OS X Language and Region system preference.
7398         Suggested by Alan Third.
7400 2016-02-11  Alan Third  <alan@idiocy.org>
7402         Set locale when run from OS X GUI
7404         * src/emacs.c (main): Call ns_init_locale.
7405         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
7406         * src/nsterm.h: Include ns_init_locale.
7408 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
7410         make-docfile cleanup for I/O, etc.
7412         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
7413         (num_globals_allocated, globals): Now static.
7414         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
7415         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
7416         Use bool for boolean.
7417         (verror): New function.
7418         (fatal, error): Use it.  API is now like printf.  All callers changed.
7419         (main): Remove err_count local that was always 0.
7420         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
7421         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
7422         Return void, not 0.
7423         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
7424         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
7425         (close_emacs_globals): Use ptrdiff_t for index, not int.
7426         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
7427         opened, rather than diagnosing but exiting with status 0.
7428         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
7429         portable now.
7431 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
7433         Memory-management cleanup in make-docfile
7435         I compiled it with -fsanitize=address and fixed the leaks it detected.
7436         Also, I changed it to prefer signed to unsigned integer types,
7437         and to check for integer overflow.
7438         * lib-src/make-docfile.c:
7439         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
7440         (memory_exhausted): New function.
7441         (xmalloc, xrealloc): Use it.
7442         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
7443         (uncompiled, scan_lisp_file):
7444         Prefer signed integer types to unsigned.
7445         (xstrdup): Remove.  All uses removed.
7446         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
7447         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
7448         (add_global): Use const to pacify --enable-gcc-warnings.
7449         Make a copy here, rather than relying on strdup calls later.
7450         (add_global, write_globals, scan_c_stream):
7451         Avoid integer overflow when calculating sizes.
7452         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
7453         (scan_c_stream): Check for add_global failure.
7455 2016-02-10  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
7457         Kevin Gallagher has new email address
7459         * lisp/emulation/edt.el:
7460         * lisp/emulation/edt-lk201.el:
7461         * lisp/emulation/edt-mapper.el:
7462         * lisp/emulation/edt-pc.el:
7463         * lisp/emulation/edt-vt100.el:
7464         * etc/edt-user.el:
7465         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
7467 2016-02-10  Eli Zaretskii  <eliz@gnu.org>
7469         Improve doc strings of 'forward/backward-word-strictly'
7471         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
7472         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
7473         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
7474         Mention 'subword-mode' in the doc strings.
7476         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
7477         in the doc string.  (Bug#22560)
7479 2016-02-10  Michael Albinus  <michael.albinus@gmx.de>
7481         Describe Makefile test targets in test/README
7483         * CONTRIBUTE: Move Makefile test targets to test/README.
7485         * Makefile.in:
7486         * test/README: Describe Makefile test targets.
7488 2016-02-10  Artur Malabarba  <bruce.connor.am@gmail.com>
7490         Backport: * lisp/isearch.el: Turn char-folding off by default
7492         (search-default-mode): Set default value to nil.
7494 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
7496         Document EXIF image rotation
7498         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
7500 2016-02-10  Dima Kogan  <dima@secretsauce.net>
7502         Support integer image rotation and respect EXIF rotations
7504         * src/image.c (imagemagick_load_image): Allow integer rotations in
7505         addition to floating point rotations (bug#22591).
7506         * src/image.c (imagemagick_load_image): Images that have an
7507         orientation given in EXIF and have no explicit :rotation tag are now
7508         pre-rotated.  All information such as width/height is reported for the
7509         rotated image.
7511 2016-02-10  Matthew Carter  <m@ahungry.com>
7513         Quote table names for postgres listings (sql-mode)
7515         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
7516           unquoted table names to the completion list.
7518 2016-02-10  Juri Linkov  <juri@linkov.net>
7520         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
7522         Doc fix.
7523         (replace-search, replace-highlight): Make arg `backward' optional.
7524         (Bug#18388)
7526 2016-02-10  Juri Linkov  <juri@linkov.net>
7528         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
7530         (previous-line-or-history-element): Reset temporary-goal-column.
7531         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
7533 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
7535         Suppress ACL ops if configured with --disable-acl
7537         Without this patch, some ACL operations were suppressed, but not all.
7538         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
7539         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
7541 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
7543         Mention web bugs
7545         * doc/misc/emacs-mime.texi (Display Customization):
7546         Mention web bugs in the mm-html-blocked-images section.
7548 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
7550         Make mm-html-blocked-images default to "" again
7552         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
7553         Default to "" that blocks all external images.
7555         * doc/misc/emacs-mime.texi (Display Customization):
7556         Mention that mm-html-blocked-images defaults to "".
7558 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7560         Minor alignas cleanup
7562         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
7563         over from the old way of doing things, before Bug#20862 was fixed.
7565 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7567         Add lmalloc commentary and tweak laligned
7569         * src/alloc.c (laligned): Help compiler in a tiny way by putting
7570         the more-commonly-failing disjunct first.
7572 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
7574         Clarify documentation of key binding conventions
7576         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
7577         "punctuation characters" are reserved after "C-c".  (Bug#22604)
7579 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
7581         * etc/NEWS: mention the `vc-faces' customization group
7583 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7585         Sync with gnulib
7587         This incorporates:
7588         2016-02-09 stdalign: port to clang 3.7.0
7589         2016-02-06 misc: port better to gcc -fsanitize=address
7590         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
7591         Copy from gnulib.
7593 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
7595         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
7597 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
7599         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
7601         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
7602         (mm-html-blocked-images): Default to nil.
7604         * doc/misc/emacs-mime.texi (Display Customization): Mention that
7605         mm-html-inhibit-images and mm-html-blocked-images default to nil.
7607         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
7608         mm-html-blocked-images.
7610 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7612         Increase success rate of fallback lmalloc
7614         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
7615         larger and larger sizes, to increase the probability that
7616         the allocator will return a Lisp-aligned pointer.
7618 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7620         Make backgrounds extend to the end of the lines in shr
7622         * lisp/net/shr.el (shr-face-background): Faces can also be on
7623         the form `(:background "#fff)' (bug#22547).
7625 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7627         Make the `R' command get the correct relative <img>s
7629         * lisp/net/eww.el (eww-readable): Preserve the base URL so
7630         that image expansions are fetched from the right place (bug#22605).
7632         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
7634         Backport:
7636 2016-02-09  Mike Kupfer  <m.kupfer@acm.org>
7638         Fix typos in emacs-mime.texi and gnus.texi
7640         * doc/misc/emacs-mime.texi (Display Customization):
7641         * doc/misc/gnus.texi (HTML): Fix typo.
7643 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
7645         * doc/misc/emacs-mime.texi (Display Customization):
7646         Doc fix for mm-html-inhibit-images.
7648 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7650         Fix message-cross-post-followup-to group names
7652         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
7653         insert group names like "nntp+foo:zot", because those aren't valid.
7655 2016-02-09  David Edmondson  <dme@dme.org>
7657         Compare recipient and keys case-insensitively
7659         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
7660         recipient address with that from a key, do so in a case insensitive
7661         manner (bug#22603).
7663 2016-02-08  Glenn Morris  <rgm@gnu.org>
7665         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
7667 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
7669         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
7671         * doc/misc/emacs-mime.texi (Display Customization):
7672         Remove mm-inline-text-html-with-images; add documentations for
7673         mm-html-inhibit-images and mm-html-blocked-images.
7675         * lisp/gnus/gnus-art.el (gnus-article-show-images):
7676         No need to bind mm-inline-text-html-with-images.
7677         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
7678         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
7679         bind mm-html-inhibit-images and mm-html-blocked-images.
7680         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
7681         (gnus-mm-display-part, gnus-mime-display-single)
7682         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
7684         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
7685         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
7686         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
7687         mm-html-inhibit-images and mm-html-blocked-images respectively
7688         instead of gnus-inhibit-images and gnus-blocked-images.
7690         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
7691         instead of mm-inline-text-html-with-images.
7693 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
7695         Port to FreeBSD 11-CURRENT i386
7697         Problem reported by Herbert J. Skuhra in:
7698         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
7699         Instead of trying
7700         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
7701         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
7702         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
7703         (MALLOC_IS_GC_ALIGNED): New macro.
7704         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
7705         No longer needed now that alloc.c uses lmalloc and lrealloc.
7707 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
7709         Some fixes in file-notify-tests.el
7711         * test/automated/file-notify-tests.el
7712         (file-notify--test-with-events-check)
7713         (file-notify--test-with-events-explainer): New defuns.
7714         (file-notify--test-with-events): Use it.
7715         (file-notify-test07-backup): Fix docstring.  Some of the
7716         backends fire two `changed' events.  Backup by rename doesn't
7717         work for kqueue.
7719 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
7721         Fix Bug#22557
7723         * lisp/filenotify.el (file-notify-callback): Do not send a
7724         `stopped' event in case of backup by renaming.  (Bug#22557)
7726         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
7727         all targets but check and check-maybe.
7729         * test/automated/file-notify-tests.el
7730         (file-notify--test-read-event-timeout): New defconst.
7731         (file-notify--deftest-remote, file-notify--wait-for-events)
7732         (file-notify-test02-events)
7733         (file-notify-test04-file-validity)
7734         (file-notify-test06-many-events): Use it.
7735         (file-notify--test-cleanup): Make it more robust.  Delete also
7736         backup file.
7737         (file-notify-test07-backup): New test.
7739 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
7741         Fix test for dladdr
7743         Problem reported by Andreas Schwab in:
7744         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
7745         * configure.ac (dladdr): Link with LIBMODULES when checking for
7746         this function.
7748 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
7750         Fix gnus-group-get-new-news-this-group on group with closed server
7752         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
7753         method and pass to nnimap-open-server.
7755 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
7757         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
7759         While tabs in code are mostly fine because the Emacs sources have a
7760         .dir-locals file specifying tab-width, the same is not true of tabs in
7761         code examples inside docstrings.  The docstring is printed on a *Help*
7762         buffer, which can be created on any directory and won't necessarily have
7763         the same tab-width set.
7765 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7767         Don't inloop gnus-uu-mark-thread on the last thread
7769         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
7770         final thread in the summary buffer (bug#16666).
7772 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7774         Display non-ASCII group names better in prompts
7776         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
7777         group name, we have to do that before we remove the prefix.
7779 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7781         Default to gpg2 instead of gpg
7783         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
7784         it exists.  This fixes many problems with using the GPG
7785         authentication agent.
7787 2016-02-06  David Edmondson  <dme@dme.org>
7789         src/process.c Correctly convert AF_INET6 addresses
7791         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
7792         converted to a list of 16 bit quantities by
7793         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
7794         same scheme rather than expecting a (longer) list of 8 bit
7795         quantities.
7797         Backport:
7799         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
7801 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7803         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
7805 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7807         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
7809         (menu-bar-search-options-menu): New variable
7811 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7813         * lisp/isearch.el (search-default-mode)
7815         (isearch-regexp-function): Improve docstrings.
7817 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7819         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
7821         (search-default-mode): New variable.
7822         (isearch-mode, isearch-define-mode-toggle)
7823         (isearch--describe-regexp-mode): Update accordingly.
7824         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
7825         * etc/NEWS: Update accordingly.
7826         * doc/emacs/search.texi: Update accordingly.
7828 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
7830         Use monitor's resolution for positioning tooltips
7832         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
7833           the mouse pointer is to avoid placing the tooltip over the border of
7834           the monitor on multi-head displays. Fixes bug#22549.
7836 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
7838         Fix file-notify-test on MS-Windows
7840         * test/automated/file-notify-tests.el (file-notify--test-timeout):
7841         Reduce w32notify timeout to 10 sec.
7842         (file-notify-test06-many-events): Call read-event after each
7843         rename, to keep the w32notify backend happy in batch mode.
7844         (Bug#22534)
7846 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
7848         Fix issues found by auditing w32notify code
7850         * src/w32inevt.c (handle_file_notifications): Count the number of
7851         events to be returned.
7852         * src/w32notify.c (send_notifications): Don't copy to the file
7853         notification buffer more than it can hold.  (Bug#22534)
7855 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
7857         Extend etags Ruby support for accessors
7859         * lib-src/etags.c (Ruby_functions): Support accessors defined with
7860         parentheses.  (Bug#22563)
7862         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
7863         defined with parentheses.
7864         * test/etags/ETAGS.good_1:
7865         * test/etags/ETAGS.good_2:
7866         * test/etags/ETAGS.good_3:
7867         * test/etags/ETAGS.good_4:
7868         * test/etags/ETAGS.good_5:
7869         * test/etags/ETAGS.good_6:
7870         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
7872 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7874         Update publicsuffix.txt.
7876         * etc/publicsuffix.txt: Updated from
7877         https://publicsuffix.org/list/public_suffix_list.dat.
7879 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7881         Ensure that Gnus dribble handling allows removing entries
7883         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
7884         entry is on a single line.
7886 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
7888         Be consistent when using encoded strings in nnimap data
7890         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
7891         (nnimap-request-list): Use it.
7892         (nnimap-request-newgroups): Ditto.
7894 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
7896         Display the decoded Gnus group name
7898         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
7899         decoded group name in the message.
7901 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
7903         Use completion-ignore-case instead of defining command
7905         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
7906         that we get case-insensitive completion.
7907         (erc-completion-at-point): Remove.
7909 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
7911         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
7913 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
7915         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
7917         Reduce the number of iterations to 250 in case of w32notify.
7919 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
7921         Fix problems caused by new implementation of sub-word mode
7923         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
7924         New functions.
7925         (word-move-empty-char-table): New variable.
7927         * etc/NEWS: Mention 'forward-word-strictly' and
7928         'backward-word-strictly'.
7930         * doc/lispref/positions.texi (Word Motion): Document
7931         'find-word-boundary-function-table', 'forward-word-strictly', and
7932         'backward-word-strictly'.  (Bug#22560)
7934         * src/syntax.c (syms_of_syntax)
7935         <find-word-boundary-function-table>: Doc fix.
7937         * lisp/wdired.el (wdired-xcase-word):
7938         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
7939         (texinfo-copy-section-title, texinfo-start-menu-description)
7940         (texinfo-copy-menu-title, texinfo-specific-section-type)
7941         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
7942         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
7943         (texinfo-insert-@end):
7944         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
7945         (texinfo-anchor, texinfo-multitable-widths)
7946         (texinfo-multitable-item):
7947         * lisp/textmodes/tex-mode.el (latex-env-before-change):
7948         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
7949         * lisp/skeleton.el (skeleton-insert):
7950         * lisp/simple.el (count-words):
7951         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
7952         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
7953         (vhdl-update-sensitivity-list, vhdl-template-block)
7954         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
7955         (vhdl-template-default-indent, vhdl-template-for-loop)
7956         (vhdl-template-if-then-use, vhdl-template-bare-loop)
7957         (vhdl-template-nature, vhdl-template-procedural)
7958         (vhdl-template-process, vhdl-template-selected-signal-asst)
7959         (vhdl-template-type, vhdl-template-variable)
7960         (vhdl-template-while-loop, vhdl-beginning-of-block)
7961         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
7962         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
7963         (verilog-forward-sexp, verilog-beg-of-statement)
7964         (verilog-set-auto-endcomments, verilog-backward-token)
7965         (verilog-do-indent):
7966         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
7967         (vera-indent-block-closing):
7968         * lisp/progmodes/simula.el (simula-context)
7969         (simula-backward-up-level, simula-forward-down-level)
7970         (simula-previous-statement, simula-next-statement)
7971         (simula-skip-comment-backward, simula-calculate-indent)
7972         (simula-find-if, simula-electric-keyword):
7973         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
7974         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
7975         (ruby-smie--forward-token, ruby-smie--backward-token)
7976         (ruby-singleton-class-p, ruby-calculate-indent)
7977         (ruby-forward-sexp, ruby-backward-sexp):
7978         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
7979         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
7980         (perl-syntax-propertize-special-constructs)
7981         (perl-backward-to-start-of-continued-exp):
7982         * lisp/progmodes/pascal.el (pascal-indent-declaration):
7983         * lisp/progmodes/octave.el (octave-function-file-p):
7984         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
7985         * lisp/progmodes/js.el (js--forward-function-decl):
7986         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
7987         (idlwave-beginning-of-block, idlwave-end-of-block)
7988         (idlwave-block-jump-out, idlwave-determine-class):
7989         * lisp/progmodes/icon.el (icon-is-continuation-line)
7990         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
7991         * lisp/progmodes/hideif.el (hide-ifdef-define):
7992         * lisp/progmodes/f90.el (f90-change-keywords):
7993         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
7994         (cperl-linefeed, cperl-electric-terminator)
7995         (cperl-find-pods-heres, cperl-fix-line-spacing)
7996         (cperl-invert-if-unless):
7997         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
7998         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
7999         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
8000         (ada-adjust-case-skeleton, ada-create-case-exception)
8001         (ada-create-case-exception-substring)
8002         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
8003         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
8004         (ada-get-indent-if, ada-get-indent-block-start)
8005         (ada-get-indent-loop, ada-get-indent-type)
8006         (ada-search-prev-end-stmt, ada-check-defun-name)
8007         (ada-goto-decl-start, ada-goto-matching-start)
8008         (ada-goto-matching-end, ada-looking-at-semi-or)
8009         (ada-looking-at-semi-private, ada-in-paramlist-p)
8010         (ada-search-ignore-complex-boolean, ada-move-to-start)
8011         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
8012         * lisp/net/quickurl.el (quickurl-grab-url):
8013         * lisp/mail/sendmail.el (mail-do-fcc):
8014         * lisp/mail/rmail.el (rmail-resend):
8015         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
8016         * lisp/mail/mail-extr.el (mail-extract-address-components):
8017         * lisp/json.el (json-read-keyword):
8018         * lisp/files.el (insert-directory):
8019         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
8020         * lisp/completion.el (symbol-under-point, symbol-before-point)
8021         (symbol-before-point-for-complete, next-cdabbrev)
8022         (add-completions-from-c-buffer):
8023         * lisp/cedet/semantic/texi.el (semantic-up-context)
8024         (semantic-beginning-of-context):
8025         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
8026         use 'forward-word-strictly' and 'backward-word-strictly' instead
8027         of 'forward-word' and 'backward-word'.
8029 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8031         Fix doc string of tls-program
8033         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
8035 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8037         Restore window conf in nsm
8039         * lisp/net/nsm.el (nsm-query-user): Restore the window configuration.
8041         Backport:
8043 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
8045         * etc/NEWS: Document new mpc.el features
8047 2016-02-04  Leo Liu  <sdl.web@gmail.com>
8049         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
8051 2016-02-04  Alan Mackenzie  <acm@muc.de>
8053         Correctly fontify C++ initializations which "look like" functions.
8055         Fixes bug#7579.
8057         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
8058         parameter to enable handling of "anonymous" declarators in declarations.
8060         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
8061         whether a "(" opens a parameter list of a function, or an initialization of a
8062         variable.
8064 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
8066         Improve newsticker-treeview-selection-face
8068         * lisp/net/newst-treeview.el (newsticker-treeview-selection-face): Improve
8069         readability for dark background.
8071 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
8073         Minor fix in tagging Ruby accessors by etags
8075         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
8076         names are not literal symbols.  (Bug#22241)
8078 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8080         Spelling fixes
8082 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
8084         Remove 'def X' from the example
8086         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
8087         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
8088         * test/etags/CTAGS.good:
8089         * test/etags/ETAGS.good_1:
8090         * test/etags/ETAGS.good_2:
8091         * test/etags/ETAGS.good_3:
8092         * test/etags/ETAGS.good_4:
8093         * test/etags/ETAGS.good_5:
8094         * test/etags/ETAGS.good_6: Adjust accordingly.
8096 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
8098         Allow sending empty hidden values in eww
8100         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
8101         values (bug#22388).
8103         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
8105         Backport:
8107 2016-02-04  David Edmondson  <dme@dme.org>
8109         Make erc work better when encountering unknown prefix chars
8111         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
8112         instead of erroring out on unknown prefix chars (bug#22380).
8114 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8116         Make erc completion case-insensitive again
8118         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
8119         case-insensitive again (bug#11360).
8121 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
8123         Make complection in erc use consistent casing
8125         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
8126         case in the complection consistent (bug#18509).
8128 2016-02-04  Francis Litterio  <flitterio@gmail.com>
8130         Make /QUIT in erc more robust
8132         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
8133         issuing /QUIT to disconnected servers (bug#22099).
8135 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
8137         Make tracking faces in Emacs work more reliably
8139         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
8140         faces to avoid later ambiguity (bug#22424).
8142 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8144         Make shr not bug out on images on non-graphical displays
8146         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
8147         images on non-graphical displays (bug#22327).
8149 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8151         Fix bookmark display widths
8153         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
8154         preparing it so that the widths are computed correctly (bug#22328).
8156 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8158         Fix typo in eww-make-unique-file-name
8160         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
8161         actually work.
8163 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8165         Make it possible to TAB to input fields
8167         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
8168         input fields (bug#22540).
8170 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8172         Insert complete alt texts when images are disabled
8174         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
8175         the complete alt/title string (bug#22293).
8177 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8179         Allow eww text fields to grow
8181         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
8182         grow when typing in stuff that's longer than the original width.
8184 2016-02-03  Dima Kogan  <dima@secretsauce.net>
8186         Make erc work when subword-mode is switched on
8188         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
8189         (erc-bounds-of-word-at-point): New functions to do word-based
8190         things when subword-mode is switched on.
8192         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
8193         (bug#17558).
8195 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
8197         Fix IMAP doc example
8199         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
8201 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8203         Quoting fixes in doc strings and diagnostics
8205         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
8206         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
8207         (mml-smime-get-ldap-cert):
8208         Follow user style preference when quoting diagnostics.
8210 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
8212         Fix warning message in hack-local-variables
8214         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
8215         the original buffer name in the warning message.  (Bug#21681)
8217 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
8219         Etags: yet another improvement in Ruby tags
8221         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
8222         Ruby accessor definitions.  (Bug#22241)
8224         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
8225         accessors and multiline definitions.
8226         * test/etags/ETAGS.good_1:
8227         * test/etags/ETAGS.good_2:
8228         * test/etags/ETAGS.good_3:
8229         * test/etags/ETAGS.good_4:
8230         * test/etags/ETAGS.good_5:
8231         * test/etags/ETAGS.good_6:
8232         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
8234 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
8236         Fix x-popup-menu on TTYs without a mouse
8238         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
8239         for the TTY case without a mouse.  (Bug#22538)
8241 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
8243         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
8245 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
8247         Use pop-to-buffer-same-window in eww
8249         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
8250         switch-to-buffer (bug#22244).
8252 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8254         * autogen.sh: Revert all recent changes.
8256 2016-02-02  Glenn Morris  <rgm@gnu.org>
8258         * make-dist: Updates related to nt/.
8260         * make-dist: Add modules/.
8262         * make-dist: Update for super-special file that can't live in etc/.
8264 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8266         Fix failure to compile ns-win.el in parallel builds
8268         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
8269         dependency on $(lispsource)/international/charprop.el.
8270         (Bug#22501)
8272 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8274         Fix names of tags generated for Ruby accessors
8276         * lib-src/etags.c (Ruby_functions): Don't include the leading
8277         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
8279         * test/etags/ETAGS.good_1:
8280         * test/etags/ETAGS.good_2:
8281         * test/etags/ETAGS.good_3:
8282         * test/etags/ETAGS.good_4:
8283         * test/etags/ETAGS.good_5:
8284         * test/etags/ETAGS.good_6:
8285         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
8287 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8289         Fix file-name recognition in 'etags'
8291         * lib-src/etags.c (get_language_from_filename): If FILE includes a
8292         leading directory, compare only its basename to the known file
8293         names in lang_names[].
8295         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
8296         renaming.
8297         * test/etags/ETAGS.good_1:
8298         * test/etags/ETAGS.good_2:
8299         * test/etags/ETAGS.good_3:
8300         * test/etags/ETAGS.good_4:
8301         * test/etags/ETAGS.good_5:
8302         * test/etags/ETAGS.good_6:
8303         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
8304         to the results in Makefile due to the above etags.c fix.
8306 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8308         Change Ruby file names and extensions recognized by 'etags'
8310         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
8311         of Ruby files.
8312         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
8313         <lang_names>: Add Ruby_filenames to the Ruby entry.
8314         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
8315         (Bug#22241)
8317 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8319         More improvements for Ruby support in 'etags'
8321         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
8322         alias_method.  Identify constants even if the assignment is not
8323         followed by whitespace.  (Bug#22241)
8325         * test/etags/ruby-src/test1.ru: Add tests for constants,
8326         accessors, and alias_method.
8327         * test/etags/ETAGS.good_1:
8328         * test/etags/ETAGS.good_2:
8329         * test/etags/ETAGS.good_3:
8330         * test/etags/ETAGS.good_4:
8331         * test/etags/ETAGS.good_5:
8332         * test/etags/ETAGS.good_6:
8333         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
8335 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8337         Add --git-config option to autogen.sh
8339         * autogen.sh: New options --git-config, --help.
8340         (git_config): New shell var.  Alter function to respect this var.
8342 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
8344         Fix editing undo changes in eww fields
8346         * eww.el (eww-tag-form): Don't overwrite initial form data in text
8347         fields.
8348         (eww-process-text-input): Make `M-t' at the end of text fields work
8349         better (bug#19085).
8351 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8353         Allow the user more control of popping up the eww window
8355         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
8356         Michael Heerdegen) (bug#22244).
8358 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8360         Make eww-browse-url with new-window parameter work again
8362         * eww.el (eww-browse-url): Stay in the same buffer if we're
8363         already in a eww mode buffer so that eww-browse-url with a
8364         new-window parameter works (bug#22244).
8366 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8368         Clean up eww code slightly
8370         * eww.el (eww-browse-url): Clean up code slightly.
8372 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8374         Don't insert nil faces in shr
8376         * shr.el (shr-insert-table): Don't add nil faces, because that
8377         will show up in *Messages* as "Invalid face reference: nil [32
8378         times]".
8380 2016-02-01  Glenn Morris  <rgm@gnu.org>
8382         Improve the custom type of some user options.
8384         * lisp/autoinsert.el (auto-insert-alist):
8385         * lisp/replace.el (query-replace-from-to-separator):
8386         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
8387         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
8388         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
8389         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
8390         (prolog-mode-specificators, prolog-determinism-specificators)
8391         (prolog-directives, prolog-program-name, prolog-program-switches)
8392         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
8393         (prolog-prompt-regexp): Improve custom type.
8395 2016-02-01  Glenn Morris  <rgm@gnu.org>
8397         Mark some risky calendar variables.
8399         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
8400         Remove risky setting for deleted obsolete alias.
8401         (calendar-chinese-standard-time-zone-name)
8402         (calendar-chinese-daylight-saving-start)
8403         (calendar-chinese-daylight-saving-end):
8404         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
8405         (calendar-european-date-display-form)
8406         (calendar-american-date-display-form, calendar-date-display-form):
8407         * lisp/calendar/diary-lib.el (diary-remind-message)
8408         (diary-header-line-format):
8409         * lisp/calendar/solar.el (calendar-time-display-form)
8410         (calendar-location-name): Mark as risky.
8412 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
8414         Highlight two additional SCSS keywords
8416         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
8417         identifiers on the form !foo.
8418         (scss-bang-ids): New defconst holding SCSS identifiers on the form
8419         !foo.
8420         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
8421         `font-lock-builtin-face'.
8423         * test/indent/css-mode.css: Add bang rule test case.
8425         * test/indent/scss-mode.scss: Add test cases for the introduced bang
8426         rules.
8428 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
8430         Recommend enabling integrity-checking in git
8432         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
8434         This is related to the autogen.sh changes made by Paul Eggert in
8435         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
8436         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
8437         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
8438         "Recommend these .gitconfig settings for git integrity." at
8439         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
8441 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
8443         Some corrections in Elisp manual
8445         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
8446         argument POSITION.
8447         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
8448         is an option.
8449         * doc/lispref/display.texi (Refresh Screen): Describe optional
8450         argument FRAME of `redraw-frame'.
8451         (Attribute Functions): Describe optional argument CHARACTER of
8452         `face-font'.
8453         (Defining Images): `image-load-path' is an option.
8454         (Beeping): `ring-bell-function' is an option.
8455         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
8456         argument of `set-frame-size' is optional.
8457         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
8458         is optional.
8459         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
8460         `set-transient-map'.
8461         * doc/lispref/minibuf.texi (Text from Minibuffer):
8462         `read-regexp-defaults-function' is an option.
8463         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
8464         * doc/lispref/modes.texi (Mode Line Variables):
8465         `mode-line-position' and `mode-line-modes' are variables, not
8466         options.
8467         * doc/lispref/strings.texi (Creating Strings): The START argument
8468         of `substring' is optional.
8469         * doc/lispref/text.texi (Buffer Contents): Describe optional
8470         argument NO-PROPERTIES of `thing-at-point'.
8471         (User-Level Deletion): Both arguments of
8472         `delete-trailing-whitespace' are optional.
8473         (Margins): Use @key{RET} instead of @kbd{RET}.
8474         * doc/lispref/windows.texi (Display Action Functions): Write
8475         non-@code{nil} instead of non-nil.
8476         (Choosing Window Options): The WINDOW arg of
8477         `split-window-sensibly' is optional.
8478         (Choosing Window Options): Write non-@code{nil} instead of
8479         non-nil.
8480         (Window Start and End): Both args of `window-group-end' are
8481         optional.
8483         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
8484         to POSITION to keep consisteny with doc-string.
8486 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
8488         Chatter when autogen.sh changes Git configuration
8490         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
8492 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
8494         * lisp/org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
8496 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8498         Omit unnecessary history from Lisp intro
8500         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
8501         (Conclusion): Reword so as not to talk about earlier versions
8502         of Emacs in what should be an intro.
8504 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8506         * etc/HISTORY: Add some more history, plus git tags.
8508 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8510         Improve elisp “Security Considerations” doc
8512         * doc/lispref/os.texi (Security Considerations):
8513         Mention call-process and rename-file as opposed to shell commands.
8514         Add some more cross-references.
8516 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8518         autogen.sh now arranges for git to check hashes
8520         Suggested by Karl Fogel in:
8521         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
8522         * autogen.sh: Do "git config transfer.fsckObjects true".
8524 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8526         Fix (c & 040) typo in emergency escapes
8528         * src/keyboard.c (handle_interrupt): Fix recently-introduced
8529         typo (040 should have been ~040) that silently suppressed
8530         auto-saves after emergency escapes.  Redo comparison to avoid
8531         similar problems.
8533 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
8535         Fix display of overlay strings with 'display' and 'box' property
8537         * src/xdisp.c (get_next_display_element): Take the box face from
8538         display stack level that comes from a buffer, not an overlay
8539         string.  (Bug#22499)
8541 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
8543         Fix imap-starttls-open
8545         * lisp/net/imap.el (imap-starttls-open): Log imap process
8546         output.  Call imap-parse-greeting.  (Bug#22500)
8548 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
8550         Fix return value of imap-starttls-open
8552         * lisp/net/imap.el (imap-starttls-open): Fix return value.
8554 2016-01-31  John Wiegley  <johnw@newartisans.com>
8556         Correct reference to DARWIN_OS preprocessor symbol
8558         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
8559           not be defined.
8561 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8563         Spelling fix
8565         Spelling fixes
8567 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8569         Pacify GCC on C library without glibc API
8571         Without this change, with --enable-gcc-warnings GCC would complain
8572         “error: redundant redeclaration of ‘aligned_alloc’”.
8573         * configure.ac: Simplify aligned_alloc testing.
8574         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
8575         since the simplified configure.ac no longer checks for that.
8576         Don’t declare if HAVE_ALIGNED_ALLOC.
8577         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
8579 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
8581         Backport: * lisp/files.el: Remove support for extra .dir-locals file
8583         (dir-locals-file-2, dir-locals--all-files): Remove.
8584         (dir-locals-collect-variables, dir-locals-file, dir-locals-find-file)
8585         (dir-locals-read-from-file, hack-dir-local-variables): Revert changes.
8587         * lisp/files-x.el (modify-dir-local-variable): Revert changes.
8589         * lisp/help-fns.el (describe-variable): Revert changes.
8591         * doc/emacs/custom.texi (Directory Variables): Revert changes.
8593         * etc/NEWS: Revert changes.
8595 2016-01-30  Glenn Morris  <rgm@gnu.org>
8597         * lisp/net/browse-url.el (browse-url-default-browser):
8598         Lower priority of non-free Chrome.
8600 2016-01-30  Glenn Morris  <rgm@gnu.org>
8602         Improve the custom type of some user options.
8604         * lisp/desktop.el (desktop-minor-mode-table):
8605         * lisp/man.el (Man-frame-parameters):
8606         * lisp/midnight.el (midnight-delay):
8607         * lisp/speedbar.el (speedbar-select-frame-method):
8608         * lisp/tooltip.el (tooltip-frame-parameters):
8609         * lisp/tree-widget.el (tree-widget-space-width):
8610         * lisp/type-break.el (type-break-keystroke-threshold):
8611         * lisp/woman.el (woman-imenu-generic-expression):
8612         * lisp/cedet/ede.el (ede-debug-program-function):
8613         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
8614         * lisp/emulation/viper-keym.el (viper-toggle-key):
8615         * lisp/erc/erc-networks.el (erc-server-alist):
8616         * lisp/gnus/message.el (message-deletable-headers, message-signature):
8617         * lisp/mail/mailalias.el (mail-directory-stream):
8618         * lisp/play/tetris.el (tetris-x-colors):
8619         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
8621 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
8623         Highlight CSS variables with variable name face
8625         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
8626         (css--font-lock-keywords): Highlight variables in
8627         `font-lock-variable-name-face'.
8629 2016-01-30  Glenn Morris  <rgm@gnu.org>
8631         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
8633 2016-01-30  Glenn Morris  <rgm@gnu.org>
8635         Mark some user options that can get evalled as risky.
8637         * lisp/allout.el (allout-title):
8638         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
8639         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
8640         * lisp/progmodes/gud.el (gud-tooltip-display):
8641         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
8642         Mark as risky.
8644 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
8646         Disable DebPrint in sys_read on MS-Windows
8648         * src/w32.c (sys_read): Disable a debugging print that is normal
8649         when non-blocking reads are retried.
8651 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
8653         ;Fix ChangeLog entry
8655 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
8657         Fix typos in Introduction to Emacs Lisp manual
8659         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
8660         (kill-new function, Digression into C)
8661         (Complete forward-sentence, Divide and Conquer, Find a File)
8662         (lengths-list-many-files, Columns of a graph, defcustom)
8663         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
8664         <dbastos@toledo.com>.
8666 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
8668         Bump version to 25.0.90
8670         * README:
8671         * configure.ac:
8672         * msdos/sed2v2.inp: Bump version to 25.0.90.
8674 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
8676         * etc/AUTHORS: Update the AUTHORS file
8678 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
8680         Bump version to 25.0.90
8682         * README:
8683         * configure.ac:
8684         * msdos/sed2v2.inp: Bump version to 25.0.90.
8686 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
8688         * etc/AUTHORS: Update the AUTHORS file
8690 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
8692         authors.el updates
8694         * admin/authors.el (authors-renamed-files-alist): Additions.
8696 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
8698         Make it possible to run make change-history on emacs-25
8700         * Makefile.in: Check if the current branch is emacs-25 instead of
8701           master.
8703 2016-01-30  lu4nx  <lx@shellcodes.org>
8705         Support Go language in 'etags'
8707         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
8708         <Go_help>: New help.
8709         <Go_suffixes>: New variable.
8710         (Go_functions): New function.
8711         <lang_names>: Add entry for Go.  (Bug#22370)
8713         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
8714         * doc/man/etags.1: Mention Go support.
8716         * etc/NEWS: Mention Go support.
8718         * test/etags/go-src/test.go:
8719         * test/etags/go-src/test1.go: New test files.
8720         * test/etags/Makefile (GOSRC): New variable.
8721         (SRCS): Add $(GOSRC).
8722         * test/etags/ETAGS.good_1:
8723         * test/etags/ETAGS.good_2:
8724         * test/etags/ETAGS.good_3:
8725         * test/etags/ETAGS.good_4:
8726         * test/etags/ETAGS.good_5:
8727         * test/etags/ETAGS.good_6:
8728         * test/etags/CTAGS.good: Adapt to addition of Go tests.
8730 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
8732         Improve Ruby support in 'etags'
8734         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
8735         singleton classes.  Remove class qualifiers from tags generated
8736         for method and constant names.  (Bug#22241)
8738         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
8739         are tagged by etags in Ruby.
8741         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
8743         * test/etags/ruby-src/test1.ru: Add more tests.
8744         * test/etags/ETAGS.good_1:
8745         * test/etags/ETAGS.good_2:
8746         * test/etags/ETAGS.good_3:
8747         * test/etags/ETAGS.good_4:
8748         * test/etags/ETAGS.good_5:
8749         * test/etags/ETAGS.good_6:
8750         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
8751         tests.
8753 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
8755         Adjust etags test results to changes in copyright years
8757         * test/etags/CTAGS.good:
8758         * test/etags/ETAGS.good_1:
8759         * test/etags/ETAGS.good_2:
8760         * test/etags/ETAGS.good_3:
8761         * test/etags/ETAGS.good_4:
8762         * test/etags/ETAGS.good_5:
8763         * test/etags/ETAGS.good_6: Adjust to shift in characters and
8764         in line numbers.
8766 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
8768         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
8770         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
8772 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
8774         Make it possible to run make change-history on emacs-25
8776         * Makefile.in: Check if the current branch is emacs-25 instead of
8777           master.
8779 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
8781         Don't fiddle with DEFAULT
8783         * lisp/progmodes/project.el (project--completing-read-strict):
8784         Don't change DEFAULT, whether is has any matches in
8785         COLLECTION, or not.
8787 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
8789         Document xwidget commands and functions
8791         * doc/lispref/display.texi (Xwidgets): New section, describes some
8792         of the xwidget primitives.
8793         * doc/lispref/display.texi (Display): Update the chapter menu.
8794         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
8795         * doc/emacs/emacs.texi (Top): Update the master menu to include
8796         the xwidget node.
8798 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
8800         Build fix for shr.el
8802         * shr.el (seq): Require.
8804 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
8806         Improve project-find-file yet again!
8808         * lisp/progmodes/project.el (project--completing-read-strict):
8809         New function.
8810         (project-find-file-in): Use it.
8811         (project-file-completion-table): Move the default
8812         implementation inside the cl-defgeneric form.
8813         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
8815 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
8817         Don't pass DIR to 'hg status'
8819         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
8820         Don't pass DIR to 'hg status' (bug#22481).
8822 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
8824         Fix typo in previous commits
8826         * lisp/progmodes/project.el (project-find-file-in):
8827         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
8828         commit.
8830 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
8832         Improve project-find-file
8834         * lisp/progmodes/project.el (project-file-completion-table): New.
8835         (project-find-file, project-or-external-find-file): Default to filename
8836         at point.
8837         (project-file-completion-table): New, split out from
8838         project--find-file-in.
8839         (project-find-file-in): Renamed from project--find-file-in, use
8840         project-file-completion-table.
8842         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
8843         (xref--find-ignores-arguments): Add doc string.
8845 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
8847         Implement vc-mtn-find-ignore-file, fix some doc strings
8849         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
8851         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
8853         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
8855         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
8857 2016-01-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
8859         Correct a whole bunch of bugs coming with renamed cell relocation.
8861         This is the same change as commit on master branch. See
8862         http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=badcd38aa86ed7973f2be2743c405710973a0bdd
8864         * lisp/ses.el (ses-localvars): rename variable
8865         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
8866         and adjust the comment about it.
8867         (ses-plist-delq): new defun.
8868         (ses--ses-buffer-list): new defvar.
8869         (ses--unbind-cell-name): new defun.
8870         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
8871         (ses-relocate-formula): Undo change of
8872         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
8873         preventing relocation for named cell --- now doing this is delegated
8874         to function `ses-relocate-symbol'.
8875         (ses-relocate-range): In docstring, undo change of
8876         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
8877         lower case as it is not a variable.
8878         (ses-relocate-all): Cell name relocation : 1) check that cell is a
8879         renamed cell by testing `ses-cell' property to :ses-named, rather than
8880         comparing name to corresponding standard name. Set rowcol of renamed
8881         cell into the hashmap --- `ses-cell' property must not be used for
8882         that as the same name can be used for different locations in different
8883         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
8884         `local-variable-p' to check if cell name is already in use in this
8885         sheet or needs initialization.
8886         (ses-relocate-all): Cell value relocation : 1) like for name
8887         relocation use the `ses-cell' property rather than comparing actual
8888         name to corresponding standard name. 2) Correct bug introduced in
8889         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
8890         made the other way round than the intention --- ie value relocation
8891         was disabled for standard cell, not for renamed cell as was the
8892         intention.
8893         (ses-relocate-all): Add loop for unbinding deleted renamed cells
8894         names.
8895         (ses-killbuffer-hook): new defun.
8896         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
8897         kill buffer hook, plus pushing current buffer if new in list.
8898         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
8899         into `ses--in-killing-named-cell-list'.
8900         (ses-rename-cell): Remove update of variable
8901         `ses--renamed-cell-symb-list', this variable is renamed to
8902         `ses--in-killing-named-cell-list', and its setting is done in
8903         functions `ses-delete-row' and , `ses-delete-column' now.
8904         (ses-rename-cell): Make cell new name a buffer local variable.
8905         (ses-rename-cell): Change correction of
8906         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
8907         computation of the range over which `cursor-intangible' property was
8908         to be updated. This correction was ok for non spilling cells, but not
8909         for cells spilling over following blank cells. Simply use
8910         `next-single-property-change' rather than computing the end column
8911         from column widths.
8913 2016-01-29  Andreas Schwab  <schwab@linux-m68k.org>
8915         Re-enable checks in member, memql, delete to complain about non-lists
8917         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
8919 2016-01-29  Martin Rudalics  <rudalics@gmx.at>
8921         Minor doc(-string) tweaks
8923         * lisp/window.el (window-in-direction): Fix doc-string typo.
8924         * doc/lispref/frames.texi (Frame Font): Mention canonical
8925         character width/height.
8926         * doc/lispref/windows.texi (Windows and Frames): Clarify
8927         handling of minibuffer window for `window-in-direction'.
8928         (Window Sizes): Minor tweaks in descriptions of
8929         `window-max-chars-per-line', `window-min-width' and
8930         `window-min-size'.
8931         (Deleting Windows): Minor tweak in `delete-window' description.
8932         (Selecting Windows): Clarify window use time description.
8933         (Cyclic Window Ordering): Minor tweak.
8934         (Switching Buffers): Clarify description of
8935         `switch-to-buffer-in-dedicated-window'.
8937 2016-01-29  Eli Zaretskii  <eliz@gnu.org>
8939         Minor improvements to 'pcase' documentation
8941         * doc/lispref/control.texi (Pattern matching case statement):
8942         Improve the documentation of 'pcase' per comments.  See two
8943         discussion threads on emacs-devel@gnu.org for the details:
8944         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01335.html
8945         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01336.html.
8947 2016-01-29  Glenn Morris  <rgm@gnu.org>
8949         Don't use eval to quieten prolog.el compilation.
8951         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
8952         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
8954 2016-01-29  Glenn Morris  <rgm@gnu.org>
8956         Mark some risky prolog variables.
8958         * lisp/progmodes/prolog.el (prolog-system-version)
8959         (prolog-keywords, prolog-types, prolog-mode-specificators)
8960         (prolog-determinism-specificators, prolog-directives)
8961         (prolog-program-name, prolog-program-switches)
8962         (prolog-consult-string, prolog-compile-string)
8963         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
8964         Mark anything processed by prolog-find-value-by-system as risky.
8966 2016-01-28  Glenn Morris  <rgm@gnu.org>
8968         * lisp/custom.el (defcustom): Doc fix.
8970         * doc/lispref/customize.texi (Variable Definitions):
8971         Defcustom should always have a type.
8973 2016-01-28  Glenn Morris  <rgm@gnu.org>
8975         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
8976         Fix :type.
8978         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
8980 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
8982         Fix Bug#22452
8984         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
8985         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
8986         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
8987         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
8988         Mark it as connected.
8990         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
8991         connection property "connected" is set.  (Bug#22452)
8993 2016-01-27  Glenn Morris  <rgm@gnu.org>
8995         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
8997         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
8998         if not compiled with xwidgets.
9000 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
9002         C-u C-x = example doc fix
9004         * doc/emacs/mule.texi (International Chars):
9005         Adjust example to match current behavior of C-u C-x =.
9007 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
9009         malloc.h hygiene
9011         This attempts to future-proof Emacs a bit against possible glibc
9012         changes, by having Emacs use <malloc.h> declarations rather than
9013         coding them up by hand.  Problem noted by Florian Weimer in:
9014         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
9015         Implement this mainly by moving malloc.h-related functions from
9016         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
9017         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
9018         New function.
9019         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
9020         (alloc_unexec_pre, alloc_unexec_post): New functions.
9021         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
9022         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
9023         (__malloc_initialize_hook): Use it.
9024         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
9025         Move here from ...
9026         * src/emacs.c: ... here.
9027         (malloc_get_state, malloc_set_state): Remove extern decls.
9028         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
9029         All uses changed to similarly-named new function.
9030         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
9031         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
9032         New decls.
9034 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
9036         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
9038 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9040         Remove never-set var handle_user_signal_hook
9042         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
9043         Remove never-set var.  All uses removed.
9045 2016-01-26  K. Handa  <handa@gnu.org>
9047         Backport:fix previous change of src/ftfont.c (ftfont_shape_by_flt)
9049         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
9050         second glyph only when there are enough glyphs.
9052         (cherry picked from commit 9835757013569673854b692ccbb58bfb3c3ed1f7)
9054 2016-01-26  K. Handa  <handa@gnu.org>
9056         support rendering of wider range of combinging characters by ftfont backend
9058         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
9059         supports rendering of combining characters, call
9060         font-shape-gstring.
9062         * src/font.c (Ffont_get): Handle `combining-capability' property.
9063         (syms_of_font): New symbol ":combining-capability'.
9065         * src/font.h (struct font_driver): New member combining_capability.
9067         * src/ftfont.c: Include "category.h".
9068         (ftfont_driver): Initialize combining_capability to
9069         ftfont_combining_capability.
9070         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
9071         FLT in advance.
9072         (ftfont_combining_capability): New function.
9074         (cherry picked from commit 536f48e9a2251b9e654ea974bd90ff2f40218753)
9076 2016-01-26  Anders Lindgren  <andlind@gmail.com>
9078         Fixed NextStep fullscreen issue (bug#22468)
9080         When in fullscreen mode, `[screen visibleFrame]' sometimes
9081         includes, sometimes excludes the menu bar. This could cause
9082         a frame to be placed too low when in fullscreen mode.
9084         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
9085         (constrain_frame_rect): New parameter, isFullscreen, when true don't
9086         query the height of the menu bar.
9087         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
9088         `constrain_frame_rect'.
9089         ([EmacsView initFrameFromEmacs:]): Trace.
9090         ([EmacsView isFullscreen]): Trace.
9091         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
9092         state to `constrain_frame_rect'.
9094 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9096         * lisp/files.el: Use a fixed file name for the second dir-locals file
9098         (dir-locals-file): Revert to its original fixed value.
9099         (dir-locals-file-2): New const.
9100         (dir-locals--all-files): Don't use `file-name-all-completions'.
9101         Instead, just check for the 2 dir-locals files and return a list
9102         of the ones that exit (if any).
9104         * etc/NEWS: Document the change.
9106         * doc/emacs/custom.texi (Directory Variables): Document the change.
9108         * doc/lispref/variables.texi (Directory Local Variables): Update
9109         accordingly.
9111 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9113         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
9115         Change a variable name to be more meaningful, and reorder some of
9116         the code with no change in behaviour.
9118 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9120         * lisp/files.el (dir-locals-find-file): Refactor return values
9122         Returning a cache remains unchanged, but the case of returning a
9123         file (or pattern) is now changed to return the contaning
9124         directory.
9126         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
9127         and make obsolete.
9128         (dir-locals-read-from-dir): Simplify accordingly.
9129         (hack-dir-local-variables): Simplify accordingly and rename a
9130         variable.
9132 2016-01-26  Glenn Morris  <rgm@gnu.org>
9134         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
9135         Declare.
9137         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
9139         * configure.ac (--with-cairo): Say it's experimental.
9141         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
9142         Rename using American spelling.  Update all uses.
9144 2016-01-26  Glenn Morris  <rgm@gnu.org>
9146         Yet more xwidget doc fixes.
9148         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
9149         (xwidget-insert, xwidget-webkit-browse-url)
9150         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
9151         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
9152         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9153         (xwidget-webkit-show-id-element)
9154         (xwidget-webkit-show-id-or-named-element)
9155         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
9156         (xwidget-webkit-execute-script-rv)
9157         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
9158         (xwidget-put):  Doc fixes.
9159         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9160         (xwidget-webkit-show-id-element)
9161         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
9163 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
9165         * lisp/gnus/gnus-art.el (gnus-blocked-images):
9166         Add explicit nil choice and tags.
9168 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9170         Spelling fixes
9172 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9174         (font-lock-ensure-function): Fix bug#22399
9176         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
9177         font-lock-mode is not enabled (bug#22399).
9179 2016-01-25  Alan Mackenzie  <acm@muc.de>
9181         Expunge "allow" + infinitive from source and doc, part 2.
9183         Do the same for "permit", "enable", "prevent", and (where appropriate)
9184         "require".
9186         doc/misc/reftex.texi:
9187         doc/misc/url.texi:
9188         lib/get-permissions.c:
9189         lib/strftime.c:
9190         lisp/org/org-element.el:
9191         lisp/org/org-mobile.el:
9192         lisp/textmodes/reftex-vars.el:
9193         src/bidi.c:
9194         src/emacs.c:
9195         src/xdisp.c:
9196         test/etags/c-src/emacs/src/lisp.h:
9198         Expunge the likes of "This allows to do something" from the above files.
9200 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9202         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
9204         `special-mode' is already read-only.
9206 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9208         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
9210 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9212         Port "$@" to OpenIndiana ksh93
9214         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
9215         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
9216         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
9217         bug in long-dead shells, so remove the workaround.
9218         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
9219         Use plain "$@" rather than ${1+"$@"}.
9221 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9223         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
9225 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9227         Improve wording for SMB support
9229         * doc/misc/tramp.texi (External methods): Improve and modernize
9230         wording for discussion of smbclient.  There is no longer any
9231         need to mention the laundry list of old MS Windows implementations
9232         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
9234 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9236         Merge from gnulib
9238         This incorporates:
9239         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
9240         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
9241         2016-01-15 detect utimes() correctly on OS/2 kLIBC
9242         2016-01-15 openat_proc_name: port to OS/2 kLIBC
9243         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
9244         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
9245         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
9246         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
9247         2016-01-14 sig2str: list all signals on FreeBSD >= 7
9248         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
9249         2016-01-12 mktime: rename macro to avoid glibc clash
9250         2016-01-12 Port "$@" to OpenIndiana ksh93
9251         2016-01-12 Port Universal Time settings to strict POSIX
9252         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
9253         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
9254         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
9255         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
9256         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
9257         * m4/fcntl.m4, m4/utimes.m4:
9258         Copy from gnulib.
9259         * m4/gnulib-comp.m4: Regenerate.
9261 2016-01-24  Alan Mackenzie  <acm@muc.de>
9263         Expunge "allow" + infinitive without direct object from source and doc.
9265         Do the same for "permit", "enable", and "prevent".
9267         * doc/emacs/mule.texi:
9268         * doc/lispref/control.texi:
9269         * doc/lispref/display.texi:
9270         * doc/lispref/frames.texi:
9271         * doc/lispref/functions.texi:
9272         * doc/lispref/nonascii.texi:
9273         * doc/lispref/streams.texi:
9274         * doc/lispref/windows.texi:
9275         * doc/misc/dbus.texi:
9276         * doc/misc/eww.texi:
9277         * doc/misc/flymake.texi:
9278         * doc/misc/octave-mode.texi:
9279         * doc/misc/org.texi:
9280         * doc/misc/reftex.texi:
9281         * doc/misc/tramp.texi:
9282         * doc/misc/wisent.texi:
9283         * etc/NEWS:
9284         * lisp/autorevert.el:
9285         * lisp/cedet/mode-local.el:
9286         * lisp/cedet/semantic/senator.el:
9287         * lisp/cedet/semantic/wisent.el:
9288         * lisp/dos-fns.el:
9289         * lisp/frameset.el:
9290         * lisp/gnus/gnus-agent.el:
9291         * lisp/gnus/mm-util.el:
9292         * lisp/international/characters.el:
9293         * lisp/ldefs-boot.el:
9294         * lisp/mail/mailclient.el:
9295         * lisp/man.el:
9296         * lisp/mh-e/mh-search.el:
9297         * lisp/net/tramp-cmds.el:
9298         * lisp/net/tramp-gvfs.el:
9299         * lisp/org/org-crypt.el:
9300         * lisp/org/org-element.el:
9301         * lisp/org/org-feed.el:
9302         * lisp/org/org.el:
9303         * lisp/org/ox-ascii.el:
9304         * lisp/org/ox-icalendar.el:
9305         * lisp/org/ox-publish.el:
9306         * lisp/org/ox.el:
9307         * lisp/play/gamegrid.el:
9308         * lisp/play/gomoku.el:
9309         * lisp/progmodes/antlr-mode.el:
9310         * lisp/progmodes/python.el:
9311         * lisp/progmodes/vhdl-mode.el:
9312         * lisp/strokes.el:
9313         * lisp/textmodes/ispell.el:
9314         * lisp/tree-widget.el:
9315         * lisp/vc/pcvs.el:
9316         * lisp/window.el:
9317         * src/lisp.h:
9318         * src/w32.c:
9319         * src/w32heap.c:
9320         * src/w32term.c:
9321         * src/window.c:
9322         * src/xfaces.c:
9324         Replace solecisms like "This allow to do something" with a correct
9325         alternative, such as "This allow you to do something", "This allows
9326         something to be done" or "This allows the doing of something".
9328 2016-01-24  l3thal  <kwhite@gnu.org>
9330         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
9332 2016-01-24  Kelvin White  <kwhite@gnu.org>
9334         Add NEWS entry for asynchronous reconnect in ERC
9336 2016-01-24  l3thal  <kwhite@gnu.org>
9338         Add NEWS entry for asynchronous reconnect in ERC
9340 2016-01-24  Kelvin White  <kwhite@gnu.org>
9342         browse-url.el: Add 'google-chrome' to supported browsers.
9344 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9346         Port Tramp manual to latest Texinfo
9348         Otherwise, 'make pdf' did not work (Bug#22416).
9349         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
9350         (trampfn): Specialize to the case where METHOD is nonempty.
9351         The 2nd argument is now user@host, not 2nd user and 3rd host args.
9352         All uses changed.
9353         (trampf): New macro.
9355 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
9357         * eww.el (eww-render): Protect against empty content-types.
9359 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
9361         authors.el updates
9363         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
9364           Additions.
9366 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
9368         Rename xref-query-replace to xref-query-replace-in-results
9370         * lisp/progmodes/xref.el(xref-query-replace):
9371         Rename to xref-query-replace-in-results.
9372         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
9374         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
9375         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
9376         * doc/emacs/dired.texi (Operating on Files):
9377         * doc/emacs/maintaining.texi (Xref Commands)
9378         (Identifier Search, Identifier Search): Update accordingly.
9380 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
9382         Update cl-defgeneric and cl-defmethod docstrings
9384         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
9385         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
9386         (cl-defmethod): Mention that multiple dispatch arguments are
9387         allowed.  Document supported types.  (Bug#22336)
9389 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
9391         Comment out next-error-function integration in xref
9393         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
9394         Comment out next-error-function integration
9395         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
9397 2016-01-23  John Wiegley  <johnw@newartisans.com>
9399         Correct a use of "which" in intro.texi
9401 2016-01-23  Alan Mackenzie  <acm@muc.de>
9403         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
9405         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
9406         context of case labels (including "default") more rigorously.
9407         (c-guess-basic-syntax CASE 15): Consequential amendment.
9409         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
9411 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
9413         Don't operate on menu bar of nonexistent frame
9415         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
9416         is valid before redisplaying its menu. Fixes bug#22438.
9418 2016-01-23  Anders Lindgren  <andlind@gmail.com>
9420         Unbreak the GNUstep build.
9422         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
9423         predefined "caution" image. Add trace.
9424         (x_set_window_size): Remove unused variables `cols' and `rows'.
9425         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
9426         GNUstep is used.
9427         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
9428         ([EmacsWindow zoom:]): Remove unused variable `f'.
9430 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
9431             John Wiegley  <johnw@gnu.org>
9432             Michael Heerdegen  <michael_heerdegen@web.de>
9434         Improve documentation of 'pcase'
9436         * doc/lispref/control.texi (Pattern matching case statement):
9437         Reorganize, expand, and improve wording.
9439         * etc/NEWS: Mention that 'pcase' changes are documented.
9441 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9443         * etc/NEWS: Say that Cairo is experimental.
9445 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9447         Report error for PNG under Cairo
9449         * src/image.c (lookup_rgb_color): Signal a file error instead
9450         of dumping core when mishandling an image.
9452 2016-01-23  Arash Esbati  <esbati@gmx.de>
9454         Delete a spurious backquote (tiny change)
9456         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
9457         spurious backquote which raises an error with emacs 25.
9459 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9461         Pacify --enable-gcc-warnings --with-cairo
9463         Problem reported by Alexander Kuleshov in:
9464         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
9465         * src/gtkutil.c (xg_get_page_setup):
9466         Use switch rather than if-then-else.
9467         * src/image.c (COLOR_TABLE_SUPPORT):
9468         Define directly rather than via #define and optional later #undef.
9469         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
9470         Crash when the pixel is undefined, as there is a genuine bug
9471         here (Bug#22442).
9472         * src/image.c (tiff_load, gif_load, svg_load_image)
9473         (x_kill_gs_process) [USE_CAIRO]:
9474         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
9475         Omit unused locals, or move them to where they’re needed.
9476         (x_clear_area1): Now ATTRIBUTE_UNUSED.
9478 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
9480         Update documentation for Dired search and replace
9482         * doc/emacs/dired.texi (Operating on Files): Update descriptions
9483         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
9484         'dired-do-find-regexp-and-replace'.
9486         * etc/NEWS: Mention xref-related changes in Dired.
9488 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9490         Port recent xdisp.c fix to picky C compilers
9492         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
9493         putting #if inside the arguments to a standard function, which
9494         the C standard says has undefined behavior.
9496 2016-01-22  Alan Mackenzie  <acm@muc.de>
9498         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
9500         * lisp/progmodes/cc-engine.el (c-forward-declarator): New function.
9501         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
9502         contained in the preceding arg list.
9504         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Use the new function
9505         `c-forward-declarator' in place of inline code.
9507 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
9509         Fix the build with --enable-checking=glyphs
9511         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
9512         build without xwidget support.
9514 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
9516         Document cl-generic.el
9518         * doc/lispref/functions.texi (Generic Functions): New section.
9519         (Bug#22336)
9520         (Functions): Update the chapter menu.
9521         * doc/lispref/elisp.texi: Update the master menu.
9523 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
9525         xwidgets style cleanup
9527         Adjust the newly-added Xwidgets code so that it uses a more-typical
9528         Emacs style.  This should not affect behavior, except that in
9529         a few places it adds runtime checks that Lisp arguments are of
9530         the proper type, and in one place it uses more-precise arithmetic.
9531         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
9532         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
9533         Include xwidget.h unconditionally.
9534         * src/buffer.c (Fkill_buffer):
9535         * src/dispnew.c (update_window):
9536         * src/emacs.c (main):
9537         * src/print.c (print_object):
9538         * src/window.c (Fdelete_window_internal):
9539         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
9540         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
9541         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
9542         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
9543         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
9544         Call xwidget functions and macros without worrying about
9545         HAVE_XWIDGETS when the code is a no-op on non-xwidget
9546         platforms.
9547         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
9548         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
9549         (struct it.xwidget):
9550         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
9551         Always define.
9552         * src/emacsgtkfixed.h: Omit unnecessary comment.
9553         * src/keyboard.c: Fix spacing.
9554         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
9555         Define to be a no-op if not HAVE_XWIDGETS.
9556         * src/xwidget.c: Include xwidget.h first (after config.h)
9557         to make sure that it can stand by itself.
9558         (Fmake_xwidget, Fxwidget_webkit_execute_script):
9559         Fix typo in doc string.
9560         (Fmake_xwidget): Check type of args.
9561         (Fmake_xwidget, offscreen_damage_event)
9562         (webkit_document_load_finished_cb, webkit_download_cb)
9563         (webkit_new_window_policy_decision_requested_cb)
9564         (webkit_navigation_policy_decision_requested_cb)
9565         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
9566         (xwidget_osr_event_set_embedder, xwidget_init_view):
9567         Omit unnecessary casts.
9568         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
9569         (xwidget_show_view, xwidget_hide_view)
9570         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
9571         (xwidget_touched):
9572         * src/xwidget.h (struct xwidget.kill_without_query)
9573         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
9574         Use bool for boolean.
9575         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
9576         Simplify by using list functions.
9577         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
9578         (Fxwidget_resize): Check type of integer args
9579         before doing any work.  Check that they are nonnegative.
9580         (Fxwidget_set_adjustment): Check type of integer arg.
9581         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
9582         Simplify.  Use double, not float.
9583         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
9584         (valid_xwidget_spec_p): Simplify.
9585         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
9586         * src/xwidget.h: Include lisp.h first, so that includers do
9587         not need to worry about doing that before including this file.
9588         Make this .h file safe to include even on non-HAVE_XWIDGETS
9589         configurations, to simplify the includers.
9590         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
9591         (xwidget_end_redisplay, lookup_xwidget)
9592         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
9593         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
9594         (struct glyph_matrix, struct glyph_string, struct xwidget)
9595         (struct xwidget_view, struct window):
9596         New forward or incomplete decls, so that includers need not
9597         assume the corresponding .h files are already included, or that
9598         HAVE_XWIDGETS is defined.
9599         (struct xwidget_type, xwidget_from_id): Remove; unused.
9601 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
9603         Backport kqueue integration from master
9605         * configure.ac (--with-file-notification): Add kqueue.
9606         (top): Remove special test for "${HAVE_NS}" and
9607         ${with_file_notification}, this is handled inside gfilenotify
9608         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
9609         instead of library specific variables.  Add error message for
9610         gfile on Nextstep.
9612         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
9613         Fix some glitches in the example.
9615         * etc/NEWS: Mention kqueue.
9617         * lisp/filenotify.el (file-notify--library)
9618         (file-notify-descriptors, file-notify-callback)
9619         (file-notify-add-watch, file-notify-rm-watch)
9620         (file-notify-valid-p): Add kqueue support.
9621         (file-notify--rm-descriptor): Remove WHAT arg.
9623         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
9625         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
9627         * src/inotify.c (inotifyevent_to_event): Extract file name from
9628         watch_object if the event doesn't provide it.
9629         (Finotify_add_watch): Add file name to watch_object.
9631         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
9633         * src/kqueue.c: New file.
9635         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
9637         * test/automated/file-notify-tests.el
9638         (file-notify--test-expected-events): Remove.
9639         (file-notify--test-cleanup): Do not set that variable.
9640         (file-notify--test-timeout) Use different timeouts for
9641         different libraries.
9642         (file-notify--test-library): New defun.
9643         (file-notify--test-event-test): Make stronger checks.
9644         (file-notify--test-with-events): EVENTS can also be a list of
9645         lists.  Flush outstanding events before running the body.
9646         Make timeout heuristically depend on the number of events.
9647         (file-notify-test01-add-watch, file-notify-test02-events)
9648         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
9649         Rewrite in order to call file monitors but directory monitors.
9650         (file-notify-test02-events, file-notify-test04-file-validity): Do
9651         not skip cygwin tests.  Add additional test for file creation.
9652         Adapt expected result for different backends.
9653         (file-notify-test03-autorevert): Some of the tests don't work for
9654         w32notify.
9655         (file-notify-test06-many-events): New test.
9657 2016-01-22  John Wiegley  <johnw@newartisans.com>
9659         Further corrections to the pcase docstring
9661 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
9663         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
9665 2016-01-22  Stephen Leake  <stephen_leake@stephe-leake.org>
9667         In xref-collect-references, force backends to respect the 'dir' arg
9669         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
9670         to use `default-directory'.
9672 2016-01-22  John Wiegley  <johnw@newartisans.com>
9674         Minor correction to pcase docstring
9676 2016-01-22  John Wiegley  <johnw@newartisans.com>
9678         Write a new docstring for the pcase macro
9680         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
9682 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
9684         Avoid byte-compiler warning in todo-mode (bug#21953)
9686         * lisp/calendar/todo-mode.el (todo-convert-legacy-files): Add limit argument
9687         to looking-back to comply with advertised-calling-convention.
9689 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
9691         Fix desktop support in todo-mode and doc-view (bug#22377)
9693         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
9694         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
9696         * lisp/calendar/todo-mode.el (todo-modes-set-2):
9697         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
9699 2016-01-21  Paul Eggert  <eggert@cs.ucla.edu>
9701         No need to configure gobject-introspection
9703         It wasn’t needed for the recently-installed xwidget_mvp code; see:
9704         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
9705         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
9706         (HAVE_GIR):
9707         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
9708         Remove.  All uses removed.
9709         * configure.ac (emacs_config_features): Don’t worry about GIR.
9711 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
9713         Don’t export C symbols not used elsewhere
9715         These were recently added, mostly as part of xwidget code.
9716         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
9717         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
9718         Now static functions here, not macros in emacsgtkfixed.h.
9719         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
9720         Remove.  All uses replaced by definiens.
9721         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
9722         Remove; these are now static functions in emacsgtkfixed.c.
9723         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
9724         Remove; unused.
9725         (emacs_fixed_get_type): Remove decl; no longer extern.
9726         * src/xwidget.c (offscreen_damage_event)
9727         (webkit_mime_type_policy_typedecision_requested_cb)
9728         (webkit_new_window_policy_decision_requested_cb)
9729         (webkit_navigation_policy_decision_requested_cb)
9730         (xwidget_spec_value, xwidget_view_lookup)
9731         (xwidget_start_redisplay, xwidget_touch):
9732         Now static.
9733         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
9734         Remove decls.
9736 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
9738         Support squiggly heredocs in ruby-mode
9740         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
9741         Support squiggly heredocs added in Ruby 2.3.
9743         * test/indent/ruby.rb: Add squiggly example.
9745 2016-01-20  Glenn Morris  <rgm@gnu.org>
9747         * configure.ac (emacs_config_features): Remove WEBKIT.
9749 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
9751         Port to platforms with gtk3 but not webkitgtk3
9753         I ran into this problem on my Fedora 23 installation;
9754         Emacs configured but did not build when --with-xwidgets was specified.
9755         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
9756         (DOES_XWIDGETS_USE_GIR): New var.
9757         If --with-xwidgets is specified, report an error if not
9758         doable, to be consistent with the other --with options.
9759         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
9760         not work at all without webkitgtk3.  Simplify use of
9761         EMACS_CHECK_MODULES.  Output message about gobject
9762         introspection only if xwidgets are used.
9763         * etc/NEWS: Users need webkitgtk3, not merely webkit.
9764         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
9765         since this file is no longer compiled if webkitgtk3 is not available.
9767 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
9769         Fix doc string of 'isearch-search-fun-function'
9771         * lisp/isearch.el (isearch-search-fun-function)
9772         (isearch-search-string): Doc fixes.  (Bug#22411)
9774 2016-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
9776         * lisp/xwidget.el: Nitpicks
9778         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
9779         Use with-current-buffer rather than save-excursion + set-buffer.
9781 2016-01-20  Glenn Morris  <rgm@gnu.org>
9783         Don't hard-code 1 as point-min.
9785         * lisp/image-mode.el (image-display-size):
9786         * lisp/xwidget.el (xwidget-webkit-last-session)
9787         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
9789 2016-01-20  Glenn Morris  <rgm@gnu.org>
9791         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
9793 2016-01-20  Glenn Morris  <rgm@gnu.org>
9795         Trivial doc copyedits.
9797         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
9798         (Fxwidget_webkit_get_title, Fxwidget_resize)
9799         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
9800         (Fxwidget_info, Fxwidget_view_lookup)
9801         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
9803 2016-01-20  Glenn Morris  <rgm@gnu.org>
9805         Avoid advising image-display-size for xwidgets.
9807         * lisp/xwidget.el (xwidget-image-display-size): Remove.
9808         (image-display-size): Remove advice.
9809         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
9810         (image-display-size): Incorporate xwidget code directly.
9812 2016-01-20  Glenn Morris  <rgm@gnu.org>
9814         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
9816         * lisp/xwidget.el (window-configuration-change-hook)
9817         (kill-buffer-query-functions): Only modify these hooks if
9818         compiled with xwidget support.
9820 2016-01-20  Glenn Morris  <rgm@gnu.org>
9822         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
9824 2016-01-19  Glenn Morris  <rgm@gnu.org>
9826         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
9828         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
9830         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
9832 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
9834         * lisp/gnus/nnir.el (nnir-request-update-mark):
9835         Default to the original mark.
9836         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
9837         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
9839 2016-01-19  Glenn Morris  <rgm@gnu.org>
9841         * lisp/xwidget.el (report-xwidget-bug): Remove.
9843         (top-level): No longer require reporter.
9845 2016-01-19  Joakim Verona  <joakim@verona.se>
9846             Grégoire Jadi  <daimrod@gmail.com>
9848         Support for the new Xwidget feature.
9850         * configure.ac:
9851         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
9852         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
9853         * src/xdisp.c:
9854         (handle_display_spec, handle_single_display_spec, push_it)
9855         (pop_it, set_iterator_to_next, dump_glyph)
9856         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
9857         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
9858         (produce_xwidget_glyph, x_produce_glyphs)
9859         (get_window_cursor_type):
9860         * src/window.c (Fdelete_window_internal):
9861         * src/termhooks.h (e):
9862         * src/print.c (print_object):
9863         * src/lisp.h (ptrdiff_t):
9864         * src/keyboard.c (kbd_buffer_get_event, make_lispy_event)
9865         (syms_of_keyboard):
9866         * src/emacs.c (main):
9867         * src/dispnew.c (update_window, scrolling_window):
9868         * src/dispextern.h (g, i):
9869         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
9870         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
9871         * src/keyboard.c (kbd_buffer_get_event):
9872         * src/emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
9873         (emacs_fixed_class_init): Add case for an xwidget view.
9875         * src/xwidget.c, src/xwidget.h, lisp/xwidget.el: New files for xwidgets
9878         Various improvements to the Xwidget feature.
9879         * src/xwidget.c:
9880         * src/emacsgtkfixed.c:
9881         * lisp/xwidget.el:
9883 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
9885         Improve documentation of 'alist-get'
9887         * doc/lispref/variables.texi (Setting Generalized Variables): Add
9888         'alist-get' to the list of functions that can appear in PLACE
9889         argument of 'setf'.
9891 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
9893         Minor copyedits of doc/emacs/maintaining.texi
9895         * doc/emacs/maintaining.texi (List Identifiers): More accurate
9896         description of "C-M-i" wrt tags tables.
9897         (Tags Tables): Move the definition of "tag" to a footnote.
9899 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
9901         Unbreak the Cygwin-w32 build
9903         * src/w32fns.c (globals_of_w32fns): Move the initialization of
9904         resetstkoflw into a part that isn't compiled on Cygwin.
9905         (Bug#22403)
9907 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9909         * shr.el (shr-table-body): Allow tables to have text children.
9911 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
9913         Cope with multiple overlapping faces.
9915         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
9916           left.
9917           (hfy-face-resolve-face): Handle font specification as well as font
9918           name. Documentation update. (Bug#21990)
9920 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
9922         Fix spurious escapes in describe-input-method
9924         Problem reported by Vincent Belaïche (Bug#22309).
9925         * lisp/international/mule-cmds.el (describe-language-environment):
9926         * lisp/international/quail.el (quail-help):
9927         Apply substitute-command-keys to doc strings before displaying them.
9929 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
9931         Minor improvements to (random t) documentation
9933         * doc/lispref/numbers.texi (Random Numbers):
9934         * src/fns.c (Frandom):
9935         Omit unnecessary details about randomness fallback.
9936         Say that it is a fallback.
9938 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
9940         Rename methods in Ruby etags example file
9942         * test/etags/ruby-src/test.rb: Rename the example methods to
9943         correspond to the common terminology used in Ruby.
9944         * test/etags/CTAGS.good:
9945         * test/etags/ETAGS.good_1:
9946         * test/etags/ETAGS.good_2:
9947         * test/etags/ETAGS.good_3:
9948         * test/etags/ETAGS.good_4:
9949         * test/etags/ETAGS.good_5:
9950         * test/etags/ETAGS.good_6: Adjust accordingly.
9952 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
9954         Propertize backtick in 'def `(abc)' as symbol constituent
9956         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
9957         Propertize backtick in 'def `(abc)' as symbol constituent.
9958         (ruby-syntax-propertize-function):
9959         Rename to ruby-syntax-propertize.
9961 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
9963         Fix scrolling under scroll-preserve-screen-position on TTY
9965         * src/window.c (window_scroll_line_based): When setting point to
9966         preserve screen coordinates, don't let cursor enter either of the
9967         two scroll margins.  (Bug#22395)
9969 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9971         Fix shr table rendering of nested tables
9973         * shr.el (shr-table-body): Don't include all tbodies in nested
9974         tables in the levels above.
9976 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
9978         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
9980 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
9982         Add xref-based replacements for Dired search commands
9984         * lisp/dired-aux.el (dired-do-find-regexp)
9985         (dired-do-find-regexp-and-replace): New commands.
9986         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
9988         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
9989         `Q' to the new commands.
9991         * lisp/progmodes/xref.el (xref-query-replace)
9992         (xref-collect-matches): Add progress reporters.
9993         (xref--find-ignores-arguments): Return nil for zero ignores.
9994         (xref--show-xrefs): Add an optional argument.
9995         (xref-collect-matches): Drop the assert.  'find' accepts a
9996         regular file in place of directory argument, too.
9998 2016-01-18  Alan Mackenzie  <acm@muc.de>
10000         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
10002 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10004         Improve user documentation of Xref
10006         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
10007         (Looking Up Identifiers, Identifier Search, List Identifiers):
10008         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
10009         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
10010         for the details.
10012 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10014         Fix scrolling under scroll-preserve-screen-position and margins
10016         * src/window.c (window_scroll_pixel_based): When setting point to
10017         preserve screen coordinates, don't let cursor enter either of the
10018         two scroll margins.  Fix incorrect usage of
10019         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
10020         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
10022 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10024         Unbreak the MS-Windows build
10026         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
10027         WINDOWSNT, to avoid link failure.  (Bug#22202)
10029 2016-01-18  Alan Mackenzie  <acm@muc.de>
10031         Desktop: protect users against inadvertant upgrading of desktop file.
10033         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
10035         * etc/NEWS: Add an entry about upgrading a desktop file.
10037         * lisp/desktop.el (desktop-file-version): Amend doc string.
10038         (desktop-native-file-version, desktop-io-file-version): new variables.
10039         (desktop-clear): Set desktop-io-file-version to nil.
10040         (desktop-buffer-info): make the presence of the last item on the list
10041         conditional on (>= desktop-io-file-version 208).
10042         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
10043         Amend the doc string.  Add code to determine the output file version.
10044         (desktop-create-buffer): Set desktop-io-file-version to the input file's
10045         version.
10047 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
10049         Initialize GnuTLS before calling gnutls_rnd
10051         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
10052         Don’t set gnutls_global_initialized if gnutls_global_init fails.
10053         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
10054         if 2.12 or later, which has gnutls_rnd.
10055         (emacs_gnutls_global_init, gnutls_rnd): New fallback
10056         placeholder macros if before 2.12.
10057         (init_random): Initialize gnutls globals before trying to
10058         use gnutls_rnd.
10060 2016-01-18  Andreas Schwab  <schwab@linux-m68k.org>
10062         Don't use GnuTLS before it is initialized
10064                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
10066 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10068         Port cleanup attribute to OpenBSD
10070         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
10071         sprintf, and this messes up 'configure' when it tests for the cleanup
10072         attribute.  Work around the problem by using __has_attribute directly.
10073         Problem reported by Joakim Jalap (Bug#22385).
10074         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
10075         * m4/ax_gcc_var_attribute.m4: Remove.
10076         * src/conf_post.h (__has_attribute): Provide a substitute, for
10077         non-GCC or older GCC compilers.  All uses changed to assume
10078         the substitute.  Check for the cleanup attribute.
10079         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
10081 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10083         Prefer GnuTLS when acquiring random seed
10085         This attempts to improve on the fix for Bug#22202.
10086         * configure.ac (HAVE_DEV_URANDOM): Remove.
10087         Check /dev/urandom existence at run time, not at build time,
10088         since the device could exist in the former but not the latter.
10089         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
10090         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
10091         (random_seed): New typedef.
10092         (set_random_seed): New static function.
10093         (seed_random): Use them.
10094         (init_random): Use random_seed instead of uintmax_t, so as to
10095         not consume more entropy than needed.  Prefer gnutls_rnd if it
10096         works; this avoids a redundant open of /dev/urandom on
10097         GNU/Linux with modern GnuTLS.
10099 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10101         Improve documentation of dynamic modules
10103         * doc/lispref/loading.texi (How Programs Do Loading): Update the
10104         description of searching for files in 'load' when Emacs was built
10105         with support for dynamic modules.
10107 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10109         * INSTALL: Document --with-modules.
10111 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10113         Document 'function-put'
10115         * doc/lispref/symbols.texi (Symbol Plists): Document
10116         'function-put'.  Update documentation of 'function-get'.
10118 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10120         Document 'funcall-interactively'
10122         * doc/lispref/commands.texi (Interactive Call): Document
10123         'funcall-interactively'.
10124         * doc/lispref/functions.texi (Calling Functions): Mention
10125         'funcall-interactively' and provide a cross-reference.
10127 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10129         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
10131         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
10133 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10135         Document renaming of selection-related functions
10137         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
10138         functions into the corresponding "gui-*" functions.  Make the
10139         description slightly less X-centric.
10141 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10143         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
10145 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10147         Document 'define-inline'
10149         * doc/lispref/functions.texi (Defining Functions): Document
10150         'define-inline' and related macros.
10152         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
10154 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10156         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
10158         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
10160 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10162         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
10164         instead of manually writing a dir-locals file.
10166 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10168         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
10170         (dir-locals-file)
10171         * lisp/files-x.el (modify-dir-local-variable)
10172         * lisp/dos-fns.el (dosified-file-name)
10173         * lisp/help-fns.el (describe-variable): Change accordingly.
10175 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
10177         Fix incompatbilities with MS-Windows 2000 and older
10179         * src/w32.c <multiByteToWideCharFlags>: New global variable.
10180         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
10181         Use it instead of the literal MB_ERR_INVALID_CHARS.
10182         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
10183         appropriate for the underlying OS version.  For details, see
10184         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
10185         * src/w32.h: Declare multiByteToWideCharFlags.
10186         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
10187         (add_tray_notification): Use multiByteToWideCharFlags instead of
10188         the literal MB_ERR_INVALID_CHARS.
10189         (_resetstkoflw_proc): New typedef.
10190         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
10191         pointer, as this function is absent in msvcrt.dll shipped with W2K
10192         and older systems.
10194 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10196         Mention in PROBLEMS an issue with MS-Windows NT4
10198         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
10199         on Windows NT4.  For the details, see
10200         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
10202 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
10204         Ensure 8-byte aligned memory allocation on MS-Windows 9X
10206         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
10207         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
10208         (malloc_after_dump_9x, realloc_after_dump_9x)
10209         (free_after_dump_9x): New functions.  (Bug#22379)  See also
10210         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
10211         for more details about the original problem.
10213         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
10214         (free_after_dump_9x): Add prototypes.
10216 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10218         Fix tests for active region in hideif.el
10220         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
10221         'use-region-p' to test whether to operate on region, instead of
10222         testing 'mark-active'.
10224 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10226         Fix interactive specs in some hideif.el commands
10228         * lisp/progmodes/hideif.el (hif-evaluate-macro)
10229         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
10230         in commands that should only act on the region if it's active.
10232 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
10234         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
10236 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
10238         Enable test selector from command line
10240         * test/automated/Makefile.in: Change variable manipulation to avoid
10241           over-writing selector.
10243 2016-01-15  Alan Mackenzie  <acm@muc.de>
10245         Don't confuse "::" with ":" when trying to parse member initializers.
10247         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
10248         more robustly for ":" token when searching backwards for it.
10250         * lisp/progmodes/cc-langs.el (c-:$-multichar-token-regexp): New language
10251         variable.
10253 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10255         Ensure positive number of glyphs for margins of positive width
10257         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
10258         positive value when a non-zero width of the marginal area was
10259         requested.  (Bug#22356)
10261 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10263         Fix crashes when mini-window has non-zero margins
10265         * src/window.c (resize_frame_windows): Use 'new_size' to set
10266         minibuffer window's 'total_cols' value, as 'size' might be in
10267         pixels.  (Bug#22356)
10269 2016-01-15  Alan Mackenzie  <acm@muc.de>
10271         In comment-dwim with style `extra-line', respect indent-tabs-mode.
10273         This fixes bug #22369.
10275         * lisp/newcomment.el (comment-make-bol-ws): New function.
10276         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
10278 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10280         Make 'random' seeds cryptographically secure if possible
10282         * configure.ac: Check for "/dev/urandom".
10284         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
10285         for the seed from "/dev/urandom".
10286         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
10287         * src/fns.c (Frandom): Update the doc string to indicate that
10288         system entropy is used when available.
10289         * src/w32.c: Include wincrypt.h.
10290         (w32_init_crypt_random, w32_init_random): New functions, use the
10291         CryptGenRandom API.
10292         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
10293         * src/w32.h (w32_init_random): Add prototype.
10295         * doc/lispref/numbers.texi (Random Numbers): Document more details
10296         about 't' as the argument to 'random'.
10298         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
10299         strong seed if possible.
10301         (Bug#22202)
10303 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10305         Unhide the --no-line-directive option to 'etags'
10307         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
10308         option.  (Bug#22306)
10310         * doc/man/etags.1: Document the --no-line-directive option.
10312 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
10314         Fix picture-mode wrt double-width characters
10316         * lisp/textmodes/picture.el (picture-insert): Check the width of
10317         the character being replaced, not just that of the replacement.
10318         (Bug#1808)
10320 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
10322         Honor docstring of gnus-group-get-new-news
10324         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
10325         but non-numeric, unconditionally consider all groups to need updating.
10327 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
10329         Disallow parenthesis in non-pseudo CSS selectors
10331         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
10332         parenthesis in selectors except for in the function notation that
10333         might appear right after a pseudo-class.
10334         * test/indent/scss-mode.scss: Add a test for it.
10336 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
10338         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
10340 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
10342         check-maybe shall run only default tests
10344         * test/automated/Makefile.in (check, check-expensive): Depend on
10345         mostlyclean.
10346         (check-maybe): Re-run only default tests.
10347         (check-doit): Use code of check-maybe.
10348         (mostlyclean): Move *.log files away.
10350 2016-01-14  Mark Oteiza  <mvoteiza@udel.edu>
10352         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
10354 2016-01-14  Dmitry Gutov  <dgutov@yandex.ru>
10356         Un-obsolete tags-loop-continue
10358         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
10359         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
10361 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10363         Document obsoletion of 'intangible' and 'point-entered/left'
10365         * doc/lispref/text.texi (Special Properties): Document the new
10366         properties 'cursor-intangible' and 'cursor-sensor-functions'.
10367         Document the obsolete status of 'intangible', 'pointer-left',
10368         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
10369         * doc/lispref/display.texi (Overlay Properties): Document that
10370         'intangible' overlay property is obsolete.
10372         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
10374 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10376         Updater documentation of 'looking-back'
10378         * doc/lispref/searching.texi (Regexp Search): Update documentation
10379         of 'looking-back'.  Fix markup.
10381 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10383         Document 'pre-redisplay-functions'
10385         * doc/lispref/hooks.texi (Standard Hooks):
10386         * doc/lispref/display.texi (Forcing Redisplay): Document
10387         'pre-redisplay-functions'.
10389 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10391         Document the new deafault value of 'load-read-function'
10393         * doc/lispref/loading.texi (How Programs Do Loading): Document the
10394         change in the default value of 'load-read-function'.
10396 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10398         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
10400         * doc/lispref/nonascii.texi (Text Representations): Document
10401         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
10403 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10405         Document the new prefix-command hooks
10407         * doc/lispref/hooks.texi (Standard Hooks): Document
10408         `prefix-command-echo-keystrokes-functions' and
10409         `prefix-command-preserve-state-hook'.
10411 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
10413         Fix one more misuse of time-stamp-time-zone
10415         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
10416         than the unportable "GMT" for time zone.
10418 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
10420         Fix NNTP NEWGROUPS off-by-a-few-hours bug
10422         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
10423         in Universal Time, since we’re telling the server “GMT”.
10425 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
10427         Update publicsuffix.txt from upstream
10429         * etc/publicsuffix.txt: Update from
10430         https://publicsuffix.org/list/effective_tld_names.dat
10431         dated 2016-01-12 11:52:01 UTC.
10433 2016-01-13  Glenn Morris  <rgm@gnu.org>
10435         Fix some declarations.
10437         * lisp/descr-text.el (internal-char-font):
10438         * lisp/cedet/mode-local.el (xref-item-location):
10439         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
10440         (epg-sub-key-capability, epg-sub-key-validity):
10441         * lisp/international/mule-util.el (internal-char-font):
10442         Fix declarations.
10444 2016-01-13  Glenn Morris  <rgm@gnu.org>
10446         Fix some custom types.
10448         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
10449         * lisp/gnus/gnus.el (gnus-valid-select-methods):
10450         * lisp/mail/rmail.el (rmail-get-coding-function):
10451         * lisp/net/newst-treeview.el (newsticker-groups-filename):
10452         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
10453         * lisp/textmodes/tildify.el (tildify-space-predicates):
10454         * lisp/url/url-tramp.el (url-tramp-protocols):
10455         Fix custom types.
10457 2016-01-13  Glenn Morris  <rgm@gnu.org>
10459         Add some missing version tags.
10461         * lisp/electric.el (electric-quote-comment)
10462         (electric-quote-string, electric-quote-paragraph):
10463         * lisp/epg-config.el (epg-gpgconf-program):
10464         * lisp/rect.el (rectangle-preview):
10465         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
10466         * lisp/emacs-lisp/package.el (package-selected-packages)
10467         (package-hidden-regexps):
10468         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
10469         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
10470         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
10471         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
10472         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
10473         (mml-smime-sign-with-sender, mml2015-always-trust)
10474         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
10475         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
10476         (browse-url-conkeror-arguments):
10477         * lisp/net/newst-reader.el (newsticker-download-logos):
10478         * lisp/progmodes/gud.el (gud-guiler-command-name):
10479         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
10480         * lisp/progmodes/project.el (project-vc):
10481         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
10482         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
10483         (python-shell-completion-native-disabled-interpreters)
10484         (python-shell-completion-native-enable)
10485         (python-shell-completion-native-output-timeout)
10486         (python-shell-completion-native-try-output-timeout):
10487         * lisp/progmodes/xref.el (xref):
10488         * lisp/term/screen.el (xterm-screen-extra-capabilities):
10489         * lisp/term/xterm.el (xterm-max-cut-length):
10490         Add missing version tags.
10492 2016-01-13  Glenn Morris  <rgm@gnu.org>
10494         * test/automated/core-elisp-tests.el
10495         (core-elisp-tests-1-defvar-in-let): Add a custom type.
10497 2016-01-13  Glenn Morris  <rgm@gnu.org>
10499         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
10501         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
10503 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
10505         Merge from gnulib
10507         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
10508         It also updates to the latest version of texinfo.tex.
10509         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
10510         * build-aux/update-copyright, doc/misc/texinfo.tex:
10511         Update from gnulib.
10513 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10515         Update documentation of 'process-running-child-p'
10517         * doc/lispref/processes.texi (Input to Processes): Document the
10518         changes in return value of 'process-running-child-p'.
10520 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10522         Update documentation of 'deactivate-mark'.
10524         * doc/lispref/markers.texi (The Mark): Document that
10525         'deactivate-mark' is now buffer-local when set.
10527 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10529         Update documentation of 'completion-table-dynamic'
10531         * doc/lispref/minibuf.texi (Programmed Completion): Document the
10532         new optional argument to 'completion-table-dynamic'.
10534 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10536         Document changes in 'read-buffer' and 'read-buffer-function'
10538         * doc/lispref/minibuf.texi (High-Level Completion): Document the
10539         4th argument to 'read-buffer' and 'read-buffer-function'.
10541 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
10543         Fix time-stamp-time-zone bugs introduced in July
10545         This fixes a bug introduced when the July changes to
10546         format-time-string installed, as the changes were not
10547         correctly handled in this module (Bug#22302).
10548         Also, document time stamp time zones.
10549         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
10550         (time-stamp--format): New private function.
10551         (time-stamp-string, time-stamp-string-preprocess)
10552         (time-stamp-do-number): Use it.
10553         * doc/emacs/files.texi (Time Stamps): Mention time zones.
10554         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
10556 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10558         Make piping to subprocesses more robust on MS-Windows
10560         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
10561         buffer can hold.  Don't return -1 if something has been written to
10562         the pipe.  Zero out 'errno' before calling '_write', to avoid
10563         returning a stale value.  (Bug#22344)
10564         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
10565         * src/w32.c (pipe2): Use it to request a user-defined size for the
10566         pipe being created.
10568         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
10570         * doc/emacs/msdos.texi (Windows Processes): Document
10571         'w32-pipe-buffer-size'.
10573 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
10575         test/automated/vc-hg.el: Support out-of-tree build
10577         * test/automated/vc-hg.el
10578         (vc-hg-annotate-extract-revision-at-line-with-filename)
10579         (vc-hg-annotate-extract-revision-at-line-with-both):
10580         Don't refer to source-directory.
10581         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
10583 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
10585         Minor change in tramp-tests.el
10587         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
10588         Use `dired-uncache' instead of a Tramp internal function.
10590 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
10592         * etc/HELLO: Add Armenian and Mongolian greetings.
10594         (Bug#22346)
10596 2016-01-11  Alan Mackenzie  <acm@muc.de>
10598         Java Mode: Fontify identifiers in the presence of annotations.
10600         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
10601         Don't move point when the defun fails.
10602         (c-forward-decl-or-cast-1): Correct a usage of match data.
10604         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
10605         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
10606         removed variable.
10608         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
10610 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
10612         Avoid an infloop when we run out of memory
10614         * src/alloc.c (garbage_collect_1): Don't bother saving and
10615         restoring the echo-area message if we are GC'ing after running out
10616         of memory.  This avoids an infloop due to repeated attempts to
10617         allocate memory for the cons cell needed to save the message,
10618         which signals the memory-full error, which attempts to save the
10619         echo-area message, which signals memory-full again, etc.
10621 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
10623         Avoid unnecessary failures of auto-saving after fatal error
10625         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
10626         the benefit of FAT volumes if we are called as part of shutting
10627         down due to a fatal error, which probably means we are trying to
10628         auto-save the session.
10629         * src/lread.c (check_obarray): Don't bother making the obarray
10630         valid if we are shutting down due to a fatal error.  This avoids
10631         interfering with auto-saving the crashed session.
10633 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
10635         Simplify HAVE_MODULES use in mark_maybe_pointer
10637         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
10638         so that later code can use 'if' rather than '#ifdef'.
10639         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
10640         always working.
10642 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
10644         Revert attempt to use 'noexcept' in typedef
10646         This use of 'noexcept' runs afoul of the C++11 standard.
10647         Problem reported by Philipp Stephani in:
10648         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
10649         * src/emacs-module.c (emacs_finalizer_function):
10650         Move this typedef here ...
10651         * src/emacs-module.h: ... from here, and use only the C
10652         version of the typedef.  The typedef is now private since it
10653         is never used in the .h file now and anyway it seemed to be
10654         causing more confusion than it cured.
10655         (make_user_ptr, get_user_finalizer, set_user_finalizer):
10656         Open-code the type instead.
10658 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
10660         Update documentation of 'indirect-function'
10662         * doc/lispref/eval.texi (Function Indirection): Update the
10663         documentation of 'indirect-function'.
10665 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
10667         Update documentation for obsoleting 'syntax-begin-function'
10669         * doc/lispref/syntax.texi (Position Parse): Undocument
10670         'syntax-begin-function' that is now obsolete.
10672 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
10674         Document new features if Eshell
10676         * doc/misc/eshell.texi (Input/Output): Document the new
10677         '#<bufname>' syntax.
10678         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
10679         Disable "Key Index" generation, as there are no @kindex entries in
10680         this manual.
10682 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
10684         Handle too long commands in Tramp
10686         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
10687         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
10688         order to not exceed shell command line limit.
10690         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
10691         (tramp--test-utf8): Include Arabic file name, again.
10693 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
10695         * .gitattributes: *.cur and *.pif are binary files too.
10697 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
10699         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
10701 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
10703         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
10705         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
10706         within $(...).
10707         * test/indent/shell.sh: Add corresponding test.
10709 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
10711         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
10713         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
10714         cast to Lisp_Object.
10716 2016-01-10  Dmitry Gutov  <dgutov@yandex.ru>
10718         Use short date for 'hg annotate', and output the author
10720         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
10721         Change '-d' to '-dq'.  (Bug#21805)
10722         (vc-hg-annotate-switches): Default to "-u" "--follow".
10723         (vc-hg-annotate-re): Update to recognize the short date format
10724         and the optional username.
10725         (vc-hg-annotate-time)
10726         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
10728         * test/automated/vc-hg.el: New file.
10730 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
10732         Spelling fix
10734 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
10736         Document user-level functions in project.el
10738         * lisp/progmodes/project.el (project-find-file)
10739         (project-or-external-find-file): Add doc strings.
10741 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
10743         Document the user-level features of the Xref package
10745         * doc/emacs/maintaining.texi (Maintaining): Add a list of
10746         described features.
10747         (Xref): New section, made out of thoroughly rewritten "Tags"
10748         section.
10749         (Find Identifiers, Looking Up Identifiers, Xref Commands)
10750         (Identifier Search, List Identifiers): New subsections,
10751         incorporating the old tags commands and the new xref commands.
10752         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
10753         Section and subsections demoted to a lower level.
10754         * doc/emacs/search.texi (Search):
10755         * doc/emacs/windows.texi (Pop Up Window):
10756         * doc/emacs/frames.texi (Creating Frames):
10757         * doc/emacs/programs.texi (Imenu, Symbol Completion):
10758         * doc/emacs/building.texi (Grep Searching):
10759         * doc/emacs/dired.texi (Operating on Files):
10760         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
10762 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
10764         * doc/lispref/loading.texi: Add `define-type' entry for load-history
10766         * doc/lispref/loading.texi (Where Defined): Remove incorrect
10767         cl-defmethod description, and add missing define-type entry.
10769 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
10771         Improve doc strings and prompts in xref.el
10773         * lisp/progmodes/xref.el (xref-backend-functions)
10774         (xref-find-definitions): Doc fixes.
10775         (xref-query-replace): Doc fix.  Improve prompts for arguments.
10777 2016-01-09  Alan Mackenzie  <acm@muc.de>
10779         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
10781         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
10782         `font-lock-extend-regions-wholelines' from
10783         `font-lock-extend-region-functions' rather than setting the latter to
10784         nil.
10786 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
10788         Fix coding system for Tramp on OS X.
10790         * lisp/net/tramp-compat.el: Require ucs-normalize.
10792         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
10793         Set coding system to `utf-8-hfs' for Mac OS X.
10795         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
10796         Flush directory properties when needed.
10797         (tramp--test-utf8): Include Chinese file name, again.
10799 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
10801         Update 'load-history' docs
10803         * doc/lispref/loading.texi (Where Defined): Update the list of
10804         forms in 'load-history' by adding the forms created for the
10805         'cl-generic' generics.  (Bug#21422)
10807 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
10809         Fix (error ...) error
10811         Problem reported by Glenn Morris in:
10812         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
10813         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
10814         introduced in my Aug 28 change, where I got confused by the
10815         two meanings of (error ...).
10817 2016-01-08  Alan Mackenzie  <acm@muc.de>
10819         Correctly analyze brace arguments in templated C++ function declarations.
10821         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
10822         POS and LIMIT parameters, like the other c-go-list-* functions have.
10824         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
10825         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
10826         followed by template specifiers.
10828 2016-01-08  Glenn Morris  <rgm@gnu.org>
10830         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
10832         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
10834 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
10836         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
10838 2016-01-08  Alan Mackenzie  <acm@muc.de>
10840         Respect fontification region calculated by major mode.  Fixes bug #22316.
10842         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
10843         fontification region has been calculated by a function on
10844         font-lock-extend-after-change-region-function use this region rather than
10845         changing the end position to somewhere else.
10847 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
10849         Improve documentation of Delete Selection mode
10851         * lisp/delsel.el (delete-selection-mode)
10852         (delete-selection-helper): Update and expand the doc strings.
10853         (Bug#22296)
10855         * doc/emacs/mark.texi (Using Region): Document the behavior of
10856         delete commands in Delete Selection mode.  (Bug#22296)
10858         * doc/lispref/markers.texi (The Mark): Document how to add the
10859         support for Delete Selection mode to Lisp programs. (Bug#22296)
10861 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
10863         Fix two project-find-file issues
10865         * lisp/progmodes/project.el (project--value-in-dir):
10866         Temporarily set enable-local-variables to :all.
10867         (project-find-file, project-or-external-find-file):
10868         All autoloads.
10869         (project--find-file-in): Require xref.
10871 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
10873         Clarify doc string of 'dired-current-directory'
10875         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
10876         the return value might not end in a slash when called with the
10877         optional argument non-nil.  (Bug#6273)
10879 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
10881         Use the face of preceding text for displaying the ellipsis
10883         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
10884         text in it->saved_face_id for displaying the ellipsis, and ignore
10885         the face, if any, of the invisible text.  (Bug#22320)
10887 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
10889         Suppress Chinese file name test for OSX in tramp-tests.el
10891         * test/automated/tramp-tests.el (tramp--test-utf8):
10892         Remove instrumentation.  Suppress Chinese file name test for OSX.
10894 2016-01-08  Glenn Morris  <rgm@gnu.org>
10896         * admin/admin.el (set-version): Also handle the NEWS file.
10898 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
10900         apropos-library: Skip obvious duplicates; don't error on generics
10902         * lisp/apropos.el (apropos-library): Skip "was an autoload"
10903         entries, to avoid obvious duplicates.  For each cl-defmethod
10904         entry, take just its function symbol (bug#21422).
10906 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
10908         Add project-find-file and project-or-external-find-file
10910         * lisp/minibuffer.el (completion-category-defaults):
10911         Add `project-file' category.
10913         * lisp/progmodes/project.el (project-find-file)
10914         (project-or-external-find-file): New commands.
10915         (project--find-file-in): New private function.
10917         * lisp/progmodes/xref.el (xref-collect-matches): Use
10918         `expand-file-name' on DIR, to expand the tildes.
10919         (xref--find-ignores-arguments): Extract from
10920         `xref--rgrep-command'.
10922 2016-01-07  Leo Liu  <sdl.web@gmail.com>
10924         Add defvar-local to lisp-imenu-generic-expression
10926         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
10927           defvar-local.
10929 2016-01-07  Leo Liu  <sdl.web@gmail.com>
10931         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
10933         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
10934           Don't declare (indent 1).
10936 2016-01-07  Glenn Morris  <rgm@gnu.org>
10938         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
10940 2016-01-07  Glenn Morris  <rgm@gnu.org>
10942         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
10944         Avoid specifying the length of a time object (it has not been "2"
10945         for some time).
10947 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
10949         Properly encode/decode base64Binary data in SOAP
10951                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
10952                 base64Binary value as utf-8.
10953                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
10955 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
10957         Obey coding-system-for-write when writing stdout/stderr in batch
10959         * src/print.c (printchar_to_stream):
10960         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
10961         a non-nil value, use it to encode output in preference to
10962         locale-coding-system.  See the discussions in
10963         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
10964         for the details.
10966         * doc/lispref/os.texi (Terminal Output): Document how to send
10967         non-ASCII text via 'send-string-to-terminal'.
10968         (Batch Mode): Document how text written to standard streams is
10969         encoded.  Fix inaccuracy regarding which output streams are used
10970         by output functions in batch mode.
10972 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
10974         * doc/misc/efaq.texi (Packages that do not come with Emacs):
10975         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
10976         <chenggao@royau.me> in
10977         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
10979 2016-01-06  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
10981         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
10983         Fix backslash.  (Bug#22224)
10985 2016-01-06  Federico Beffa  <beffa@ieee.org>  (tiny change)
10987         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
10989         Make it actually work.  (Bug#22265)
10991 2016-01-05  Alan Mackenzie  <acm@muc.de>
10993         Remove function wrongly on AWK Mode value of context fontification hook.
10995         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
10996         swap order of entries so that awk's entry isn't superseded by the default.
10998         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
10999         to handle nil value of c-before-context-fontification-functions.
11001 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11003         * src/buffer.c: Stick with ASCII in doc string.
11005 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11007         Reword transient-mark-mode doc string
11009         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
11010         The value 'lambda (literally) can be interpreted as (quote lambda),
11011         which is not intended here; we want just the lambda symbol.
11013 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
11015         Update doc string of 'selective-display'
11017         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
11018         using it with the value of 't' is obsolete.  (Bug#1092)
11020 2016-01-05  Alan Mackenzie  <acm@muc.de>
11022         Make C++ buffers writeable when writing their initial text properties.
11024         This is a correction to yesterday's CC Mode patch.
11026         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
11027         c-save-buffer-state around the function rather than a mere `let'.
11029 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
11031         Additional changes for "make check-expensive"
11033         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
11034         Explain make target `check-expensive'.
11036         * etc/NEWS: Mention new make target `check-expensive'.
11038         * test/automated/Makefile.in (check-doit): New target.
11039         (check, check-expensive): Use it.
11041 2016-01-04  Alan Mackenzie  <acm@muc.de>
11043         Apply text properties for <, > in new after-change function (C++ Java Modes).
11045         These are category/syntax-table properties to give < and > paren syntax.
11046         Also apply certain `c-type' text properties to the insides of <..> constructs
11047         to ensure that identifiers contained by them get fontified.  This patch fixes
11048         bug #681.
11050         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
11051         after-change action.
11053         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
11054         change region to include <s and >s which might not be already marked as
11055         parens, rather than just when paren text properties are removed.
11056         (c-restore-<>-properties): New after-change function, which applies text
11057         properties marking < and > with paren syntax.
11059         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
11060         properties are applied to the interiors of <...> constructs, to ensure
11061         fontification of identifiers there.
11063         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
11064         c-restore-<>-properties to this list for C++ and Java.
11066         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
11067         c-before-font-lock-functions, exclude c-restore-<>-properties from the
11068         functions invoked.
11069         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
11070         to allow modification by before-change functions.
11071         (c-after-change): Amend c-new-END here, rather than initializing it and
11072         c-new-BEG.
11074 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11076         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
11078 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11080         Introduce check-expensive tests.
11082         * Makefile.in (check-expensive):
11083         * test/automated/Makefile.in (check-expensive): New target.
11085         * test/automated/auto-revert-tests.el
11086         (auto-revert-test01-auto-revert-several-files):
11087         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
11088         * test/automated/tramp-tests.el (tramp-test26-process-file)
11089         (tramp-test27-start-file-process, tramp-test28-shell-command)
11090         (tramp-test29-vc-registered)
11091         (tramp-test31-special-characters-with-stat)
11092         (tramp-test31-special-characters-with-perl)
11093         (tramp-test31-special-characters-with-ls)
11094         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
11095         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
11096         (tramp-test35-unload): Tag the tests as :expensive-test.
11098 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11100         shr-tag-video bug fix
11102         * shr.el (shr-tag-video): Protect against the `poster' being
11103         empty.
11105 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11107         Minor fixes in tramp-tests.el
11109         * test/automated/tramp-tests.el (tramp-test26-process-file):
11110         Move point properly.
11111         (tramp-test29-vc-registered): Work with relative file names.
11113 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11115         Ensure redisplay when 'truncate-lines' is set
11117         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
11118         (Bug#22303)
11120 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11122         Fix a doc string of 'transient-mark-mode'
11124         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
11125         "lambda" in doc string from becoming a link to lambda expressions.
11127 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11129         MS-Windows followup to latest gnulib update
11131         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
11133 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11135         Spelling fix
11137 2016-01-04  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
11139         Do secure signed Bcc handling
11141         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
11142         (bug#18718).
11144 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11146         Avoid stdio in SIGINT handler
11148         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
11149         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
11150         * lib/ignore-value.h: New file, from gnulib.
11151         * src/keyboard.c: Include it.
11152         (write_stdout, read_stdin): New functions.
11153         (handle_interrupt): Use them instead of printf and getchar,
11154         and avoid fflush when handling signals.
11156 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11158         * doc/misc/texinfo.tex: Revert unwanted copyright change.
11160 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11162         * lisp/align.el (align): Simplify a lambda
11164         * lisp/align.el (align): Fix arg order in call to `align-region'
11166 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
11168         Fix compilation next-error in buffers with selective-display
11170         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
11171         function.
11172         (compilation-internal-error-properties)
11173         (compilation-next-error-function, compilation-set-window): Use
11174         it.  (Bug#1092)
11176 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11178         * lisp/net/nsm.el (nsm-check-protocol): Fix typo in the message.
11180 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11182         Add SHA1 warnings for high network security settings
11184         * lisp/net/nsm.el (nsm-check-protocol): When using high security, warn
11185         about SHA1 certificates, which are now believed to be open to
11186         spoofing.
11188 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
11190         Refactor mml-smime.el, mml1991.el, mml2015.el
11192         (Maybe this is the last merge from Gnus git to Emacs git)
11194         Cf. discussion on ding mailing list, messages in
11195         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
11196         Common code from the three files mml-smime.el, mml1991.el, and
11197         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
11198         to gnus-util.el.
11200         The code is supported by test cases with necessary test keys.
11202         Documentation in message.texi is updated.
11204         * doc/misc/message.texi (Security, Using S/MIME):
11205         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
11206         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
11207         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
11209         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
11210         New functions.
11212         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
11213         (epa--select-keys): Autoload.
11214         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
11215         (mml-secure-openpgp-signers): New user option;
11216         make mml1991-signers and mml2015-signers obsolete aliases to it.
11217         (mml-secure-smime-signers): New user option;
11218         make mml-smime-signers an obsolete alias to it.
11219         (mml-secure-openpgp-encrypt-to-self): New user option;
11220         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
11221         aliases to it.
11222         (mml-secure-smime-encrypt-to-self): New user option;
11223         make mml-smime-encrypt-to-self an obsolete alias to it.
11224         (mml-secure-openpgp-sign-with-sender): New user option;
11225         make mml2015-sign-with-sender an obsolete alias to it.
11226         (mml-secure-smime-sign-with-sender): New user option;
11227         make mml-smime-sign-with-sender an obsolete alias to it.
11228         (mml-secure-openpgp-always-trust): New user option;
11229         make mml2015-always-trust an obsolete alias to it.
11230         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
11231         New user options.
11232         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
11233         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
11234         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
11235         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
11236         (mml-secure-passphrase-callback, mml-secure-check-user-id)
11237         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
11238         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
11239         (mml-secure-fingerprint, mml-secure-filter-keys)
11240         (mml-secure-normalize-cust-name, mml-secure-select-keys)
11241         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
11242         (mml-secure-self-recipients, mml-secure-recipients)
11243         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
11245         * lisp/gnus/mml-smime.el: Require epg;
11246         refactor declaration and autoloading of epg functions.
11247         (mml-smime-use): Doc fix.
11248         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
11249         Obsolete.
11250         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
11251         Use format instead of gnus-format-message.
11252         (mml-smime-epg-secret-key-id-list): Remove variable.
11253         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
11254         (mml-smime-epg-find-usable-secret-key): Remove functions.
11255         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
11257         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
11258         (mml1991-passphrase-cache-expiry): Obsolete.
11259         (mml1991-epg-secret-key-id-list): Remove variable.
11260         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
11261         (mml1991-epg-find-usable-secret-key): Remove functions.
11262         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
11264         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
11265         (mml2015-passphrase-cache-expiry): Obsolete.
11266         (mml2015-epg-secret-key-id-list): Remove variable.
11267         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
11268         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
11269         (mml2015-epg-find-usable-secret-key): Remove functions.
11270         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
11271         (mml2015-epg-encrypt): Refactor.
11273 2016-01-02  Glenn Morris  <rgm@gnu.org>
11275         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
11277         Explicitly ignore case.  (Bug#22262)
11279 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
11281         (semantic-symref-derive-find-filepatterns): Return a list
11283         * lisp/cedet/semantic/symref/grep.el
11284         (semantic-symref-derive-find-filepatterns): Return a list.
11285         (semantic-symref-perform-search): Quote the result here once and for all.
11287 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11289         Fix xref-find-references on MS-Windows
11291         * lisp/cedet/semantic/symref/grep.el
11292         (semantic-symref-derive-find-filepatterns): Use
11293         'shell-quote-argument' instead of manually quoting in a way that
11294         only works with Posix shells.  (Bug#22289)
11296 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11298         Document new features of tildify-mode
11300         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
11301         (tildify-mode): Spelling fixes in doc strings.
11303         * etc/NEWS: Reformat the tildify-mode entry.
11305 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11307         Document new features of Whitespace mode
11309         * doc/emacs/display.texi (Useless Whitespace): Document
11310         'whitespace-toggle-options' and the new 'big-indent' style.
11311         Document 'whitespace-big-indent-regexp'.  Document the Global
11312         Whitespace mode.
11314 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11316         Improve documentation of new Hide-IfDef features
11318         * etc/NEWS: Expand and reword Hide-IfDef section.
11320 2016-01-02  Leo Liu  <sdl.web@gmail.com>
11322         Fix regression in font-locking cl-assert and cl-check-type
11324         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
11325           el-errs-re.
11327 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11329         Spelling and grammar fixes
11331 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11333         Fix copyright years by hand
11335         These are dates that admin/update-copyright did not update, or
11336         updated incorrectly.
11338 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11340         Update copyright year to 2016
11342         Run admin/update-copyright.
11344 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11346         Merge from gnulib
11348         This mostly just updates copyright dates of gnulib files.
11349         It also updates to the latest version of texinfo.tex.
11351 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
11353         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
11355 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
11357         Port chart.el methods to cl-generic.
11359         cl-call-next-method cannot be used inside EIEIO's defmethod.
11360         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
11361         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
11362         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
11363         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
11364         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
11365         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
11367 2015-12-31  Brian Burns  <bburns.km@gmail.com>
11369         Add nt/INSTALL.W64 build instructions
11371         * nt/INSTALL.W64: New file.
11372         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
11374 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
11376         Add new input method 'programmer-dvorak'
11378         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
11379         input method.
11381         * etc/NEWS: Mention it.
11383 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
11385         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
11387         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
11388         original M-TAB binding in a buffer-local variable.
11389         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
11390         if that is recorded, when point is in a place where flyspell
11391         should not be active (e.g., because the user turned on
11392         'flyspell-prog-mode').  (Bug#18533)
11394 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
11396         Fix EWW rendering of long RTL lines
11398         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
11399         of the selected window before filling its lines.  (Bug#22250)
11401 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
11403         fix  bug#21054
11405         * lisp/ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
11407 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11409         Clean up cairo printing code
11411         * src/gtkutil.c (xg_get_page_setup): Use listn.
11412         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
11413         decode_window_system_frame and FRAME_VISIBLE_P.
11414         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
11415         of Fdisplay.
11416         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
11417         instead of Fdisplay.  Temporarily unblock_input around QUIT.
11419 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11421         Move variables to inner loop, preparing for Mac port merge
11423         * src/keyboard.c (command_loop_1): Move variables `cmd',
11424         `keybuf', and `i' to inner loop.
11426 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11428         Add handle_user_signal_hook
11430         * src/keyboard.h (handle_user_signal_hook): New declaration.
11431         * src/keyboard.c (handle_user_signal_hook): New variable.
11432         (handle_user_signal): Call it.
11434 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11436         Avoid writing to purespace
11438         * src/alloc.c (Fmake_string): Don't write to empty string contents.
11439         (allocate_vector): Don't write to empty vector size.
11440         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
11441         Don't call unnecessary XSETCAR or XSETCDR.
11442         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
11443         write to empty string size_byte.
11445 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11447         Remove unused variable
11449         * lisp/international/mule-cmds.el: Remove unused variable
11450         `mac-system-coding-system'.
11452 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11454         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
11456 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11458         Use posix_openpt instead of openpty on Darwin
11460         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
11461         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
11462         Darwin-specific definitions.  Use posix_openpt instead.
11464 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
11466         Document support for ':documentation' in Lisp mode
11468         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
11469         (lisp-string-after-doc-keyword-p)
11470         (lisp-font-lock-syntactic-face-function): Add doc strings.
11472 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
11474         Document new features of TeX mode
11476         * doc/emacs/text.texi (TeX Print): Document
11477         'tex-print-file-extension'.
11478         * doc/emacs/programs.texi (Misc for Programs): Document support
11479         for Prettify Symbols mode in TeX mode.
11481 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
11483         Clarify docs of hscroll in RTL text
11485         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
11486         meaning of a window's horizontal scroll amount for RTL paragraphs.
11488 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
11490         Fix rendering of HTML pages that use character composition
11492         * src/indent.c (Fvertical_motion): Fix the case when point starts
11493         in the middle of a composition, as in shr-vertical-motion.
11494         (Bug#22250)
11496 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
11498         Avoid some compiler warnings in w32.c
11500         * src/w32.c (codepage_for_filenames, crlf_to_lf)
11501         (ansi_encode_filename, socket_to_fd, sys_write)
11502         (check_windows_init_file): Avoid compiler warnings about
11503         differences in pointer signedness.
11505 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
11507         Undo ill-advised change
11509         * lisp/progmodes/xref.el (xref-collect-matches): Undo
11510         ill-advised change.  The hits come in the order that `find'
11511         produces them in, which isn't alphabetical.
11513 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
11515         Unbreak completion in python-mode buffers
11517         * lisp/progmodes/python.el (python-shell-completion-at-point):
11518         Unbreak in python-mode buffers.
11520 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
11522         Fix typos in CC Mode manual
11524         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
11525         typos.  (Bug#22267)
11527 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
11529         Avoid assertion violations in compact_font_cache_entry
11531         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
11532         avoid assertion violation in ASIZE.  (Bug#22263)
11534 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
11536         Fix filling text with bidirectional characters in shr.el
11538         * lisp/net/shr.el (shr-insert-document): Bind
11539         bidi-display-reordering to nil while filling lines.  This is
11540         required for when a line includes characters whose bidi
11541         directionality is opposite to the base paragraph direction,
11542         because columns are counted in the logical order.  (Bug#22250)
11544 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
11546         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
11548 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
11550         Sync with Tramp 2.2.13
11552         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
11554         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
11555         Use `tramp-compat-funcall'.
11557         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
11558         Make `split-string' call compatible with older Emacsen.
11560         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
11562 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
11564         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
11566 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
11568         Mention that tls.el is secure by default, and will fail
11570 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
11572         Make tls.el use trustfiles by default
11574         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
11575         (open-tls-stream): Insert the trustfile by looking at
11576         `gnutls-trustfiles'.
11578 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
11580         Refactor out gnutls-trustfiles
11582         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
11584 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
11586         Remove --insecure from gnutls-cli invocation
11588         * tls.el (tls-program): Default to using secure TLS
11589         connections (bug#19284).
11591 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
11593         Spelling fix
11595 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
11597         Port report-emacs-bug to deterministic builds
11599         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
11600         recent "built on" change to deterministic builds where
11601         emacs-build-system will be nil.  See:
11602         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
11604 2015-12-29  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
11606         Fix URL auth error message
11608         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
11609         message more correct (bug#20069).
11611 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
11613         shr link traversal fixup
11615         * shr.el (shr-next-link): Don't bug out on adjacent links.
11617         Backport:
11619         (cherry picked from commit 1efc5f8b09273c359683ce13be95fb5df7a84311)
11621 2015-12-28  Tom Tromey  <tom@tromey.com>
11623         set :safe on css-indent-offset
11625         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
11627 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
11629         * eww.el (eww-mode): Remove superfluous bidi reset.
11631 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
11633         Make chunked encoding trailer detection more compliant
11635         * lisp/url/url-http.el
11636         (url-http-chunked-encoding-after-change-function): Make
11637         trailer detection more compliant (bug#16345).
11639 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
11641         Fix Bug#10873 in `report-emacs-bug'
11643         * lisp/mail/emacsbug.el (report-emacs-bug): If
11644         `report-emacs-bug-no-explanations' is nil, make sure we can show
11645         mail and warnings buffer on this frame (Bug#10873).
11647 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
11649         Always reset the bidi direction
11651         * eww.el (eww-display-html): Always reset the bidi direction
11652         to `left-to-right' (bug#22257).
11654 2015-12-28  Alan Mackenzie  <acm@muc.de>
11656         Allow line comments ending with escaped NL to be continued to the next line.
11658         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
11660         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
11661         (forw-comment, back-comment): On encountering an end of comment character,
11662         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
11664         * doc/lispref/syntax.texi (Control Parsing): Describe
11665         `comment-end-can-be-escaped'.
11667         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
11669         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
11671 2015-12-28  Dmitry Gutov  <dgutov@yandex.ru>
11673         Rename project-library-roots to project-external-roots
11675         * lisp/progmodes/project.el (project-library-roots): Rename to
11676         project-external-roots.
11677         (project-library-roots-function): Rename to
11678         project-vc-external-roots-function.  Only use it in the VC
11679         backend, for now.  Update project-external-roots accordingly.
11680         (project-vc-library-roots): Remove.
11681         (project-or-libraries-find-regexp):
11682         Rename to project-or-external-find-regexp.
11684         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
11685         Rename to elisp-load-path-roots.
11687         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
11688         an anonymous function for the default value of
11689         project-vc-external-roots-function.
11691 2015-12-27  Deniz Dogan  <deniz@dogan.se>
11693         Clear erc user list upon disconnection
11695         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
11696         lists upon disconnection.  This prevents invalid channel
11697         user lists when reconnecting (bug#10947).
11699 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
11701         Don't bug out in erc after waking from sleep
11703         * lisp/erc/erc-backend.el (erc-server-send-ping): If the server has
11704         closed connection, this may already have been detected and
11705         `erc-server-last-received-time' has been set to nil (bug#13608).
11707 2015-12-27  David Edmondson  <dme@dme.org>
11709         Proxy error in erc with multiple clients
11711         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
11712         generated when multiple IRC clients talk to a single IRC proxy
11713         (bug#19034).
11715         Backport:
11717         (cherry picked from commit 507e98a54d1aa37823c64993d6b59257a82fe8f4)
11719 2015-12-27  Dima Kogan  <dima@secretsauce.net>
11721         Ensure that we don't have several timers in erc
11723         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
11724         for existing timers in the alist before adding new ones.  If a
11725         timer already exists, it is cancelled and
11726         overwritten. (bug#19292).
11728 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
11730         Fix mml-sec build warnings
11732         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
11733         (bug#18718).
11735         Backport:
11737         (cherry picked from commit 3603097f62f5f4aa5451716e9ac380161f6829e2)
11739 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
11741         Don't insert erc logs at the end
11743         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
11744         at the start of the buffer, not at the end (bug#20496).
11746 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
11748         (eww-setup-buffer): Restore left-to-right defaults
11750         * eww.el (eww-setup-buffer): Restore left-to-right defaults.
11752         Backport:
11754         (cherry picked from commit 96c874b96b617c124d500a94de761a61f2a08685)
11756 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
11758         Don't join erc channels doubly
11760         * lisp/erc/erc-join.el (erc-autojoin-channels): Don't join channels
11761         more than once (if you have several nicks) (bug#20695).
11763 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
11765         Avoid leaving "ghost" of mouse pointer on MS-Windows
11767         * src/w32term.c (frame_set_mouse_pixel_position):
11768         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
11769         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
11770         * src/w32term.c (frame_set_mouse_pixel_position): Include
11771         w32common.h.
11773 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
11775         Fix auth source lookups from erc with port numbers
11777         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
11778         numbers (bug#20541).
11780 2015-12-27  Fran Litterio  <flitterio@gmail.com>
11782         Run erc-kill-channel-hook always on exit
11784         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
11785         when erc-kill-queries-on-quit is set (bug#21187).
11787 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
11789         Spelling fix
11791         * test/automated/url-parse-tests.el:
11792         (url-generic-parse-url/same-document-reference):
11793         Rename from url-generic-parse-url/same-decument-reference.
11795 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
11797         Reword initial *scratch* for brevity, appearance
11799         * lisp/startup.el (initial-scratch-message):
11800         Reword to avoid apostrophes, and to make it shorter.
11801         See the thread starting in:
11802         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
11804 2015-12-26  Leo Liu  <sdl.web@gmail.com>
11806         Add ert-deftest to lisp-mode.el
11808         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression,
11809           lisp-el-font-lock-keywords-1): Add ert-deftest.
11811 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
11813         Mark imap changes as not needing doc changes
11815         * lisp/net/imap.el (imap-ssl-open): Remove
11817 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
11819         Use built-in encryption in imap.el
11821         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
11822         (imap-starttls-open): Use open-network-stream instead of starttls.el.
11823         (imap-tls-open): Use open-network-stream instead of tls.el.
11825 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
11827         Don't try using /bin/sh in artist.el on MS-Windows
11829         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
11830         New function.
11831         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
11832         (Bug#20167)
11834 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
11836         Always define gmalloc etc. in src/gmalloc.c
11838         This is a work-around to prevent the compiler from using semantic
11839         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
11840         with -O2 replaces most of calloc's definition by a call to calloc;
11841         see Bug#22085.
11842         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
11843         (aligned_alloc, free): Do not undef.  Instead, define these as
11844         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
11846 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
11848         Fix documentation of browse-url browser-related functions
11850         * lisp/net/browse-url.el (browse-url)
11851         (browse-url-default-browser, browse-url-default-windows-browser)
11852         (browse-url-default-macosx-browser, browse-url-chromium)
11853         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
11854         and NEW-WINDOW arguments in these functions.  (Bug#19421)
11856 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
11858         Propagate Bug#14412 fix to backtrace_eval_unrewind
11860         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
11861         becomes accurate again. This shouldn’t affect behavior.
11862         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
11864 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
11866         Don't produce non-ASCII characters in *scratch*
11868         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
11869         avoid producing non-ASCII characters in the *scratch* buffer's
11870         commentary.
11872 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
11874         Document changes in 'compare-windows'
11876         * lisp/vc/compare-w.el (compare-windows-removed)
11877         (compare-windows-added): Doc fix.
11879         * doc/emacs/files.texi (Comparing Files): Document the changes in
11880         window selection by 'compare-windows'.
11882 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
11884         Document 'vc-annotate-background-mode'
11886         * doc/emacs/maintaining.texi (Old Revisions): Document
11887         'vc-annotate-background-mode'.
11889 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
11891         Document 'vc-region-history'
11893         * doc/emacs/maintaining.texi (VC Change Log): Document
11894         'vc-region-history'.
11896 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
11898         Improve documentation of 'vc-push'
11900         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
11901         improve the documentation of 'vc-push'.
11903         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
11905 2015-12-26  Alain Schneble  <a.s@realize.ch>
11907         Include the tests for the URL parsing fixes
11909 2015-12-26  Alain Schneble  <a.s@realize.ch>
11911         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
11913         * test/automated/url-parse-tests.el: Add tests covering url-generic-parse-url.
11914         * test/automated/url-expand-tests.el: Add tests covering url-expand-file-name.
11915         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
11916         information in URL-struct.
11917         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
11918         path and query into nil path and query, respectively.
11919         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
11920         empty path into an absolute ("/") path.
11921         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
11922         fragment-only URIs. Do not just return them unchanged.
11923         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
11924         reference URI should not drop the last segment.
11926         Backport:
11928         (cherry picked from commit b792ecea1715e080ad8e232d3d154b8a25d2edfb)
11930 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
11932         Document 'url-user-agent'.
11934         * lisp/url/url-http.el (url-user-agent): Move from here...
11935         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
11936         keep all the URL defcustoms in one place, and also have it defined
11937         whenever the URL library is loaded.
11939         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
11941 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
11943         Document protocols supported by URL library via Tramp
11945         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
11946         supported via Tramp.
11947         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
11948         Tramp.
11950 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
11952         Document changes in Shell-script mode
11954         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
11955         the 'sh-shell' file-local variable.
11956         (top level): Add an auto-load form to avoid byte-compiler warning
11957         about 'comint-send-string'.
11959 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
11961         Fix documentation of 'ses-define-local-printer'
11963         * doc/misc/ses.texi (Printer functions): Fix whitespace between
11964         sentences and punctuation.  Add an index entry for
11965         'ses-define-local-printer'.
11967 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
11969         Document 'ert-summarize-tests-batch-and-exit'
11971         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
11972         'ert-summarize-tests-batch-and-exit'.
11974 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
11976         Avoid assertion violation in unbind_to
11978         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
11979         if we get here with an object that is not a symbol.  (Bug#14412)
11981 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
11983         Don't treat /foo/bar:mumble as ange-ftp address
11985                 * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
11986                 only in the first component.  (bug#5362)
11988 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11990         Follow <meta> redirects in eww
11992         Merge conflict, but I think I resolved it.
11994             Follow meta refresh tags in eww
11996             * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
11998         Backport:
12000 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12002         Allow http://user:pass@foo/ URLs again
12004         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
12005         user/passwords in URLs (bug#19046).
12007         Backport:
12009         (cherry picked from commit b563715a2db265517d5a77f165a42afa1e233fdd)
12011 2015-12-25  Samer Masterson  <samer@samertm.com>
12013         Autoload url-insert-buffer-contents
12015         * lisp/url/url-handlers.el: Add autoload cookie so that
12016         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
12018         Backport:
12020         (cherry picked from commit 7a7b5b492ff9929eecd90c4564db6fbf3b192323)
12022 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12024         Make sure *scratch* etc. use forward slashes in its default-directory
12026         * lisp/startup.el (normal-top-level): On MS-Windows, convert
12027         backslashes to forward slashes while decoding default-directory
12028         of the initially-created buffers.
12030 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12032         More eww file name coding fixes
12034         * eww.el (eww-decode-url-file-name): Use the base coding
12035         system to check for encodability.
12037         Backport:
12039         (cherry picked from commit a8627008abe4ab339df19b417776da28b3ce0fc7)
12041 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12043         Always save eww history
12045         * eww.el (eww-setup-buffer): Always save history, even when
12046         called from outside the eww buffer (bug#19638).
12048         Backport:
12050         (cherry picked from commit 2a0f18d9b6ce0ccce3d9c4a4a3b5743bae71b41e)
12052 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12054         Default web pages to right-to-left
12056         * eww.el (eww-mode): Most web pages are left-to-right, so make
12057         that the default (bug#19801).
12059         * shr.el (shr-tag-html): Respect "dir" attributes
12060         (left-to-right, right-to-left).
12062         Backport:
12064         (cherry picked from commit 9e089ec8a380ec3758fcf1564c5f86dc92c68c2a)
12066 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12068         Make toggling checkboxes work again
12070         * eww.el (eww-update-field): Make toggling checkboxes work
12071         again (bug#21881).
12073         Backport:
12075         (cherry picked from commit 5e56f606952e5e81b4d3a93ea70e791b74b33041)
12077 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12079         Don't store cookies with empty names
12081         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
12082         cookies with empty names (bug#21936).
12084         Backport:
12086         (cherry picked from commit 9f0fd7cb1aec3eb9e2e0f7b8854c30870286d96c)
12088 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12090         Stop rendering HTML before specdlr exhaustion
12092         Fixes: 22117
12094         * shr.el (shr-descend): Stop rendering before we run out of
12095         specpdl room (bug#22117).
12097         Backport:
12099         (cherry picked from commit 248da292fe46224b0b5a79b632c89cf4de2c2081)
12101 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12103         Use cl-reduce, not reduce.
12105         Backport:
12107         (cherry picked from commit fe4606f93b91ff3d046aee0cf21ecc277af7a786)
12109 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12111         Allow several <tbody> tags in shr
12113         * shr.el (shr-table-body): New function to find the real body
12114         of a table.
12115         (shr-tag-table): Use it to render several <tbody> tags in a
12116         table (bug#22170).
12118         Backport:
12120         (cherry picked from commit cdaf33029d6620073833876d76056045ecfbc7c4)
12122 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12124         Make prettier unique file names in eww
12126         (eww-make-unique-file-name): Make unique file names by making
12127         files like foo(2).jpg instead of foo(1)(2).jpg.
12129         Backport:
12131         (cherry picked from commit edfdd0a6cbdfa9e5e4bd0553e2b489401ca39266)
12133 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12135         Decode hex-encoded URLs before using them as file names
12137         * eww.el (eww-decode-url-file-name): New function.
12138         (eww-download-callback): Use it to decode file names before
12139         saving them.
12141         Backport:
12143         (cherry picked from commit af22a010d87516c2a646572fb27512c03057784f)
12145 2015-12-25  Ashish SHUKLA  <ashish.is@lostca.se>
12147         Add FreeBSD cert bundle
12149         * doc/misc/emacs-gnutls.texi (Help For Users): Document
12150         FreeBSD bundle.
12152         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
12154         Backport:
12156         (cherry picked from commit 60c0f1a18ad88d6dc1a8f4ee5d9d18940eaeb6f7)
12158 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12160         Ignore invalid SVG images
12162         * shr.el (shr-tag-svg): Ignore SVG images that have no width
12163         or height, because these can't be displayed by ImageMagick,
12164         anyway.
12166         Backport:
12168         (cherry picked from commit 821107d53c2e390240d25c036b99ebbf9b4a93b6)
12170 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12172         shr table rendering fix
12174         * shr.el (shr-tag-table): Allow rendering body-less tables
12175         that have headers.
12177         Backport:
12179         (cherry picked from commit b05471e42c17e02c56c87d7599ada0c124a5fe09)
12181 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12183         Restore info about the build host in bug reports
12185         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
12186         which Emacs was built.  This is important information for
12187         investigating bug reports reported by users who don't build their
12188         Emacs.
12190 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12192         Fix bootstrap broken by changes related to OS X file-name encoding
12194         * lisp/international/ucs-normalize.el (eval-when-compile): Make
12195         sure char-code-property-alist includes elements that allow access
12196         to 'decomposition' and 'canonical-combining-class' Unicode
12197         properties, as compiling ucs-normalize.el requires that.
12198         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
12199         only of charprop.el was already loaded.
12201         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
12202         New order-only dependency.
12204 2015-12-25  Leo Liu  <sdl.web@gmail.com>
12206         * lisp/ido.el (ido-add-virtual-buffers-to-list): Use bookmark-get-filename.
12208 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
12210         Make tramp-test29-vc-registered more robust
12212         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
12213         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
12214         Remove instrumentation.
12216 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12218         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
12220 2015-12-24  Katsumi Yamaoka  <yamaoka@jpl.org>
12222         Fix `gnus-union' so as to behave like `cl-union'
12224         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
12225         Make gnus-union use `equal' to compare items in lists.
12227         * lisp/gnus/gnus-util.el (gnus-union):
12228         Make it behave like cl-union partially.
12230 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
12232         Fix dired.c typo with ptrdiff_t vs Lisp_Object
12234         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
12235         an integer type, fixing a problem introduced in the recent fix for
12236         Bug#22169.
12238 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
12240         Document default process sentinel more prominently
12242         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
12243         defaults for process filter and sentinel.  Provide cross-references.
12244         (Process Information): Provide cross-references to where filters
12245         and sentinels are described.
12246         (Filter Functions): Add an index entry for "default filter".
12247         (Sentinels): Add a few status messages not documented previously.
12248         Resolve the "killed" confusion.  Document and describe the default
12249         sentinel.  (Bug#22220)
12251 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
12253         Fix file-name completion on OS X
12255         * src/dired.c (file_name_completion): Reject false matches due to
12256         file-name-coding-systems that decompose characters when encoding
12257         file names, by comparing decoded file names as well.  (Bug#22169)
12258         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
12260         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
12261         non-nil 'decomposed-characters' property.
12263 2015-12-23  Anders Lindgren  <andlind@gmail.com>
12265         File-name completion of non-ASCII characters on OS X (bug#22169)
12267         The coding system `utf-8-nfd', locally defined in ns-win.el,
12268         didn't provide a :pre-write-conversion method, causing file name
12269         completion of non-ASCII characters to fail.  Solved by using the
12270         `utf-8-hfs' coding system provided by `ucs-normalize'.
12272         * lisp/loadup.el: Load international/ucs-normalize (when building
12273         for ns).
12275         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
12276         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
12277         as the file name coding system.
12279         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
12281 2015-12-23  Tom Tromey  <tom@tromey.com>
12283         Fix bug #18588 by making bug-reference-bug-regexp more lenient
12285         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
12286         "bug NNNN".  (Bug #18588)
12288 2015-12-23  Tom Tromey  <tom@tromey.com>
12290         add some cl-* aliases to lisp-mode imenu
12292         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
12293         cl-defgeneric, and cl-defmethod.
12295 2015-12-22  Tom Tromey  <tom@tromey.com>
12297         Make a variable buffer-local
12299         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
12300         font-lock-syntax-table buffer-local.  (Bug #21627)
12302 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
12304         Fix decoding of text in URLs retrieved by EWW
12306         * lisp/net/eww.el (eww-render): Pass 'charset' to
12307         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
12308         non-nil, to set 'buffer-file-coding-system' of the buffer where we
12309         show the URL.
12310         (eww-display-html, eww-display-raw): Decode the text correctly,
12311         using the charset found in the headers, and defaulting to UTF-8.
12312         If the user told us to use a specific encoding, override the
12313         charset from the headers.  (Bug#22222)
12315 2015-12-22  Alan Mackenzie  <acm@muc.de>
12317         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
12319         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
12320         variable `tmp'.
12321         After a failed search for a matching ">", restore point before continuing.
12323 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
12325         Instrument Tramp tests
12327         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
12328         (tramp--test-utf8): Instrument tests.
12330 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
12332         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
12334         * lisp/simple.el (display-message-or-buffer): Call
12335         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
12336         (Bug#22221).
12338 2015-12-22  Juri Linkov  <juri@linkov.net>
12340         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
12342         (save-places-to-alist, save-place-dired-hook):
12343         Check for dired-subdir-alist.  (Bug#19851)
12345 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12347         Add FIXME comment re stack overflow and modules
12349 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12351         Revert some recent emacs-module commentary
12353         Most of the recently-added commentary was incorrect, due to the
12354         possibility of stack overflow.
12356 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12358         Spelling fix: prefer "cooperate" to "co-operate"
12360 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12362         Port undo fixes to -fno-common
12364         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
12365         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
12366         (buffer_before_last_command_or_undo):
12367         Declare in keyboard.h, and define in keyboard.c,
12368         instead of assuming the traditional Unix relaxed ref-def linkage.
12370 2015-12-20  Philipp Stephani  <phst@google.com>
12372         Improve commentary for emacs-module.c
12374         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
12375         * src/emacs-module.c (module_non_local_exit_get): Document that we
12376         cannot use the current implementation.
12377         (module_is_not_nil, module_eq): Document assumptions about EQ and
12378         NILP.
12380 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
12382         Suppress test on Mac OS X
12384         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
12385         (tramp--test-utf8): Use it.
12387 2015-12-20  Alan Mackenzie  <acm@muc.de>
12389         Merge branch 'scratch/follow' into emacs-25
12391         This allows Isearch, etc., to work well when Follow Mode is active.
12393 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
12395         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option): Improve check.
12397 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12399         Fix last commit
12401         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
12402         with numeric argument.
12404 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12406         Document new features of Rmail
12408         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
12409         Document new behavior of 'd' and 'C-d' with numeric argument.
12410         (Rmail Display): Document the rendering of HTML MIME parts.
12412 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12414         Improve documentation of new cl-lib functions
12416         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
12417         Fix wording.
12419 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12421         Document the new feature of 'minibuffer-with-setup-hook'
12423         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
12424         added to `minibuffer-setup-hook'.
12426 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12428         Document new features of Font Lock
12430         * doc/lispref/modes.texi (Other Font Lock Variables): Document
12431         'font-lock-flush-function' and 'font-lock-ensure-function'.
12432         (Font Lock Basics): Document the basic fontification functions
12433         referenced in "Other Font Lock Variables".
12435         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
12437 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12439         Document new features of Rectangle mode
12441         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
12442         rectangle-mark-mode.
12444 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12446         Manual followup to last change
12448         * doc/lispref/display.texi (Displaying Messages): Sync with the
12449         doc string.  (Bug#22210)
12451 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12453         Clarify doc string of 'display-message-or-buffer'
12455         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
12456         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
12458 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12460         * doc/emacs/emacs.texi (Top): Update top-level menus.
12462         * doc/lispref/elisp.texi (Top): Update top-level menus.
12464 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12466         Document how to avoid file-local variables that aren't
12468         * doc/emacs/custom.texi (Specifying File Variables): Describe how
12469         to prevent Emacs from interpreting unrelated text as file-local
12470         variables.  (Bug#22166)
12472 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
12474         Fix a typo in eterm-color's termcap entry
12476         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
12477         entry.  (Bug#22184)
12479 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12481         Allow 'browse-url-emacs' visit non-existent URLs
12483         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
12484         signal an error if VISIT is non-nil, to more faithfully emulate
12485         the behavior of 'insert-file-contents'.  (Bug#22160)
12487 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
12489         Remove SunOS 4.x cruft
12491         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
12492         * lib-src/pop.c [sun]: Remove no-longer-needed include.
12493         * lwlib/xlwmenu.c (SUNSO41): Remove.
12495 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
12497         Merge from gnulib
12499         This mostly commentary fixes.
12500         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
12501         * lib/gnulib.mk: Regenerate with new gnulib-tool.
12503 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
12505         Minor fixes in Tramp
12507         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
12508         Reorder ls arguments.
12510         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
12512 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
12514         Make tramp a built-in package
12516         * lisp/finder.el (finder-compile-keywords): Update
12517         `package--builtins' also when Version: keyword is available.
12519         * lisp/net/trampver.el: Add Version: keyword.
12520         (tramp-version): Change it to "2.2.13.25.1", in order to be
12521         compatible with `version-to-list'.
12523 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
12525         * etc/tutorials/TUTORIAL.it: Update and fix typos.
12527 2015-12-18  Alan Mackenzie  <acm@muc.de>
12529         Rename `recenter-group' to `recenter-window-group'
12531         * doc/lispref/windows.texi (Textual Scrolling)
12532         * lisp/window.el (top level, recenter-group)
12533         * lisp/follow.el (follow-mode)
12534         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
12535         `recenter-window-group' and `recenter-group-function' to
12536         `recenter-window-group-function'.
12538 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
12540         Fix vertical-motion in tabulated-list mode
12542         * src/indent.c (Fvertical_motion): When moving from line beginning
12543         to point under line truncation, assume overshoot by one line only
12544         if point actually lies beyond the window's right margin.
12545         (Bug#22194)
12547 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
12549         Don't have help functions call x-display-pixel-width/-height on ttys
12551         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
12552         Don't call x-display-pixel-width/-height on ttys.
12554 2015-12-18  Dmitry Gutov  <dgutov@yandex.ru>
12556         Use 'hg id' in vc-hg-previous-revision
12558         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
12559         Use 'hg id' to retrieve it (bug#22032).
12561 2015-12-17  Alan Mackenzie  <acm@muc.de>
12563         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
12565 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
12567         Fix a typo in the Emacs manual
12569         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
12570         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
12572 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
12574         Fix parsing netrc entries with ports
12576         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
12577         make a list out of 't'.  (Bug#22188)
12579         * test/automated/auth-source-tests.el
12580         (auth-source-test-netrc-parse-entry): New test.
12582 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
12584         Fix typo in Doug Lea malloc configure log
12586         * configure.ac (emacs_cv_var_doug_lea_malloc):
12587         Fix typo that confused the log output of 'configure'.
12589 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
12591         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
12593 2015-12-16  Alan Mackenzie  <acm@muc.de>
12595         * etc/NEWS: Move entry on pcase to correct section
12597         (Accidentally omitted from previous commit)
12599 2015-12-16  Alan Mackenzie  <acm@muc.de>
12601         Add documentation for changes to Show Paren mode.
12603         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
12605         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
12606         options, including the new show-paren-when-point-inside-paren and
12607         show-paren-when-point-in-periphery.
12609         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
12610         Move an entry on pcase to the Lisp Changes section.
12612 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
12614         Document Eldoc changes
12616         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
12618 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
12620         Fix invocation of Python and Guile interpreters from gdb-mi
12622         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
12623         commands for interactive Python and Guile interpreters.
12624         (gdb-send): Recognize various ways of exiting from Python and
12625         Guile interpreters and returning to GDB.  For details, see
12626         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
12627         and http://stackoverflow.com/questions/31514741.
12629 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
12631         Remove attempt to use C11 threads
12633         C11 threads are not needed for Emacs now, and their use is causing
12634         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
12635         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
12636         * configure.ac: Do not check for C11 threads. Remove unnecessary
12637         fiddling with CPPFLAGS when configuring pthreads.
12638         * src/emacs-module.c (main_thread, check_main_thread)
12639         (module_init): Do not worry about C11 threads.
12641 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
12643         Set utf8 encoding with stty in Tramp
12645         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
12646         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
12647         encoding with stty.
12649 2015-12-15  Alan Mackenzie  <acm@muc.de>
12651         Tidy up documentation associated with window groups.
12653         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
12654         Groups".  Correct example function to `window-group-start'.
12655         (Window Start and End, Textual scrolling): Point to the new anchor.  State
12656         that (most of) the args in window group functions have the same meaning as for
12657         the corresponding window primitives.
12659         * doc/lispref/positions.texi (Screen Lines).  Same as above.
12661 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
12663         Complete last commit
12665         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
12666         Move uname check up.  Handle Mac OS X eol encoding.
12668 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
12670         Handle Mac OS X eol encoding in Tramp
12672         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
12673         Handle Mac OS X eol encoding.
12675 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12677         Fix variable name typo in compute_tip_xy
12679         * src/w32fns.c (compute_tip_xy):
12680         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
12681         when `right' is integer.
12683 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>
12685         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
12687 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
12689         Revert "Fix rx matcher overflow without limiting"
12691         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
12693 2015-12-14  Alan Mackenzie  <acm@muc.de>
12695         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
12697         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
12698         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
12700 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
12702         Fix rx matcher overflow without limiting
12704         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
12705         change to the regexp without imposing a limit on the length of the
12706         options.
12708 2015-12-14  Alan Mackenzie  <acm@muc.de>
12710         Enhance ispell-skip-region-alist by generating part of it at runtime.
12712         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
12713         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
12714         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
12715         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
12716         Include the result of ispell--make-filename-or-URL-re in regexps.
12718 2015-12-14  Glenn Morris  <rgm@gnu.org>
12720         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
12722 2015-12-14  Alan Mackenzie  <acm@muc.de>
12724         Replace GROUP argument in six window primitives by new functions.
12726         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
12727         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
12728         from description of six window functions.  Add in description of new functions
12729         window-group-start, window-group-end, set-window-group-start,
12730         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
12731         together with the six variables indirecting to the pertinent group
12732         functions.
12734         * src/window.c
12735         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
12736         applies to these two files, which added the GROUP argument to six window
12737         primitives.
12739         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
12740         functions.
12742         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
12743         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
12744         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
12745         to window primitives (e.g. window-start) with a GROUP argument by calls to
12746         new functions (e.g. window-group-start).
12748         * lisp/ispell.el (ispell-command-loop): Replace call to
12749         pos-visible-in-window-p with pos-visible-in-window-group-p.
12751         * lisp/window.el (window-group-start, window-group-end)
12752         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
12753         (selected-window-group, move-to-window-group-line): New functions.
12754         (window-group-start-function, window-group-end-function)
12755         (set-window-group-start-function, recenter-group-function)
12756         (pos-visible-in-window-group-p-function, selected-window-group-function)
12757         (move-to-window-group-line-function): New variables.
12759 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
12761         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
12763 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
12765         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
12767 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
12769         Improve regex to not trigger stack overflow
12771         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
12772         order not to trigger a stack overflow in regex matcher with unbalanced
12773         brackets (bug#22146).
12775 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
12777         Fix visiting files with raw-text
12779         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
12780         when some stuff was actually read.  (Bug#22162)
12782 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
12784         Fix regex matching keyval labels
12786         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
12787         matching keyval labels.
12789 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
12791         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
12793         ... in case of Tramp.  (Bug#20821)
12795 2015-12-13  Paul Eggert  <eggert@cs.ucla.edu>
12797         Fix performance regression with gcc -O0
12799         This fixes the smaller performance hit that I noted in:
12800         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
12801         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
12802         * src/puresize.h (puresize_h_PURE_P)
12803         (puresize_h_CHECK_IMPURE):
12804         New macros, with the old contents of the functions.
12805         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
12806         * src/puresize.h (PURE_P, CHECK_IMPURE):
12807         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
12808         * src/conf_post.h (ATTRIBUTE_UNUSED):
12809         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
12811 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
12813         * lisp/emacs-lisp/package.el (package-unpack): Security check
12815         Check that we received the package we were offered.
12817 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
12819         * lisp/emacs-lisp/package.el (package--compile): Don't activate
12821         `package-unpack' takes care of all activations now (other than
12822         `package-initialize).  `package--compile' now only compiles.
12824 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
12826         Document the new bindings of <UP> and <DOWN> in the minibuffer
12828         * doc/emacs/mini.texi (Minibuffer History): Describe the new
12829         bindings of <UP> and <DOWN> in the minibuffer.
12831 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
12833         Document new features of Ido
12835         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
12837 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
12839         Fix frame height calculations with added menu bar on Windows (Bug#22105)
12841         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
12842         when simultaneously specifying multiple parameters for
12843         `modify-frame-parameters' that all may change the frame's size.
12844         * src/w32fns.c (x_set_menu_bar_lines): Don't set
12845         windows_or_buffers_changed here.
12846         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
12847         with third argument false.
12848         * src/w32menu.c (set_frame_menubar): Set
12849         windows_or_buffers_changed here.
12850         * src/w32term.c (x_set_window_size): Determine third argument of
12851         AdjustWindowRect from whether the frame has a menu bar and not
12852         from whether it wants one.
12854 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
12856         Document the change in interactive shell mode
12858         * doc/emacs/misc.texi (Interactive Shell): Document that the
12859         '*shell*' buffer by default displays in a new window.
12861 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
12863         Document new features of package.el
12865         * doc/emacs/package.texi (Package Menu): Document the 'external'
12866         status and the new menu commands.
12867         (Package Installation): Document archive priorities.
12869         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
12870         (package-menu-hide-low-priority): Doc fix.
12872 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
12874         Update and document new features of xterm support
12876         * doc/emacs/frames.texi (Text-Only Mouse): Document that
12877         track-mouse is supported by newer xterm versions.
12879 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
12881         Document new features of Prettify Mode
12883         * doc/emacs/programs.texi (Misc for Programs): Document
12884         'prettify-symbols-compose-predicate' and
12885         'prettify-symbols-unprettify-at-point'.
12887         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
12888         (prettify-symbols-default-compose-p)
12889         (prettify-symbols-compose-predicate)
12890         (prettify-symbols--compose-symbol): Doc fixes.
12892 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
12894         Document multi-mode indentation facilities
12896         * doc/lispref/text.texi (Mode-Specific Indent): Document
12897         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
12899         * lisp/progmodes/prog-mode.el (prog-indentation-context)
12900         (prog-widen): Doc fixes.
12902 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
12904         Document 'vc-refresh-state'
12906         * doc/emacs/maintaining.texi (Version Control): Document
12907         'vc-refresh-state'.
12909         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
12911 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
12913         Fix echo for "C-u"
12915         * src/keyboard.c (command_loop_1): Undo last change.  It caused
12916         duplicate echo of C-u.  (Bug#22107)
12918 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
12920         Avoid errors when creating files under SVN in new directory
12922         * lisp/vc/vc-svn.el (vc-svn-registered): Use
12923         file-accessible-directory-p, to avoid cd'ing to a non-existing
12924         directory, which signals an error on some systems.  (Bug#21984)
12925         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
12926         Use declare-function to avoid byte-compiler warnings.
12928 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
12930         Improve Lua support in etags
12932         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
12933         "function".
12935         * etc/NEWS: Mention improved Lua support by 'etags'.
12937         * test/etags/lua-src/test.lua (test): Add tests for indented
12938         function definitions.
12939         * test/etags/ETAGS.good_1:
12940         * test/etags/ETAGS.good_2:
12941         * test/etags/ETAGS.good_3:
12942         * test/etags/ETAGS.good_4:
12943         * test/etags/ETAGS.good_5:
12944         * test/etags/ETAGS.good_6:
12945         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
12947 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
12949         Fix 'this-command-keys' wrt prefix argument
12951         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
12952         was part of this-command-keys, but not of this-single-command-keys.
12953         (Bug#22107)
12955         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
12956         commentary about the function's return value.
12958 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
12960         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
12962 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
12964         Improve and document Ruby support in 'etags'
12966         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
12967         (Ruby_functions): Support "module" and overloaded operators.
12968         (Ruby_help): Mention "module".
12970         * test/etags/ruby-src/test.rb:
12971         * test/etags/ruby-src/test1.ru: New files.
12972         * test/etags/Makefile (RBSRC): New tests.
12973         (SRCS): Add ${RBSRC}.
12974         * test/etags/ETAGS.good_1:
12975         * test/etags/ETAGS.good_2:
12976         * test/etags/ETAGS.good_3:
12977         * test/etags/ETAGS.good_4:
12978         * test/etags/ETAGS.good_5:
12979         * test/etags/ETAGS.good_6:
12980         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
12982         * doc/man/etags.1: Mention Ruby support.
12983         * etc/NEWS: Mention Ruby support.
12985 2015-12-11  Xi Lu  <lx@shellcodes.org>
12987         Initial support for Ruby in 'etags'
12989         * lib-src/etags.c <Ruby_suffixes>: New variable.
12990         (lang_names): Add an entry for Ruby.
12991         (Ruby_functions): New function.  (Bug#22116)
12993 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
12995         Clarify documentation of 'modify-frame-parameters'
12997         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
12998         PARMs" mean for 'modify-frame-parameters'.
13000         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
13001         PARMs" mean for this function.  (Bug#22104)
13003 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13005         Fix setting buffer unibyte when reading from a device
13007         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
13008         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
13010 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13012         Clarify documentation of 'values'
13014         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
13015         updated by any evaluation commands in 'lisp-interaction-mode'.
13016         (Bug#22056)
13018 2015-12-11  Anders Lindgren  <andlind@gmail.com>
13020         Fixed subversion vc error when opening file in new directory (bug#21984).
13022         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
13024 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
13026         Yet another fix for when point ends up in invisible text
13028         * src/xdisp.c (redisplay_window): When someone forced
13029         window-start, and honoring that failed to show the cursor, try
13030         moving out of invisible text, before falling back to the middle of
13031         the window.  (Bug#22098)
13033 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
13035         Fix error in Tramp perl script for cygwin
13037         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
13038         error if file doesn't exist.
13040 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13042         Remove font workaround for limited outdated versions
13044         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
13045         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
13047 2015-12-09  Anders Lindgren  <andlind@gmail.com>
13049         Don't add "." to load path (bug#21104)
13051         When configured with --enable-locallisppath=no, which is the
13052         default for OS X, the load-path incorrectly was populated with ".".
13054         * src/lread.c (init_lread): Don't call `decode_env_path' when
13055         PATH_SITELOADSEARCH is empty.
13057 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
13059         * lisp/emacs-lisp/package.el (package--with-response-buffer):
13061         Search for the blank-line in the right buffer.
13063 2015-12-08  Glenn Morris  <rgm@gnu.org>
13065         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
13066         for recent change.
13068 2015-12-08  Glenn Morris  <rgm@gnu.org>
13070         Fix some display-warning usage.
13072         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
13073         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
13074         * lisp/calendar/holidays.el (calendar-holiday-list):
13075         * lisp/mail/rmailout.el (rmail-output-read-file-name):
13076         Fix display-warning usage.
13078 2015-12-08  Glenn Morris  <rgm@gnu.org>
13080         * lisp/calendar/cal-html.el: Require diary-lib.
13082         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
13084 2015-12-08  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13086         Add Obsolete-since header to eudcb-ph.el
13088         * lisp/obsolete/eudcb-ph.el: Add Obsolete-since header.
13090 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
13092         Spelling fixes
13094         * doc/misc/calc.texi (Predefined Units): Use the bland modern
13095         scientific style for spelling the units “ampere” and
13096         “angstrom” rather than the older style “Ampere” and
13097         “Ångstrom”.  The latter spelling was wrong anyway (it should
13098         have been “Ångström”).
13099         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
13100         Fix misspelling of ‘atom’ in code.
13102 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
13104         Improve documentation of kill commands
13106         * lisp/simple.el (region-extract-function, delete-backward-char)
13107         (delete-forward-char, kill-region, copy-region-as-kill)
13108         (kill-ring-save): Better document the optional argument REGION in
13109         the doc strings.  Mention in the doc strings that text put in the
13110         kill-ring can be filtered by 'filter-buffer-substring'.
13112         * doc/lispref/text.texi (Kill Functions): Mention that functions
13113         described in this subsection can filter text they put in the
13114         kill-ring.  Add a cross-reference to "Buffer Contents" and an
13115         index entry.  Document the optional argument 'region' and its
13116         effect.
13117         (Bug#21315)
13119 2015-12-07  Alan Mackenzie  <acm@muc.de>
13121         Further progress making Isearch, Ispell, Replace work with Follow Mode.
13123         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
13124         no longer exists.  Add follow-post-command-hook to  three special purpose
13125         hooks at setup, and remove them at tear down.
13127         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
13128         isearch-lazy-highlight-new-loop.
13129         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
13130         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
13131         it.
13132         (isearch-lazy-highlight-maybe-new-loop): function removed.
13134         * lisp/replace.el: (replace-update-post-hook): New hook variable.
13135         (perform-replace): Add second (nil) argument to looking-back.  Invoke
13136         replace-update-post-hook before calling replace-highlight.
13138         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
13139         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
13140         call of pos-visible-in-window-p.
13141         (ispell-display-buffer): Place *Choices* window at the top of the last window
13142         in a window group.
13144 2015-12-07  Alan Mackenzie  <acm@muc.de>
13146         Amend doc of `mapconcat': it can take sequences, not merely strings.
13148         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
13149         to say that SEPARATOR and the results from FUNCTION may be any character
13150         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
13152 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
13154         Fix an utf8 problem for Tramp on BSD
13156         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13157         Make lax check for utf8.
13158         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
13160 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13162         Make eudcb-ph.el obsolete
13164         * doc/misc/eudc.texi: Bump version to 1.40.0.
13165         Remove PH/QI sections and mentions.
13166         * lisp/obsolete/eudcb-ph.el: Make obsolete.
13167         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
13168         (eudc-ph-bbdb-conversion-alist): Make obsolete.
13169         * etc/NEWS: Mention this.  (Bug#21191)
13171 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
13173         Remove overenthusiastic eassert
13175         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
13176         previous change.  It breaks on MS-Windows --with-wide-int.
13177         Problem reported by Eli Zaretskii in:
13178         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
13180 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13182         Pacify gcc -Wparentheses
13184         * src/xdisp.c (row_containing_pos): Reparenthesize.
13186 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13188         Port mod-test to 32-bit Emacs --without-wide-int
13190         * modules/mod-test/test.el (mod-test-sum-test):
13191         Bring back the 2**29 tests, but port them to 32-bit Emacs
13192         --without-wide-int.
13194 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
13196         Fix minor Tramp problems found on BSD
13198         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
13199         trailing slash.  Quote apostrophes.
13200         (tramp-sh-handle-file-truename): Do not append trailing slash in
13201         the "ls" case.
13202         (tramp-get-ls-command-with-w-option): New defun.
13203         (tramp-do-file-attributes-with-ls)
13204         (tramp-do-directory-files-and-attributes-with-stat): Use it.
13206         * test/automated/tramp-tests.el
13207         (tramp-test31-special-characters-with-perl)
13208         (tramp-test31-special-characters-with-ls)
13209         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
13210         Suppress also readlink.
13212 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
13214         Fix cursor display when invisible text is at line beginning
13216         * src/xdisp.c (redisplay_window): When scrolling fails to show
13217         point, prefer using the desired matrix if possible for finding the
13218         fallback glyph row for displaying the cursor.  (Bug#22098)
13219         (row_containing_pos): Exit the loop as soon as we hit the first
13220         disabled glyph row.  Otherwise we risk accessing garbled data and
13221         departing to the no-no land.
13223 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13225         Improve module interface when WIDE_EMACS_INT
13227         * src/emacs-module.c (plain_values): New constant.
13228         (module_nil): Now a constant.
13229         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
13230         (syms_of_module): Use if, not #ifdef, so that both sides are
13231         checked at compile-time, and so that GCC doesn’t complain
13232         about an unused var in the typical case.  Also, depend on
13233         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
13234         that WIDE_EMACS_INT implies !USE_LSB_TAG.
13235         (value_to_lisp_bits, lisp_to_value_bits): New functions.
13236         Sign-extend integers rather than zero-extending them, as small
13237         negative integers are more likely.
13238         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
13239         functions.
13240         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
13241         (mark_modules): Remove.  All uses removed.
13242         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
13243         to GCALIGNMENT.
13244         (syms_of_module): Check that module_nil converts to Qnil.
13245         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
13246         we prefer signed to unsigned when either will do.
13247         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
13248         a bit better for emacs-module.c.
13250 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13252         Port mod-test to x86-64 GNU/Linux running 32-bit
13254         * modules/mod-test/test.el (mod-test-sum-test):
13255         Don’t attempt to match descriptions to operating systems.
13256         It didn’t work on Fedora x86-64 running a 32-bit executable,
13257         and it’s not worth the trouble anyway.
13258         Port to 32-bit platforms by removing an assumption about
13259         fixnum widths.
13261 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
13263         Fix auto-revert-tests.el when filenotify isn't used
13265         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
13266         Make it working also when filenotify isn't used.
13268 2015-12-06  Juri Linkov  <juri@linkov.net>
13270         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
13272         Let-bind isearch-regexp-function to nil.  (Bug#22097)
13274 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
13276         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
13278         (package--with-response-buffer): NOERROR and ERROR-FORM only
13279         handle connection errors.
13280         (bad-signature): New error type.
13281         (package--check-signature-content): Use it.
13282         (package--check-signature): Properly distinguish connection errors
13283         from bad-signature errors.  Do the check for
13284         `package-check-signature' `allow-unsigned' here instead of forcing
13285         the callbacks to do it.  Add a new argument, UNWIND.
13286         (package--download-one-archive, package-install-from-archive):
13287         Update usage of `package--check-signature'.
13289 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
13291         Fix Bug#22092.
13293         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
13294           Clean up inconsistent line endings. (Bug#22092)
13295           (icalendar--clean-up-line-endings): New.
13296         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
13297           for Bug#22092.
13299 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13301         Document 'bookmark-set-no-overwrite'
13303         * doc/emacs/regs.texi (Bookmarks): Document the new command
13304         'bookmark-set-no-overwrite' and its keybinding.
13306 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13308         Document new binding of 'mouse-buffer-menu'
13310         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
13311         now also on C-F10.
13313 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13315         Initial documentation of dynamic modules
13317         * doc/lispref/loading.texi (Dynamic Modules): New section with
13318         initial documentation for dynamic modules.
13319         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
13320         detailed menu
13322         * etc/NEWS: Fix typos in dynamic modules' entry.
13324 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
13326         Remove copyright statements from trivial test files
13328 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13330         Add "Preliminaries" section to etc/DEBUG
13332         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
13333         Most of the content was suggested by Phillip Lord
13334         <phillip.lord@russet.org.uk>.  Remove the section about debugging
13335         with the Visual Studio, as building Emacs with the Microsoft
13336         compilers is no longer supported.  Minor fixes in some other
13337         sections.
13339 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
13341         Improve parsing of version strings
13343         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
13344         (version-to-list): More helpful error messages.
13345         (version-to-list): ".5" is valid (update docstring).  Make
13346         "22.8X3" invalid, as the doc string says.
13348         * test/automated/subr-tests.el (ert-test-version-parsing): New
13349         tests for version string processing.
13351 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13353         Fix documentation of 'undo' changes
13355         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
13356         English conventions for spelling and whitespace between sentences.
13358         * etc/NEWS: Fix wording and spelling of undo-related entries.
13359         Mark them as documented.
13361 2015-12-05  Glenn Morris  <rgm@gnu.org>
13363         * lisp/net/net-utils.el: Small improvements.
13365         (net-utils--executable-find-sbin): New function.
13366         (ifconfig-program): Check sbin directories.
13367         Fallback to "ip".  (Bug#22091)
13368         (ifconfig-program-options): Check the actual program in use.
13369         (arp-program): Check sbin directories.
13371 2015-12-04  (tiny change) Arash Esbati  <esbati@gmx.de>  (tiny change)
13373         Fix wrong-type-argument integer-or-marker-p nil error
13375         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
13376         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
13378 2015-12-04  Alan Mackenzie  <acm@muc.de>
13380         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
13382         Merge necessitated by a rebase operation.
13384 2015-12-04  Alan Mackenzie  <acm@muc.de>
13386         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
13388 2015-12-04  Alan Mackenzie  <acm@muc.de>
13390         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
13392         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
13393         Windows" and new @defun selected-window-group.
13394         (Window Start and End): Describe new &optional parameter GROUP and
13395         ...-group-function for window-start, window-end, set-window-start, and
13396         pos-visible-in-window-p.
13397         (Textual Scrolling) Describe the same for recenter.
13398         doc/lispref/positions.texi (Screen Lines): Describe the same for
13399         move-to-window-line.
13401         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
13402         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
13403         new optional parameter "group".  At the beginning of each, check whether the
13404         corresponding ...-group-function is set to a function, and if so execute this
13405         function in place of the normal processing.
13406         (syms_of_window): Define symbols for the six new variables below.
13407         (window-start-group-function, window-end-group-function)
13408         (set-window-start-group-function, recenter-group-function)
13409         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
13410         New permanent local buffer local variables.
13411         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
13412         Fpos_visible_in_window_p.
13414         lisp/window.el (selected-window-group-function): New permanent local buffer
13415         local variable.
13416         (selected-window-group): New function.
13418         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
13419         enable, kill them at mode disable.  Add/remove follow-after-change to/from
13420         after-change-functions.
13421         (follow-start-end-invalid): New variable.
13422         (follow-redisplay): Manipulate follow-start-end-invalid.
13423         (follow-after-change, follow-window-start, follow-window-end)
13424         (follow-set-window-start, follow-pos-visible-in-window-p)
13425         (follow-move-to-window-line, follow-sit-for): New functions.
13427         lisp/isearch.el (isearch-call-message): New macro.
13428         (isearch-update, with-isearch-suspended, isearch-del-char)
13429         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
13430         (with-isearch-suspended): Rearrange code such that isearch-call-message is
13431         invoked before point is moved.
13432         (isearch-message): Add comment about where point must be at function call.
13433         (isearch-search): Remove call to isearch-message.
13434         (isearch-lazy-highlight-window-group): New variable.
13435         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
13436         the battery of tests to ...
13437         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
13438         Note: (sit-for 0) is still called.
13439         (isearch-lazy-highlight-update): Check membership of
13440         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
13441         property.
13442         (isearch-update, isearch-done, isearch-string-out-of-window)
13443         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
13444         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
13445         (isearch-lazy-highlight-update): Call the six amended primitives (see
13446         src/window.c above) with the new `group' argument set to t, to cooperate
13447         with Follow Mode.
13449 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
13451         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
13453         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
13454         (ert--explain-format-atom, ert--explain-equal-rec)
13455         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
13456         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
13458 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
13460         * lisp/character-fold.el: Remove special case-folding support
13462         (character-fold-to-regexp): Remove special code for
13463         case-folding.  Char-fold search still respects the
13464         `case-fold-search' variable (i.e., f matches F).  This only
13465         removes the code that was added to ensure that f also matched
13466         all chars that F matched.  For instance, after this commit, f
13467         no longer matches 𝔽.
13469         This was necessary because the logic created a regexp with
13470         2^(length of the string) redundant paths.  So, when a very
13471         long string "almost" matched, Emacs took a very long time to
13472         figure out that it didn't.  This became particularly relevant
13473         because isearch's lazy-highlight does a search bounded by (1-
13474         match-end) (which, in most circumstances, is a search that
13475         almost matches).  A recipe for this can be found in bug#22090.
13477 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
13479         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
13481         Fixes (bug#21701)
13483 2015-12-04  Daiki Ueno  <ueno@gnu.org>
13485         lisp/gnus/qp.el: Don't replace "from " at bol
13487         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
13488         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
13490 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
13492         Externalize some symbols in undo-auto
13494          * doc/lispref/text.texi: Update symbols.
13495          * lisp/simple.el (undo-auto--amalgamate,
13496            undo-auto--current-boundary-timer): Make symbols public.
13497          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
13498            updated symbol.
13500 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
13502         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
13504 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
13506         Some error message improvements in tramp-sh.el
13508         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13509         Suppress error messages for "mesg" and "biff" calls.
13510         (tramp-get-remote-path): Ignore errors when expanding
13511         `tramp-own-remote-path'.  Raise a warning instead.
13513 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
13515         Document 'nacl' value for 'system-type'
13517         * doc/lispref/os.texi (System Environment): Document the 'nacl'
13518         value of 'system-type'.
13520 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
13522         Document 'window-max-chars-per-line'
13524         * doc/lispref/windows.texi (Window Sizes): Document
13525         'window-max-chars-per-line'.
13527 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
13529         Fix some file headers for the purpose of `package--builtins'
13531         * lisp/emacs-lisp/cl-preloaded.el
13532         * lisp/emacs-lisp/eieio-compat.el
13533         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
13535         * lisp/ielm.el: Fix summary line.
13537 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
13539         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
13541         Reload any previously loaded package files before compiling
13542         the package (also reload the same files after compiling).
13543         This ensures that we have the most recent definitions during
13544         compilation, and avoids generating bad elc files when a macro
13545         changes and it is used in a different file from the one it's
13546         defined in.
13548 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
13550         * lisp/emacs-lisp/package.el: Refactor package activation code
13552         (package-activate): Move code that activates dependencies into
13553         package-activate-1.
13554         (package--load-files-for-activation): New function.
13555         (package-activate-1): Add code for (optionally) activating
13556         dependencies, and move file-loading code into
13557         `package--load-files-for-activation'.
13559 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
13561         Document new font-related functionality
13563         * doc/lispref/display.texi (Low-Level Font): Document
13564         'default-font-width', 'default-font-height', 'window-font-width',
13565         and 'window-font-height'.
13567         * etc/NEWS: Move entries for 'default-font-width',
13568         'default-font-height', 'window-font-width', and 'window-font-height'
13569         to their place and mark them documented.
13571 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
13573         Fix documentation and implementation of 'directory-name-p'
13575         * lisp/files.el (directory-name-p): Modify to recognize
13576         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
13577         accordingly.  Use '=', not char-equal, for comparison, as
13578         letter-case cannot possibly be an issue here.
13580         * doc/lispref/files.texi (Directory Names): Move the documentation
13581         of directory-name-p here from "Relative File Names".  Update the
13582         description per the changes in implementation.
13584         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
13585         place and mark it documented.
13587 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
13589         Minor copyedit in Emacs manual
13591         * doc/emacs/search.texi (Lax Search): Make wording about character
13592         folding by default less definitive.  (Bug#22043)
13594 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
13596         More emacs-module.c fixes for wide ints
13598         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
13599         unsigned data types to manipulate pointers, to avoid sign
13600         extension coming after us with a vengeance.
13602         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
13603         Emacs with wide ints that verify integer values near the critical
13604         value that requires us to switch to a cons cell.
13606 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
13608         Fix bug#22069 in cl-generic.el
13610         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
13611         not run thru `format'.
13613 2015-12-02  Dmitry Gutov  <dgutov@yandex.ru>
13615         APPEND etags--xref-backend to xref-backend-functions
13617         * lisp/progmodes/xref.el (xref-backend-functions):
13618         Use APPEND when adding the default element
13619         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
13621 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
13623         More accurate documentation of lax whitespace matching
13625         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
13626         (word-search-backward, word-search-forward)
13627         (word-search-backward-lax, word-search-forward-lax): Mention in
13628         doc strings that toggling lax whitespace matching has no effect on
13629         these commands.
13631         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
13632         lax whitespace matching has no effect on these commands.
13634 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
13636         Fix emacs-module.c for wide ints
13638         * src/emacs-module.c (lisp_to_value): Compare the produced value
13639         with the original Lisp object, not with the one potentially
13640         converted into a Lisp_Cons.  Fixes assertion violations when
13641         working with integers larger than fit into a 32-bit value.
13643         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
13644         large integers, to test --with-wide-int.
13646 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
13648         Document 'directory-files-recursively'
13650         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
13651         the argument MATCH to REGEXP, to be more explicit about its form.
13653         * doc/lispref/files.texi (Contents of Directories): Improve the
13654         documentation of 'directory-files-recursively'.  Add
13655         cross-references.
13657         * etc/NEWS: Move the entry for 'directory-files-recursively' to
13658         its place and mark it documented.
13660 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
13662         Document 'inhibit-read-only' property
13664         * doc/lispref/text.texi (Special Properties): Describe the new
13665         'inhibit-read-only' text property.  Add cross-reference to where
13666         read-only buffers are described.
13667         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
13668         'inhibit-read-only' property exempts text from being read-only.
13669         Add cross-reference to "Special Properties".
13671         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
13672         its place and mark it documented.
13674 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
13676         * lisp/emacs-lisp/package.el: Update header comments
13678 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
13680         * lisp/character-fold.el: Add back multi-char matching
13682         (character-fold-to-regexp): Uncomment recently commented code
13683         and make the algorithm "dummer" by not checking every possible
13684         combination.  This will miss some possible matches, but it
13685         greatly reduces regexp size.
13687         * test/automated/character-fold-tests.el
13688         (character-fold--test-fold-to-regexp): Comment out test of
13689         functionality no longer supported.
13691 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
13693         * doc/emacs/ack.texi (Acknowledgments): Update.
13695 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
13697         Check `file-remote-p' over absolute files names in files.el
13699         * lisp/files.el (directory-files-recursively)
13700         (get-free-disk-space): Check `file-remote-p' over absolute files names.
13702 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
13704                 * src/lread.c (syms_of_lread): Doc fix.
13706 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
13708         Don't mistake certain JS method calls for keywords
13710         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
13711         Braceless keyword can't come after a period (bug#22063).
13713 2015-12-01  David Reitter  <david.reitter@gmail.com>
13715         Read frame_title_format from buffer-local variable for NS port
13717         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
13718         icon-title-format variables from buffer in appropriate window.
13719         (Bug#22048)
13721 2015-12-01  Juri Linkov  <juri@linkov.net>
13723         * lisp/replace.el (occur-engine): Count matches in empty lines.
13725         (Bug#22062)
13727 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
13729         * src/emacs-module.h: Fix finalizer typedef for C++11
13731         C++11 standard doesn't allow exception-specification in typedef.
13732         The workaround is to declare a dummy function prototype and use
13733         decltype on it.
13735 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
13737         Fix last change
13739         * src/emacs-module.c (lisp_to_value, value_to_lisp)
13740         [WIDE_EMACS_INT]: Avoid compiler warnings.
13742 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
13744         Rely on conservative stack scanning to find "emacs_value"s
13746         * src/emacs-module.c (struct emacs_value_tag)
13747         (struct emacs_value_frame, struct emacs_value_storage): Remove.
13748         (value_frame_size): Remove constant.
13749         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
13750         (lisp_to_value): Remove first arg.
13751         (module_nil): New constant.
13752         Use it instead of NULL when returning an emacs_value.
13753         (module_make_function): Adjust to new calling convention of
13754         Qinternal_module_call.
13755         (DEFUN): Receive args in an array rather than a list.
13756         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
13757         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
13758         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
13759         Adjust to new type of non_local_exit info.
13760         (ltv_mark) [WIDE_EMACS_INT]: New constant.
13761         (value_to_lisp, lisp_to_value): Rewrite.
13762         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
13763         (allocate_emacs_value): Remove function.
13764         (mark_modules): Gut it.
13765         (initialize_environment): Don't initialize storage any more.
13766         Keep the actual env object on Vmodule_environments.
13767         (finalize_environment): Don't finalize storage any more.
13768         (syms_of_module): Initialize ltv_mark and module_nil.
13770         * src/emacs-module.h (emacs_value): Make it more clear that this type
13771         is really opaque, including the fact that NULL may not be valid.
13773         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
13774         Don't assume that NULL is a valid emacs_value.
13776 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
13778         Yet another doc improvement for search commands
13780         * doc/emacs/search.texi (Word Search, Symbol Search)
13781         (Regexp Search): Document commands that don't support lax
13782         whitespace matching or character folding.
13783         (Nonincremental Search): Mention the search commands that can be
13784         invoked from the menu bar.
13786         * lisp/isearch.el (isearch-define-mode-toggle-word)
13787         (isearch-define-mode-toggle-symbol)
13788         (isearch-define-mode-toggle-character-fold): Note in the doc
13789         string that turning these on exits the regexp mode.
13790         (isearch-forward-regexp, isearch-forward-word)
13791         (isearch-forward-symbol, isearch-backward-regexp)
13792         (word-search-backward, word-search-forward)
13793         (word-search-backward-lax, word-search-forward-lax): State in the
13794         doc string which commands don't support character folding and/or
13795         lax-whitespace matching.
13797 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
13799         Run `window-size-change-functions' also when reading from minibuffer
13801         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
13802         also when reading from minibuffer.
13804 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
13806         Fix scrambling of html-rendered item buffers
13808         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
13809           scrambling of contents by wrapping call to html-renderer in
13810           save-selected-window.
13812 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
13814         Fix font typo in previous doc fix.
13816 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
13818         A bit more security doc, esp. file local vars
13820         * doc/emacs/emacs.texi (Top):
13821         * doc/emacs/misc.texi (Miscellaneous Commands):
13822         Refer to new Host Security section.
13823         (Host Security): New section.
13824         * doc/lispref/os.texi (Security Considerations):
13825         Mention file local variables.
13827 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
13829         * lisp/character-fold.el: Comment out branching code
13831         (character-fold-to-regexp): Comment out code that uses multi-char
13832         table.  The branching caused by this induces absurdly long regexps,
13833         up to 10k chars for as little as 25 input characters.
13835 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
13837         Spelling and grammar fixes
13839 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
13841         Make lisp-completion-at-point a wrapper instead of an alias
13843         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
13844         Turn into an obsolete wrapper around elisp-completion-at-point
13845         (bug#20455).
13847 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
13849         * lisp/isearch.el (isearch-search-fun-default): Nicer error
13851         message when the search fails.
13853 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
13855         Update menu-bar-goto-uses-etags-p for the current xref API
13857         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
13858         xref-backend-functions, instead of now-nonexistent
13859         xref-find-function.
13861 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
13863         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
13865 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
13867         * lisp/menu-bar.el: Use folding in searches
13869         (nonincremental-search-forward): Use `isearch-search-fun-default'
13870         to determine the search function.
13871         (nonincremental-search-backward)
13872         (nonincremental-repeat-search-forward)
13873         (nonincremental-repeat-search-backward): Use it.
13875 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
13877         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
13879 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
13881         * lisp/character-fold.el (character-fold-to-regexp): Be careful
13883         not to return huge regexps.
13885 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
13887         Improve documentation of string-collate-* functions
13889         * doc/lispref/strings.texi (Text Comparison): Improve wording and
13890         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
13892         * etc/NEWS: Move the entry of 'string-collate-equalp' and
13893         'string-collate-lessp' to "Lisp Changes" section and mark it as
13894         documented.
13896 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
13898         Document truncate-string-ellipsis
13900         * doc/lispref/display.texi (Size of Displayed Text): Document
13901         'truncate-string-ellipsis'.
13903         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
13904         (truncate-string-to-width): Mention in the doc string that the
13905         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
13907         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
13908         Changes" section.
13910 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
13912         Fix confusion wrt character folding in the Emacs manual
13914         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
13915         Document that invoking search-forward/backward and
13916         re-search-forward/backward supports only case folding, but not the
13917         rest of the lax-search features.  Reported by Mike Kupfer
13918         <m.kupfer@acm.org>.
13920 2015-11-29  Ken Brown  <kbrown@cornell.edu>
13922         Update mod-test-sum-test
13924         * modules/mod-test/test.el (mod-test-sum-test): Update to
13925         accommodate the lack of dladdr on Cygwin.
13927 2015-11-29  Alan Mackenzie  <acm@muc.de>
13929         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
13931         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
13932         to `funcall', (i) Output an error message; (ii) Generate code to signal a
13933         `wrong-number-of-arguments' error.
13935 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
13937         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
13939 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
13941         * lisp/character-fold.el (character-fold-to-regexp)
13943         Warn about using long strings.
13945         * test/automated/character-fold-tests.el
13946         (character-fold--test-lax-whitespace)
13947         (character-fold--test-consistency): Reduce string size for tests.
13949 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
13951         Document renaming of x-select-enable-* variables
13953         * doc/emacs/killing.texi (Clipboard): Rename
13954         x-select-enable-clipboard to select-enable-clipboard and
13955         x-select-enable-primary to select-enable-primary.  Update index
13956         entries.
13958         * etc/NEWS: Mark entry as documented.
13960 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
13962         Document the shorthand hints displayed by M-x
13964         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
13965         suggest-key-bindings.  Document the shorthand hints for commands
13966         that have no key bindings.  Document that M-x completion ignores
13967         obsolete commands.
13969         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
13970         documented.
13972 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
13974         Update docs of character folding
13976         * doc/emacs/search.texi (Lax Search): Update the description of
13977         character folding for the latest changes.
13979 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
13981         * lisp/character-fold.el: Also play nice with case-folding
13983         (character-fold-to-regexp): Take `case-fold-search' into account.
13985 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
13987         * lisp/character-fold.el: Add support for multi-char matches
13989         (character-fold-table): Now has an extra-slot. This is a second
13990         char-table that holds multi-character matches.  See docstring for
13991         details.
13992         (character-fold-to-regexp): Can build branching regexps when a
13993         character's entry the extra slot of `character-fold-table' matches the
13994         characters that succeed it.
13996 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
13998         * lisp/character-fold.el: Code simplifications
14000         (character-fold-table): Reduce the scope of a variable.
14001         (character-fold-to-regexp): Change logic to work directly on the
14002         input string.  It's a little easier to understand, probably
14003         faster, and sets us up for implementing multi-char matches.
14005         * test/automated/character-fold-tests.el
14006         (character-fold--test-fold-to-regexp): New test.
14008 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14010         Document changes in "C-h l"
14012         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
14014         * etc/NEWS: mark "C-h l" changes as documented.
14016 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14018         Finalize documentation of 'custom-prompt-customize-unsaved-options'
14020         * doc/emacs/custom.texi (Saving Customizations): Index the new
14021         function 'custom-prompt-customize-unsaved-options'.
14023         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
14024         is useful.
14026 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14028         Document 'comment-line'
14030         * doc/emacs/programs.texi (Comment Commands): Document
14031         'comment-line'.
14033         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
14035 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14037         Document new checkdoc features
14039         * doc/lispref/tips.texi (Tips, Library Headers): Document the
14040         keyword-checking features of checkdoc and the commands
14041         'checkdoc-file' and 'checkdoc-current-buffer'.
14043         * etc/NEWS: Move the checkdoc-related entries to their own
14044         section.
14046 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
14048         Simplify the prologue of emacs-module.c functions
14050         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
14051         (module_make_global_ref)
14052         (module_free_global_ref, module_make_function, module_funcall)
14053         (module_intern, module_type_of, module_extract_integer)
14054         (module_make_integer, module_extract_float, module_make_float)
14055         (module_copy_string_contents, module_make_string)
14056         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
14057         (module_get_user_finalizer, module_set_user_finalizer)
14058         (module_vec_set, module_vec_get, module_vec_size): Use new helper
14059         macro MODULE_FUNCTION_BEGIN.
14061 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14063         Don't reject module calls with no arguments
14065         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
14067 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
14069         Make module-call be visible from Lisp
14071         * src/emacs-module.c (module_make_function): Use internal--module-call.
14072         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
14073         checks.
14074         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
14075         defsubr internal--module-call.
14077 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14079         Add etags tests for the recent Lua-related bugfix
14081         * test/etags/lua-src/test.lua: New file, tests the issues raised
14082         by bug#21934.
14083         * test/etags/Makefile (LUASRC): Add test.lua.
14084         * test/etags/ETAGS.good_1:
14085         * test/etags/ETAGS.good_2:
14086         * test/etags/ETAGS.good_3:
14087         * test/etags/ETAGS.good_4:
14088         * test/etags/ETAGS.good_5:
14089         * test/etags/ETAGS.good_6:
14090         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
14091         regression fix, resolved around 25 May 2015, required changes to
14092         the "good" ETAGS files.
14094 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14096         Fix Lua tags when a function name includes '.' or ':'
14098         * lib-src/etags.c (Lua_functions): Add a tag for the last element
14099         of a function name after a dot or a colon.  (Bug#21934)
14101 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14103         Improve documentation of search and replace commands
14105         * doc/emacs/search.texi (Replacement and Lax Matches): Document
14106         which commands are affected by 'replace-character-fold'.
14107         (Lax Search): Add a cross reference to "Replacement and Lax
14108         Matches".  Improve wording.  Fix lost extra whitespace.
14109         (Search Customizations): Improve wording.  (Bug#22036)
14110         See also comments in
14111         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
14113         * lisp/replace.el (query-replace, query-replace-regexp)
14114         (query-replace-regexp-eval, replace-string, replace-regexp):
14115         Mention 'replace-character-fold' in the doc strings.
14117 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
14119         Fix minor problems found by static checking
14121         * src/undo.c (prepare_record): Add proper prototype for C.
14123 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14125         * src/emacs-module.c (struct env_storage): Delete
14127         (struct emacs_runtime_private): Keep an emacs_env instead.
14128         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
14129         (initialize_environment): Split the arg in two.  Adjust all callers.
14130         Only store the private part in Vmodule_environments.
14131         (finalize_environment): Change the arg to only be the private env.
14132         Adjust all callers.
14134 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14136         Improve documentation of 'replace-character-fold'
14138         * lisp/replace.el (replace-character-fold): Clarify which commands
14139         are affected by this variable.
14141 2015-11-27  Mark Oteiza  <mvoteiza@udel.edu>
14143         Backport: Add interactive seek command.
14145         * lisp/mpc.el (mpc-cmd-seekcur): New function.
14146         (mpc-seek-current): New command.
14147         (mpc-mode-menu): Add entry for mpc-seek-current
14148         (mpc-mode-map): Bind mpc-seek-current to "g"
14150 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
14152         Autoload etags when using its xref backend
14154         * lisp/progmodes/xref.el (xref--etags-backend):
14155         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
14156         (Bug#22026)
14158 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14160         * lisp/character-fold.el: Allow complex chars to match their decomposition
14162         (character-fold-table): When a character's decomposition does not
14163         involve a formatting tag (i.e., if it has an "exact" description via
14164         other characters), then this character is allowed to match the
14165         decomposition.
14167 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14169         * lisp/character-fold.el: More descriptive variable names
14171         (character-fold-table): Rename a lot of the lexical variables to
14172         make the code easier to read.
14174 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14176         * lisp/isearch.el: Ensure we still support `isearch-new-word'
14178         (isearch-new-regexp-function): Define variable.
14179         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
14181 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14183         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
14185 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
14187         * test/automated/abbrev-tests.el: Define more tests
14189         (abbrev-table-name-test, kill-all-abbrevs-test)
14190         (clear-abbrev-table-test): New tests.
14192 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14194         Add module tests for wrong-type-argument
14196         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14197         wrong-type-argument.
14199 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14201         Improve handling of signals and 'throw' in modules
14203         * src/emacs-module.c: Add commentary explaining how to write
14204         functions in this file.
14205         (module_make_global_ref, module_free_global_ref)
14206         (module_non_local_exit_signal, module_non_local_exit_throw)
14207         (module_make_function, module_funcall, module_intern)
14208         (module_type_of, module_is_not_nil, module_eq)
14209         (module_extract_integer, module_make_integer)
14210         (module_extract_float, module_make_float)
14211         (module_copy_string_contents, module_make_string)
14212         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
14213         (module_get_user_finalizer, module_set_user_finalizer)
14214         (module_vec_set, module_vec_get, module_vec_size)
14215         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
14216         Do nothing and return with failure indication immediately, if some
14217         previous module call signaled an error or wants to throw.  See
14218         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
14219         for the relevant discussions.
14221 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14223         Add ':version' tag to 'checkdoc-package-keywords-flag'
14225         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
14226         Add a ':version' tag.
14228 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14230         Improve documentation of 'eval-buffer' and 'eval-region'
14232         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
14234         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
14235         "accessible portion of buffer".
14237 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14239         Unbreak the Cygwin w32 build
14241         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
14242         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14244 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14246         Improve commentary in character-fold.el
14248         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
14249         description from commit log message to comments.  (Bug#22019)
14251 2015-11-26  Alan Mackenzie  <acm@muc.de>
14253         Byte Compiler: generate code to adjust stack count after call to `signal'.
14255         Corrects change from earlier today.
14257         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
14258         `byte-compile--for-effect' as argument to `byte-compile-form'.
14260 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
14262         Improve commentary of prepare_to_modify_buffer_1
14264         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
14265         that this function runs Lisp.  Suggested by Richard Stallman
14266         <rms@gnu.org>.
14268 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
14270         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
14272 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
14274         Fix regression after merge.
14276          * src/undo.c (prepare_record): Remove call to run_undoable_change.
14278 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
14280         After delete, record point location in undo.
14282         Addresses Bug #21968.
14284                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
14285                 better support intercalating calls.
14286                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
14287                 point and current buffer before each command.
14288                 * src/undo.c (record_point): Now only record the point.
14289                 * src/undo.c (prepare_record): Functionality removed form
14290                 record_point.
14291                 * src/undo.c (record_delete): Check if point needs recording.
14292                 * src/undo.c (undo-boundary): Record value of point before each
14293                 boundary.
14294                 * test/automated/simple-test.el: New tests.
14296         Conflicts:
14297                 src/undo.c
14299 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
14301         Fix compiler warnings in w32.c
14303         * src/w32.c (sys_socket): In case of error, use -1 as return
14304         value, not INVALID_SOCKET, which causes compiler warnings.
14305         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
14306         to the appropriate function signature, to avoid compiler errors.
14307         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
14309 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
14311         Check if the file exists on disk before producing the revert diff
14313         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
14314         exists on disk (bug#20558).
14316 2015-11-26  Alan Mackenzie  <acm@muc.de>
14318         Byte compiler: on setq with an odd number of arguments, generate a `signal'
14320         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
14321         it has an odd number of arguments, to allow bytecomp to handle the error.
14323         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
14324         odd number of arguments, generate a `signal' instead of the normal code.
14326 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
14328         Use find-tag-default for xref-backend-identifier-at-point
14330         * lisp/progmodes/etags.el (find-tag-tag)
14331         (tags-completion-at-point-function): Extract common code as
14332         find-tag--default.
14333         (xref-backend-identifier-at-point): Define in terms of the new
14334         function.
14336 2015-11-26  Paul Eggert  <eggert@cs.ucla.edu>
14338         * src/undo.c (record_property_change): Remove now-unused local.
14340 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
14342         run_undoable_changes now called from insdel.
14344         The original calls from inside undo.c are not always at a safe position
14345         to call lisp, as they originate in varied positions within insdel.c.
14346         Calling them directly from prepare_to_modify_buffer_1 ensures that they
14347         are always run at the same point.
14349          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
14350          and symbol used.
14351          * src/insdel.c (run_undoable_changes): Add function and symbol.
14353 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
14355         Improve and update documentation of search commands
14357         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
14358         all references changed.  Move the description of lax-whitespace
14359         here.  Add description of the new character folding features and
14360         additional customizable options.
14361         (Isearch Yank): Move before "Error in Search".
14362         (Basic Isearch): Improve wording.  Add index entries.  Add short
14363         description of how to abandon search, making this subsection a
14364         complete introduction to search basics.
14365         (Repeat Isearch): Add index entries.  Describe additional
14366         customizable options.  Describe mouse clicks.
14367         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
14368         area.  Describe more customizable options.
14369         (Error in Isearch): Add index entries.
14370         (Special Isearch): Move actual description of some isearch
14371         commands to other sections, leaving here just the summary of the
14372         commands.  Add command that toggles character folding.  Describe
14373         commands, like "C-h C-h", that were previously omitted for some
14374         reason.
14375         (Not Exiting Isearch): Describe search-exit-option.  Add index
14376         entries.
14377         (Word Search): Describe eww-search-word and eww-search-prefix.
14378         (Symbol Search): Add index entries.
14379         (Regexp Search): Describe regexp-search-ring-max.
14380         (Replacement and Lax Matches): Renamed from "Replacement and
14381         Case"; all references changed.  Describe lax-whitespace matching
14382         in replace commands and related options.  Describe character
14383         folding in replace commands and related options.
14384         (Query Replace): Describe query-replace-from-to-separator and the
14385         new history features.  Add index entries for highlighted text.
14386         Describe query-replace-skip-read-only.  Describe more keys
14387         accepted by query-replace.
14388         (Other Repeating Search): More index entries for Occur.  Describe
14389         list-matching-lines-default-context-lines.
14390         (Search Customizations): New section, documents customizable
14391         options that were not documented until now.
14392         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
14393         "Character Folding".
14395         * etc/NEWS: Move search- and replace-related entries to a single
14396         parent section.
14398         * lisp/replace.el (query-replace-show-replacement): Doc fix.
14399         * lisp/isearch.el (search-nonincremental-instead)
14400         (isearch-hide-immediately): Doc fixes.
14402 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
14404         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
14406         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
14407         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
14408         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
14410 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
14412         Fix module_format_fun_env when dynlib_addr fails
14414         * src/emacs-module.c (module_format_fun_env):
14415         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
14416         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
14418 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
14420         Disambiguate variable help a bit better
14422         * lisp/help-fns.el (describe-variable): Quote the
14423         variable’s value if it is a symbol other than t or nil.
14424         See: T.V Raman in:
14425         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
14427 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
14429         Pass SVN commit message through log-edit-extract-headers
14431         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
14432         log-edit-extract-headers (bug#18954).
14434 2015-11-24  Alan Mackenzie  <acm@muc.de>
14436         CC Mode: Eliminate compiler warning messages.
14438         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
14439         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
14440         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
14441         (c-awk-set-syntax-table-properties): Clarify comments about
14442         `font-lock-syntactic-keywords'.
14444         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
14445         of this before the real (interpreted) one, to satisfy the byte compiler.
14447 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
14449         Extend the test suite for json.el
14451         * lisp/json.el (json-plist-p): Clarify docstring.
14453         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
14454         macro.
14455         (test-json-join, test-json-alist-p)
14456         (test-json-plist-p, test-json-advance, test-json-peek)
14457         (test-json-pop, test-json-skip-whitespace)
14458         (test-json-read-keyword, test-json-encode-keyword)
14459         (test-json-read-number, test-json-encode-number)
14460         (test-json-read-escaped-char, test-json-read-string)
14461         (test-json-encode-string, test-json-encode-key)
14462         (test-json-new-object, test-json-add-to-object)
14463         (test-json-read-object, test-json-encode-list)
14464         (test-json-read-array, test-json-encode-array)
14465         (test-json-read, test-json-read-from-string)
14466         (test-json-encode): New tests.
14467         (json-read-simple-alist): Merged into `test-json-read-object'.
14468         (json-encode-string-with-special-chars): Merged into
14469         `test-json-encode-string'.
14470         (json-read-string-with-special-chars): Split into
14471         `test-json-encode-string' and `test-json-read-from-string'.
14473 2015-11-24  Anders Lindgren  <andlind@gmail.com>
14475         Fixed bug#18283: Enable applescript in NextStep.
14477         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
14479 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
14481         Allow completion on dynamic module files in load-library
14483         * lisp/files.el (load-library): Bind completion-ignored-extensions
14484         to nil, to allow completion on dynamic modules typed as file
14485         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14487 2015-11-24  Alan Mackenzie  <acm@muc.de>
14489         CC Mode: eliminate almost all byte compilation warnings
14491         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
14492         (cc-require): Remove the crude hack that saved and restored
14493         byte-compile-noruntime-functions.
14494         (cc-conditional-require, cc-conditional-require-after-load): New macros.
14496         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
14497         cc-fix.el using the new macros in cc-bytecomp.el.
14499         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
14500         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
14501         forms to remove the superflous quotes.
14503 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
14505         Add one more mod-test test
14507         * modules/mod-test/test.el (mod-test-sum-test): Test the error
14508         signaled when the function is invoked with a wrong number of
14509         arguments.
14511 2015-11-24  Philipp Stephani  <phst@google.com>
14513         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
14515 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
14517         Implement dynlib_addr for MS-Windows
14519         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
14520         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
14521         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
14522         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
14523         if undefined.
14524         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
14525         zero.
14526         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
14527         the full file name of the module for a given address.
14529 2015-11-24  Alan Mackenzie  <acm@muc.de>
14531         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
14533 2015-11-24  Alan Mackenzie  <acm@muc.de>
14535         Squashed commit of the following:
14537         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
14538         Author: Alan Mackenzie <acm@muc.de>
14539         Date:   Tue Nov 24 16:50:09 2015 +0000
14541             Byte compile: minor amendments.
14543             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
14544             add a comment to explain the binding of variables around a subsidiary
14545             compilation.
14546             (byte-compile-new-defuns): Amend the doc string.
14548         commit c537bfed1dda1593d218956ff00c6105a3ff0316
14549         Author: Alan Mackenzie <acm@muc.de>
14550         Date:   Sat Nov 21 18:43:57 2015 +0000
14552             Byte compiler: fix spurious warnings "might not be defined at runtime".
14554             Also initialize byte-compile-noruntime-functions between runs.
14556             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
14557             (byte-compile-initial-macro-environment): For eval-when-compile: bind
14558             byte-compile-unresolved-functions and byte-compile-new-defuns around
14559             byte-compile-top-level, to prevent spurious entries being made.
14560             (byte-compile-warn-about-unresolved-functions): Check whether function is
14561             in byte-compile-new-defuns before emitting a warning about it.
14562             (byte-compile-from-buffer): Initialize new variable and
14563             byte-compile-noruntime-functions to nil.
14564             (byte-compile-file-form-require): record all new functions defined by a
14565             `require' in byte-compile-new-defuns.
14566             (byte-compile-file-form-defmumble): record the new alias in
14567             byte-compile-new-defuns.
14569 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
14571         Fix crash at startup related to GC of font entities
14573         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
14574         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
14575         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
14576         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
14577         Don't ifdef away font cache compaction on NT_GUI, as the problems
14578         which led to that seem to have been solved.
14579         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
14580         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
14581         cousins.  (Bug#21999)
14583 2015-11-24  Alan Mackenzie  <acm@muc.de>
14585         Byte compile: Output an error, not a warning, for odd number of args to setq
14587         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
14589 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
14591         Fix kbd_buffer iteration loop in readable_events
14593         * src/keyboard.c (readable_events): Wrap the event pointer back to the
14594         start of the kbd_buffer array inside the top of the loop instead of
14595         right before checking the loop condition, since kbd_fetch_ptr and
14596         kbd_store_ptr point past the end of the array to mean that element 0
14597         is next. (bug#21935)
14599 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
14601         Improve text-quoting-style doc again
14603         * doc/lispref/help.texi (Keys in Documentation):
14604         Omit overkill discussion of ‘setq’.  Mention Emacs versions
14605         where ‘grave’ style was standard.
14607 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
14609         Improve text-quoting-style doc
14611 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
14613         Simplify module_make_function
14615         * src/emacs-module.c (module_make_function):
14616         Simplify by calling build_unibyte_string.
14618 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
14620         Port better to FreeBSD’s dlfunc vs dlsym
14622         This avoids warnings when converting between void * and
14623         function pointers, which strict C11 does not allow.
14624         * configure.ac (dlfunc): Check for existence.
14625         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
14626         (dynlib_func): New function.
14627         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
14628         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
14629         dynlib_sym, for function pointers.
14631 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
14633         Simplify use of emacs_finalizer_function type
14635         * src/emacs-module.h (emacs_finalizer_function):
14636         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
14637         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
14639 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
14641         module_format_fun_env fixes
14643         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
14644         * src/emacs-module.c (module_format_fun_env):
14645         Convert path and sym to UTF-8.
14646         Don’t use VLAs, as the C11 standard says they’re optional,
14647         and anyway they can cause core dumps with large allocations.
14648         Use exprintf rather than snprintf, as exprintf handles arbitrarily
14649         long strings.  Simplify the code a bit.
14651 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
14653         Don't use package-user-dir in elisp-library-roots if it's not bound
14655         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
14656         use package-user-dir if it's not bound (bug#19759).
14658 2015-11-23  Anders Lindgren  <andlind@gmail.com>
14660         New visible-bell for NextStep (OS X El Capitan compatible).
14662         Instead of inverting a rectangle in the middle of the frame, use
14663         the standard NextStep image "caution", represented using an
14664         warning sign with an exclamation mark.  (Bug#21662)
14666         Implemented based on a suggestion drafted by Mustafa Kocaturk.
14668         * src/nsterm.m (EmacsBell): New class for managing the caution
14669         image.  Support multiple active bells, the image is removed once
14670         all bells have timed out.
14671         (ns_timeout): Removed, no longer used.
14672         (ns_ring_bell): Reimplemented to use EmacsBell.
14674 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
14676         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
14678         (remove-function): Ditto. (Bug#20376)
14680 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
14682         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
14684 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
14686         Improve how non-ASCII strings are accepted from modules
14688         * src/emacs-module.c (module_make_function, module_make_string):
14689         Build a unibyte Lisp string and then decode it by UTF-8, instead
14690         of building a multibyte string without decoding.  This is more
14691         tolerant to deviations from UTF-8.
14693 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
14695         Port recent module changes to pickier compilers
14697         * src/emacs-module.c (module_make_function)
14698         (module_make_string): Add casts to fix pointer signedness issues.
14700 2015-11-23  Philipp Stephani  <phst@google.com>
14702         Fix how strings are accepted from modules
14704         * src/emacs-module.c (module_make_function, module_make_string): Use
14705         make_multibyte_string.
14706         (module_copy_string_contents): Encode before reading the byte
14707         size.  Return false if and only if an error occurred.
14709 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
14711         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
14713 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
14715         Add the tamil-dvorak input method
14717         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
14719         * etc/NEWS: Mention the new input method.
14721 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
14723         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
14725         * src/frame.c (adjust_frame_size): Don't set
14726         FRAME_WINDOW_SIZES_CHANGED here ...
14727         * src/window.c (resize_frame_windows): ... but here, as suggested
14728         by Stefan Monnier.  Also remove some dead code along the way.
14730 2015-11-23  Alan Mackenzie  <acm@muc.de>
14732         * etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
14734 2015-11-23  Alan Mackenzie  <acm@muc.de>
14736         Signal an error when `setf' gets an odd number of arguments.
14738         * lisp/emacs-lisp/gv.el (setf): Amend.
14740 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
14742         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
14744 2015-11-23  Alan Mackenzie  <acm@muc.de>
14746         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
14748 2015-11-23  Alan Mackenzie  <acm@muc.de>
14750         Expunge occurrences of `setq' with an odd number of arguments.
14752         * lisp/apropos.el (apropos-documentation):
14753         * lisp/obsolete/complete.el (PC-include-file-all-completions):
14754         * lisp/progmodes/compile.el (compilation-goto-locus):
14755         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
14756         Insert missing nil at end of `setq' forms.
14758         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
14759         erroneous trailing variable name from a setq, thus allowing a compilation
14760         properly to track functions not defined at runtime.
14762 2015-11-23  John Wiegley  <johnw@newartisans.com>
14764         Add a note about a questionable use of bool in xdisp.c
14766 2015-11-23  Alan Mackenzie  <acm@muc.de>
14768         Issue a warning from the byte compiler on a malformed `setq' form.
14770         Partly fixes bug#20241.
14771         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
14772         `setq' form with an odd number of arguments is compiled.
14774 2015-11-23  Alan Mackenzie  <acm@muc.de>
14776         Don't let cconv_convert insert a nil argument into a `setq' form.
14778         Fixes bug#21983.
14779         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
14780         argument into a `setq' when there're an odd number of args.  This enables the
14781         byte compiler to issue a message in this case.
14783 2015-11-23  Alan Mackenzie  <acm@muc.de>
14785         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
14787         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
14788         (syms_of_eval): Add a DEFSYM for Qsetq.
14790 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
14792         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
14794         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
14796 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14798         Add EUDC BBDB 3 entry in NEWS
14800         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
14802 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14804         Improve EUDC to BBDB 3 export
14806         * lisp/net/eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
14807         entry to single item.  Add company conversion.
14808         * lisp/net/eudc-export.el (eudc-bbdbify-company): New function.
14809         (bbdb-parse-phone): Declare function.
14810         (eudc-bbdbify-phone): Add BBDB 3 support.
14811         (Bug#21971)
14813 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14815         Add BBDB 3 support for EUDC export
14817         * lisp/net/eudc.el: Add bbdb-version defvar.
14818         (eudc--using-bbdb-3-or-newer-p): New function.
14819         * lisp/net/eudc-export.el (eudc-create-bbdb-record): Add support for
14820         bbdb-create-internal argument list changes introduced in BBDB 3.
14821         * lisp/net/eudcb-bbdb.el: Remove bbdb-version defvar.
14822         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
14823         (Bug#21971)
14825 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
14827         Allow loading modules by 'load-file'
14829         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
14830         2nd arg, to avoid the "binding stack not balanced" error.
14831         (syms_of_lread) <module-file-suffix>: New Lisp variable.
14833         * lisp/files.el (module-file-suffix): Declare.
14834         (load-file): Remove 'module-file-suffix' from
14835         'completion-ignored-extensions', to allow completion on modules.
14837         * etc/NEWS: Mention 'module-file-suffix'.
14839 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
14841         Fix unoptimized builds
14843         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
14844         builds.
14846 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
14848         Work around the asynchronous-empty-diff problem
14850         * lisp/vc/vc-rcs.el (vc-rcs-diff):
14851         * lisp/vc/vc-mtn.el (vc-mtn-diff):
14852         * lisp/vc/vc-hg.el (vc-hg-diff):
14853         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
14854         do a synchronous process call (bug#21969).
14856 2015-11-22  Karl Fogel  <kfogel@red-bean.com>
14858         Finish excising electric indent from `open-line'
14860         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
14862         * test/automated/simple-test.el (open-line-indent, open-line-hook):
14863           Adjust accordingly.
14865         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
14866         (git commit c59353896) started.  It turns out that having INTERACTIVE
14867         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
14868         still had the electric indent behavior, as `post-self-insert-hook'
14869         normally contains `electric-indent-post-self-insert-function' ever
14870         since `electric-indent-mode' has been on by default.  Tracing the code
14871         change in `open-line' is mildly twisty, because Artur Malabarba's
14872         earliest two commits of 24 Oct 2015 first removed the `interactive'
14873         form entirely (git commit 6939896e2) and then restored it with the new
14874         extra "p" already added (git commit bd4f04f86), such that there is no
14875         single-commit diff in which one sees the second "p" appear.  Thus this
14876         change is effectively a reversion of parts of each of those commits.
14878         This could close bug#21884, at least until further discussion.
14880 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
14882         Adhere closer to the "implicit tag name" definition
14884         * lisp/progmodes/etags.el (etags-tags-completion-table):
14885         Adhere closer to the "implicit tag name" definition.  Simplify
14886         the regexp.  Search for the explicit tag name first, and when
14887         not found, search locally for the implicit one.  (Bug#21934)
14889 2015-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
14891         Unrevert most of regexp reentrancy abort patch
14893         The problem was in:
14894           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
14895         which is hence not unreverted.
14896         The rest is:
14897         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
14898         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
14899         All callers in regex.c changed back to the _FAST versions.
14901         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
14902         propertization in backward-sexp.
14904 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
14906         Revert regexp reentrancy abort patch
14908         Although the patch does fix Bug#21688 and prevents a core dump,
14909         it also makes the message-mode-propertize test fail; see:
14910         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
14911         Perhaps someone else can come up with a better fix some day.
14912         * src/syntax.c (update_syntax_table_forward):
14913         Propertize even when truncated.
14914         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
14915         (UPDATE_SYNTAX_TABLE_FAST): Remove.
14916         All callers changed back to the non-_FAST versions.
14918 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
14920         Add a few safety checks when ENABLE_CHECKING
14922         This was motivated by the recent addition of module code,
14923         which added some ENABLE_CHECKING-enabled checks that are
14924         useful elsewhere too.
14925         * src/alloc.c (compact_font_cache_entry):
14926         * src/fns.c (sweep_weak_table):
14927         * src/lread.c (oblookup):
14928         Use gc_asize rather than doing it by hand.
14929         * src/emacs-module.c (module_make_global_ref)
14930         (module_free_global_ref, module_vec_size):
14931         Omit assertions that lisp.h now checks.
14932         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
14933         check that the result is nonnegative.  Use eassume, as this
14934         info can help a bit when optimizing production code.
14935         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
14936         to be consistent with the USE_LSB_TAG case.
14937         (gc_asize): New function, when ASIZE is needed in the gc.
14938         (gc_aset): Use it.
14939         (HASH_TABLE_P): Move definition up, so that it can be used ...
14940         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
14942 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
14944         Simplify recording of main thread's ID on MS-Windows
14946         * src/w32term.c (w32_initialize):
14947         * src/w32console.c (initialize_w32_display):
14948         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
14949         ID independently for each type of session (GUI, TTY, batch).
14950         * src/w32term.c (w32_init_main_thread): New function, records the
14951         main thread's thread ID.
14952         * src/w32term.h: Add prototype for w32_init_main_thread.
14953         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
14955         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
14956         main_thread, for consistency with other threading libraries.  All
14957         users changed.  Include w32term.h.
14958         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
14959         make sure the main thread is alive, as we hold a handle on it
14960         opened by w32_init_main_thread.
14961         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
14962         w32_init_main_thread, instead of calling the requisite APIs once
14963         more.
14965 2015-11-21  Mark Oteiza  <mvoteiza@udel.edu>
14967         Backport: Fix issue where a new tempfile was created every refresh
14969         * lisp/mpc.el (mpc-format): Leave dir as relative path
14971 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
14973         Call 'window-size-change-functions' for mini-windows
14975         * src/window.c (grow_mini_window, shrink_mini_window): Set the
14976         frame's 'window_sizes_changed' flag.
14977         * src/xdisp.c (redisplay_internal): Call the hooks on
14978         'window-size-change-functions' if the call to 'echo_area_display'
14979         sets the frame's 'window_sizes_changed' flag.
14980         (syms_of_xdisp) <window-size-change-functions>:
14981         Update doc string to indicate the mini-window resizes trigger a
14982         call to the hooks, and don't promise that will happen "before
14983         redisplay".  (Bug#19576, Bug#21333)
14985         * doc/lispref/windows.texi (Window Hooks): Update the description
14986         of 'window-size-change-functions'.
14988 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
14990         Improve documentation of dynamic modules
14992         * src/fns.c (Frequire): Doc fix to include the dynamic module
14993         support.
14994         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
14995         dynamic module support.
14996         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
14997         wrt the MUST-SUFFIX argument.
14999         * etc/NEWS: Expand documentation of dynamically loaded modules.
15001 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
15003         Initial documentation for dynamic modules
15005         * etc/NEWS: Mention the new support for dynamically loaded modules.
15007 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
15009         Add xref--etags-backend to xref-backing-functions using add-hook
15011         * lisp/progmodes/xref.el (xref-backend-functions): Move the
15012         default value into a separate `add-hook' call (bug#21964).
15014         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15015         Don't declare the xref-backend-functions variable.
15016         It doesn't make any difference.
15018 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15020         Fix double-decrement bug when freeing global refs
15022         * src/emacs-module.c (module_free_global_ref): Add a FIXME
15023         comment about error reporting.  Fix a recently-introduced typo
15024         that double-decremented the refcount.
15026 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15028         Declare emacs_module_init in the module API
15030         * src/emacs-module.h (emacs_module_init): New decl.
15031         Without it, GCC might complain about a module that defines
15032         emacs_module_init without using it.  This also checks the
15033         API better.
15035 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15037         Fix module test to use ptrdiff_t nargs too
15039         * modules/mod-test/mod-test.c (Fmod_test_return_t)
15040         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
15041         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
15042         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
15043         (Fmod_test_userptr_get, Fmod_test_vector_fill)
15044         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
15045         (finalizer): Remove; no longer used.
15047 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15049         Fix reindent-introduced typo in module code
15051         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
15052         introduced while reindenting the code earlier, and add a
15053         comment explaining the unusual use of do-while here.
15055 2015-11-20  Anders Lindgren  <andlind@gmail.com>
15057         Fixed bug#19576: `write-file' saves wrong buffer.
15059         If a function on the hook `window-size-change-functions' doesn't
15060         restore the current buffer, functions that save and restore the
15061         current window configuration (like `y-or-no-p') could silently
15062         change the current buffer.  When `write-file' asked the user
15063         confirmation to overwrite a file, `y-or-no-p' changed the current
15064         buffer, and the wrong buffer was saved to the file.
15066         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
15067         using the `norecord' parameter.
15068         (follow-window-size-change): Restore current buffer. Call
15069         `select-frame' using the `norecord' parameter. Cleanup.
15071 2015-11-20  John Wiegley  <johnw@newartisans.com>
15073         Correct a documentation error in frames.texi
15075 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
15077         * lisp/cedet/mode-local.el: Delete obsolete comment
15079 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15081         Module function arg counts are ptrdiff_t, not int
15083         * src/emacs-module.c (struct module_fun_env)
15084         (module_make_function, module_funcall, Fmodule_call):
15085         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
15086         Use ptrdiff_t, not int, for arg counts.
15087         * src/emacs-module.c (module_make_function): Don’t bother
15088         checking arity against MOST_POSITIVE_FIXNUM, as that’s
15089         unnecessary here.  Make the checking clearer by negating it.
15090         (module_make_function, Fmodule_call): No need to use xzalloc
15091         since the storage doesn’t need to be cleared.
15092         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
15093         for it, and many implementations are buggy with large VLAs anyway.
15094         Use SAFE_ALLOCA_LISP instead.
15095         (module_vec_set): Don’t crash if i < 0.
15096         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
15097         (module_vec_set, module_vec_get): Do fixnum checks only when
15098         i is out of array bounds, for efficiency in the usual case.
15099         (Fmodule_load): Simplify fixnum range check.
15100         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
15101         integer overflow in array allocation size.
15103 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
15105         Minor improvements in module test
15107         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
15108         about missing prototype of malloc.
15109         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
15110         compiler warnings.
15112 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
15114         Improve MS-Windows implementation in dynlib.c
15116         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
15117         No need to include windows.h, as w32.h already does that.
15118         <dynlib_last_err>: New static variable.
15119         (dynlib_reset_last_error): New function.
15120         (dynlib_open): Convert forward slashes to backslashes.  Convert
15121         file names from UTF-8 to either UTF-16 or the current ANSI
15122         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
15123         argument is NULL, return a handle to the main module, like
15124         'dlopen' does.  Record the error, if any, for use by dynlib_error.
15125         (dynlib_sym): Check the handle for validity. Record the error, if
15126         any, for use by dynlib_error.
15127         (dynlib_error): Call w32_strerror to produce the error string, and
15128         zero out the last error code, like dlerror does.
15129         (dynlib_close): Check the handle for validity.  Record the error,
15130         if any, for use by dynlib_error.  Don't call FreeLibrary with a
15131         handle for the main module.
15132         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
15134 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15136         Include-file tweaks for modules
15138         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
15139         * src/dynlib.h: Do not include config.h.
15140         It’s every .c file’s responsibility to include config.h first.
15141         * src/emacs-module.c: Include emacs-module.h immediately after
15142         config.h, to test that emacs-module.h doesn’t depend on
15143         include files other than config.h.
15145 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15147         Simplify push_handler and profile its malloc
15149         * src/lisp.h (PUSH_HANDLER): Remove.
15150         All callers changed to use push_handler directly.
15151         * src/eval.c (internal_condition_case)
15152         (internal_condition_case_1, internal_condition_case_2)
15153         (internal_condition_case_n):
15154         Use same pattern as for other invokers of push_handler.
15155         (push_handler, push_handler_nosignal): Use call-by-value
15156         instead of call-by-reference.  All uses changed.
15157         (push_handler): Simplify by rewriting in terms of
15158         push_handler_nosignal.
15159         (push_handler_nosignal): Profile any newly allocated memory.
15161 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15163         * src/emacs-module.h: Include stddef.h, not stdlib.h.
15165 2015-11-20  Juanma Barranquero  <lekktu@gmail.com>
15167         Discover repository version in linked worktrees (bug#21930)
15169         * lisp/version.el (emacs-repository--version-git-1): Do not assume
15170         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
15171         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
15172         is nil too.
15174 2015-11-20  Juri Linkov  <juri@linkov.net>
15176         * lisp/replace.el (occur-regexp-descr): New function.
15177         (occur-1, occur-engine): Use it.
15179         * lisp/isearch.el (isearch-occur): Propertize regexp with
15180         isearch-string and isearch-regexp-function-descr for
15181         occur-regexp-descr to display the correct description
15182         message in the header (bug#21176, bug#21180).
15184 2015-11-20  Karl Fogel  <kfogel@red-bean.com>
15186         Revert `open-line' electric-indent sensitivity
15188         * lisp/simple.el (open-line): Remove electric indent code.
15189           (electric-indent-just-newline): Don't declare.
15191         * test/automated/simple-test.el (open-line-indent): Adjust test.
15193         This partly reverts Artur Malabarba's change that added electric
15194         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
15195         commit bd4f04f86), and adjusts a new test he added right afterwards
15196         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
15197         However, the new INTERACTIVE argument to `open-line', which he also
15198         added in the first commit, is not reverted here.
15200         See the thread "Questioning the new behavior of `open-line'." on the
15201         Emacs Devel mailing list, and in particular this message:
15203           From: Artur Malabarba
15204           Subject: Re: Questioning the new behavior of `open-line'.
15205           To: Karl Fogel
15206           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
15207           Date: Wed, 18 Nov 2015 21:03:58 +0000
15208           Message-ID: \
15209             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
15211           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
15213 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15215         Omit unnecessary clear in Fmodule_load
15217         * src/emacs-module.c (Fmodule_load):
15218         Simplify and avoid unnecessary initialization of priv member to 0.
15220         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
15222 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15224         Prefer signed integer types in module code
15226         Generally speaking, at the C level the Emacs source code prefers
15227         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
15228         partly to avoid the usual signedness confusion when comparing values.
15229         Change the module API to follow this convention.
15230         Use ‘int’ for small values that can’t exceed INT_MAX.
15231         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
15232         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
15233         (Fmod_test_vector_eq):
15234         * src/emacs-module.c (struct emacs_value_frame)
15235         (module_make_global_ref, module_free_global_ref)
15236         (module_copy_string_contents, module_make_string)
15237         (module_vec_set, module_vec_get, module_vec_size):
15238         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
15239         * src/lread.c (suffix_p):
15240         Prefer signed to unsigned integer types.
15242 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15244         Omit ‘const’ on locals
15246         Remove ‘const’ qualifier from locals that were newly added.
15247         We don’t normally bother declaring locals with ‘const’ even
15248         though they are not modified, for the same reason we don’t
15249         bother declaring them with ‘register’ even though their
15250         addresses are not taken; the advantage in compile-time
15251         checking isn’t worth the loss of readability.
15252         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
15253         (Fmod_test_vector_fill, Fmod_test_vector_eq):
15254         * src/emacs-module.c (MODULE_SETJMP_1)
15255         (module_make_global_ref, module_free_global_ref)
15256         (module_non_local_exit_get, module_make_function)
15257         (module_extract_integer, module_extract_float)
15258         (module_get_user_ptr, module_set_user_ptr)
15259         (module_get_user_finalizer, module_set_user_finalizer)
15260         (module_vec_get, Fmodule_call)
15261         (module_non_local_exit_signal_1)
15262         (module_non_local_exit_throw_1, lisp_to_value)
15263         (finalize_storage, allocate_emacs_value, mark_modules)
15264         (module_handle_signal, module_handle_throw)
15265         (module_format_fun_env):
15266         * src/eval.c (push_handler, push_handler_nosignal)
15267         (init_handler):
15268         * src/lread.c (suffix_p):
15269         Omit unnecessary ‘const’.
15271 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15273         Prefer intmax_t to int64_t in module code
15275         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
15276         * src/emacs-module.c (module_extract_integer)
15277         (module_make_integer):
15278         * src/emacs-module.h (struct emacs_env_25):
15279         Prefer intmax_t to int64_t.  This doesn’t change the generated
15280         code on any of the machines Emacs currently ports to, but it’s
15281         at least in theory more future-proof as C99 doesn’t guarantee
15282         that int64_t exists.
15284 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15286         Rename module.c to emacs-module.c, etc.
15288         * src/emacs-module.c: Rename from src/module.c.
15289         * src/emacs-module.h: Rename from src/module.h.
15290         All uses changed.
15292 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15294         Fix minor module problems found by static checking
15296         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
15297         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
15298         * src/emacs-module.c (Fmodule_load): Fix pointer signedness bug.
15299         (Fmodule_call): Tell GCC that the default case is unreachable.
15301 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15303         Style fixes for indenting etc. in module code
15305         This is mostly indenting and spacing changes.  Also, remove
15306         some unnecessary static decls instead of bothering to reindent them.
15307         * src/emacs-module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
15308         as most other Emacs files do for this sort of thing.
15310 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
15312         Minor improvements in modules testing Makefile
15314         * modules/mod-test/Makefile (EMACS, SO): New variables.
15315         (CFLAGS): When SO = dll, don't use -fPIC.
15316         (check): New target, runs the test.
15318 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
15320         * .gitignore: Add "*.dll".
15322 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15324         Migrate modules/.gitignore into .gitignore
15326         * .gitignore: Add former contents of modules/.gitignore.
15327         * modules/.gitignore: Remove.
15329 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15331         Add copyright notices to module code
15333         Put them in the usual format for GNU Emacs copyright notices.
15335 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15337         Rename emacs_module.h to module.h
15339         * src/module.h: Rename from src/emacs_module.h.
15340         All uses changed.
15342 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
15344         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
15346         * src/lread.c (Fload): Remove unused variable `size'
15348 2015-11-19  Alan Mackenzie  <acm@muc.de>
15350         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
15352 2015-11-19  Dmitry Gutov  <dgutov@yandex.ru>
15354         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
15356         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
15357         vc-parent-buffer over log-view-mode fallback (bug#21955).
15359 2015-11-18  Alan Mackenzie  <acm@muc.de>
15361         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
15363 2015-11-18  Ken Brown  <kbrown@cornell.edu>
15365         * configure.ac (LIBMODULES): Don’t define on Cygwin
15367 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
15369         Fix MS-Windows build --with-modules
15371         * src/module.c: Reformat copyright commentary.
15372         (module_vec_get): Use explicit cast to size_t to avoid compiler
15373         warning in 32-bit builds.
15374         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
15375         Compare thread IDs directly, as GetThreadId is not available
15376         before Windows Vista.
15377         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
15378         without using APIs and constants not available on XP and older
15379         systems.  Obtain and store the thread ID as well.
15381 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15382             Philipp Stephani  <phst@google.com>
15384         Add dynamic module test and helper script
15386         Add 'modhelp.py' script (python2) to automate module testing and
15387         module generation.
15389         To build and test all modules in the modules/ dir
15390           $ ./modhelp.py test
15392         To generate a module from template code (good starting point)
15393           $ ./modhelp init mynewtestmodule
15395         See the script -h option for more documentation.
15397         * modules/modhelp.py: New module helper script.
15398         * modules/mod-test/Makefile: New file. Makefile for the test module.
15399         * modules/mod-test/mod-test.c: New file. Test module source file.
15400         * modules/mod-test/test.el: New file. ert test suite for the test module.
15401         * modules/.gitignore: New file. Local .gitignore file.
15403 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15405         Make 'Fload' look for modules
15407         'Fload' can now load dynamic modules. This also makes 'require' work.
15409         * src/lread.c:
15410           (suffix_p): New function.
15411           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
15412           with a module suffix.
15413           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
15415 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15416             Philipp Stephani  <phst@google.com>
15418         Add dynamic module module support
15420         * configure.ac: Add '--with-modules' option.  Conditionally add
15421           dynlib.o and module.o to the list of objects.  Add any system
15422           specific flags to the linker flags to support dynamic libraries.
15423         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
15424           attributes.
15425         * src/Makefile.in: Conditionally add module objects and linker flags.
15426         * src/alloc.c (garbage_collect_1): protect module local values from
15427           GC.
15428         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
15429         * src/emacs-module.h: New header file included by modules.  Public
15430           module API.
15431         * src/emacs-module.c: New module implementation file.
15433 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15435         Add new User Pointer (User_Ptr) type
15437         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
15438         (XUSER_PTR): New User_Ptr accessor.
15439         * src/alloc.c (make_user_ptr): New function.
15440         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
15441         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
15442         (Fuser-ptrp): New user pointer type predicate function.
15443         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
15444         subr.
15445         * src/print.c (print_object): Add printer for User_Ptr type.
15447 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15448             Philipp Stephani  <phst@google.com>
15450         Add portable layer for dynamic loading
15452         * src/dynlib.h: New file.
15453         * src/dynlib.c: New file.
15455 2015-11-18  Philipp Stephani  <phst@google.com>
15457         Add catch-all & no-signal version of PUSH_HANDLER
15459         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
15460         a new "catch-all" handler type.
15462         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
15463           functions.
15464         * src/fns.c (hash_remove_from_table): Expose function public.
15465         * src/lisp.h: New handler type, define macro to push_handler call.
15467 2015-11-18  Ken Brown  <kbrown@cornell.edu>
15469         Silence byte-compiler warning
15471         * lisp/server.el (server-process-filter): Silence byte-compiler
15472         warning.
15474 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
15476         Quote symbols in docstrings using `'
15478         Be more systematic about quoting symbols `like-this' rather than
15479         `like-this or 'like-this' in docstrings.  This follows up Artur
15480         Malabarba's email in:
15481         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
15483 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
15485         Fix savegames in dunnet
15487         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
15488           of separate implementation.
15490 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
15492         * lisp/emacs-lisp/package.el (package--with-response-buffer):
15494         Ensure we're at the start of the buffer before searching for
15495         the end of headers.
15497 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
15499         * admin/release-process: Improve wording.
15501 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
15503         Backport: * CONTRIBUTE: Remove information about feature freeze.
15505         (cherry picked from commit ae0653b5ab9ee223751ec389b87011963e1cbbef)
15507 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
15509         Backport: Document the release process
15511         * admin/notes/versioning: Add information about RC releases.
15512         * admin/release-process: Document the release process.
15513         * admin/authors.el (authors-ignored-files):
15514         * admin/README: Change FOR-RELEASE to release-process.
15515         * CONTRIBUTE:
15516         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
15518         (cherry picked from commit 9a4aa0f5945a03611ae29c516025dbd353bd26ab)
15520 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
15522         Backport: * admin/release-process: Rename from admin/FOR-RELEASE.
15524         (cherry picked from commit f8cc14b59700e51a4e31139c0a65c8154995e055)
15526 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
15528         Backport: Mention CONTRIBUTE in README
15530         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
15531         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
15532         * README: Mention CONTRIBUTE.
15534         (cherry picked from commit ed2e7e20ae0945288c98091f308f5460c3453873)
15536 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
15538         Fix docstring quoting problems with ‘ '’
15540         Problem reported by Artur Malabarba in:
15541         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
15542         Most of these fixes are to documentation; many involve fixing
15543         longstanding quoting glitches that are independent of the
15544         recent substitute-command-keys changes.  The changes to code are:
15545         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
15546         (describe-mode-local-overload):
15547         Substitute docstrings before displaying them.
15548         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
15549         Quote the generated docstring for later substitution.
15551 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
15553         Improve configure --help text for wide ints
15555         * configure.ac (wide-int): Clarify user-level advantages and
15556         disadvantages.
15558 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
15560         Improve doc string
15562         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
15564 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
15566         eval_sub followed dangling pointer when debugging
15568         Problem reported by Pip Cet (Bug#21245).
15569         This bug could occur in eval_sub if the C compiler reused
15570         storage associated with the ‘argvals’ local after ‘argvals’
15571         went out of scope, and if the Elisp debugger stopped on Elisp
15572         function exit and accessed ‘argvals’.  It could also occur if
15573         a variadic function was called with so many arguments (over
15574         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
15575         SAFE_FREE freed the arguments, then the memory manager used
15576         the storage for other purposes, then the debugger accessed the
15577         arguments.
15578         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
15579         function body.  Simplify local decls.
15580         When allocating args via SAFE_ALLOCA, call
15581         debugger before invoking SAFE_FREE, as the debugger needs
15582         access to the args.
15583         (eval_sub, apply_lambda): Rework to avoid need for
15584         set_backtrace_debug_on_exit hack.  This is cleaner,
15585         and should work better with buggy custom debuggers.
15587 2015-11-17  Daiki Ueno  <ueno@gnu.org>
15589         * lisp/image-mode.el: Support encrypted file
15591         (image-toggle-display-image): Read content from the buffer instead
15592         of the file, if the buffer holds a decrypted data.  (Bug#21870)
15594 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
15596         ELF unexec: align section header
15598         This ports the recent unexelf.c changes to Fedora x86-64
15599         when configured with GCC’s -fsanitize=undefined option.
15600         * src/unexelf.c (unexec): Align new_data2_size to a multiple
15601         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
15602         pointer aligned appropriately for its type.
15604 2015-11-17  Andreas Schwab  <schwab@linux-m68k.org>
15606         Do more checks on bytecode objects (Bug#21929)
15608         * src/eval.c (funcall_lambda): Check size of compiled function
15609         object.
15610         (Ffetch_bytecode): Likewise.
15612 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
15614         pcase.el: Fix edebugging of backquoted cons patterns
15616         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
15617         cons patterns. (Bug#21920)
15619 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
15621         Improve fix for regex reentrancy abort
15623         Suggested by Stefan Monnier (Bug#21688).
15624         * src/syntax.c (update_syntax_table_forward):
15625         Remove recently-added PROPERTIZE arg, and assume it is true.
15626         All callers changed.
15627         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15628         Invoke update_syntax_table directly.
15630 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
15632         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
15634         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
15636         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
15638 2015-11-16  Vasily Korytov  <vasily.korytov@yahoo.com>
15640         Recognize .rbw and .pyw files (bug#18753)
15642         * lisp/progmodes/python.el (auto-mode-alist):
15643         Recognize .pyw files.
15645         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
15646         Recognize .rbw files.
15648 2015-11-16  Dmitry Gutov  <dgutov@yandex.ru>
15650         Fix ruby-mode auto-mode-alist entry
15652         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
15653         around the extensions (bug#21257).
15655 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
15657         Fix etags completion near eob
15659         * lisp/progmodes/etags.el (tags-completion-at-point-function):
15660         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
15662 2015-11-15  Alan Mackenzie  <acm@muc.de>
15664         De-pessimize detection of C++ member initialization lists.
15666         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
15667         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
15668         is only called when a construct "looks right" rather than continually.
15669         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
15671 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
15673         Backport: * lisp/emacs-lisp/package.el: Fix a decoding issue.
15675         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
15676         `url-insert-buffer-contents'.
15677         (url-insert-buffer-contents): New function
15679         (package--with-response-buffer): Use `url-insert-buffer-contents'.
15680         The previous code had some issues with decoding. Refactoring that
15681         function allows us to use the decoding from url-handlers while still
15682         treating both sync and async requests the same.
15684 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
15686         Improve a few doc strings, comments
15688         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
15689         * lisp/cedet/ede/locate.el (ede-locate-base):
15690         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
15691         * src/fns.c (Fdelq): Improve doc string.
15693         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
15695 2015-11-15  Anders Lindgren  <andlind@gmail.com>
15697         Enhance NSTRACE (trace output for NextStep).
15699         Trace can be disabled for groups of functions. By default, event
15700         functions and functions that generate lots of output are disabled.
15702         Trace output of Objective-C functions now use the "[ClassName
15703         parameter:]" form.
15705         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
15706         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
15707         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
15708         controlling in which function groups trace should be active.
15709         (NSTRACE_WHEN): Support for silencing a function, this also
15710         silencing all called functions.
15711         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
15712         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
15713         print the full screen state in NSTRACE functions.
15715         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
15716         can be accessed from multiple threads.
15717         (nstrace_enabled_global): New variable, when FALSE, trace is
15718         silenced.
15719         (nstrace_restore_global_trace_state): New function, used to
15720         restore `nstrace_enabled_global' at end of block.
15721         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
15722         ([EmacsWindow setFrame:display:animation:])
15723         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
15724         and call corresponding super function.
15725         (Many functions): Add or enhance trace output.
15727         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
15729         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
15731         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
15732         and call corresponding super function.
15734 2015-11-15  Anders Lindgren  <andlind@gmail.com>
15736         Fixed a toolbar related issue on OS X.
15738         Earlier, when toggling the tool-bar in a maximized frame, the
15739         frame size didn't match the number of text lines, leaving an
15740         unused area at the bottom of the frame.
15742         * src/nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
15743         fullscreen modes when tool bar is disabled.
15745 2015-11-15  Anders Lindgren  <andlind@gmail.com>
15747         Fixed OS X 10.6.8 build issue (bug#21862).
15749         * src/nsterm.h (EmacsView): Add missing declarations.
15750         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
15751         the standard method but without the notification parameter.
15752         Intended to be used for direct calls.
15753         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
15754         version of `windowDidBecomeKey'. Made the notification method call
15755         the non-notification method instead of the vice versa.
15756         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
15757         needed.
15759 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
15761         * lisp/faces.el (faces--attribute-at-point): Fix an issue
15763         Previous code would signal an error when the face at point was
15764         a manually built list of attributes such as '(:foregroud "white").
15766         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
15768 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
15770         Fix regex abort when it tries to reenter itself
15772         Problem reported by Ken Raeburn.
15773         Solution suggested by Stefan Monnier (Bug#21688).
15774         * src/regex.c (re_match_2_internal):
15775         Use new _FAST functions to avoid regex code reentering itself.
15776         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
15777         All callers changed.
15778         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
15779         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
15781 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
15783         Improve Ruby 1.9-style keyword keys highlighting
15785         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
15786         Handle required keyword arguments (bug#21367).
15787         And highlight the colon together with the name.
15789 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
15791         Unify the absolutely equal xref-backend-references implementations
15793         * lisp/progmodes/elisp-mode.el (xref-backend-references):
15794         Remove.
15796         * lisp/progmodes/etags.el (xref-backend-references):
15797         Remove.
15799         * lisp/progmodes/xref.el (xref-backend-references):
15800         Define the default implementation.
15802 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
15804         Update project-find-regexp for the new xref API
15806         * lisp/progmodes/project.el (project--read-regexp):
15807         Update to use the new xref API methods.
15809         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
15811 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
15813         Fix replacing a match with a shorter string
15815         In effect, partially reverting fe973fc.
15817         * lisp/progmodes/xref.el (xref-query-replace): Store the end
15818         of each match as a marker again, instead of length.
15819         (xref--query-replace-1): Update accordingly.
15821 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
15823         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
15825         Signal user-errors instead.
15827 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
15829         Document 'describe-symbol'
15831         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
15832         (Name Help): Document "C-h o" and describe-symbol.
15834         * lisp/help-fns.el (describe-symbol): Doc fix.
15836 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
15838         Change test name to avoid spellcheck issue.
15840 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
15842         Avoid signaling an error in 'describe-symbol'
15844         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
15845         exists as a function/variable/face/etc., but is undocumented.
15847         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
15848         test.
15850 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
15852         * INSTALL (--with-cairo): Document this new configure option.
15854 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
15856         Document that GNU Make >= 3.81 is required to build Emacs
15858         * doc/lispref/internals.texi (Building Emacs): Document that GNU
15859         Make 3.81 or later is now required.
15861 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
15863         Backport: * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async.
15865         (package--with-work-buffer-async): Reimplement as
15866         `package--with-response-buffer'.
15867         (package--with-work-buffer): Mark obsolete.
15868         (package--with-response-buffer): New macro. This is a more self
15869         contained and less contrived version of
15870         `package--with-work-buffer-async'.  It uses keyword arguments,
15871         doesn't have async on the name, doesn't fallback on
15872         `package--with-work-buffer', and has _much_ simpler error
15873         handling.  On master, this macro will soon be part of another
15874         library (either standalone or inside url.el), which is why this
15875         commit is not to be merged back.
15877         (package--check-signature, package--download-one-archive)
15878         (package-install-from-archive, describe-package-1): Use it.
15880         (package--download-and-read-archives): Let
15881         `package--download-one-archive' take care of calling
15882         `package--update-downloads-in-progress'.
15884 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
15886         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
15888 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
15890         Merge branch 'master' into emacs-25
15892 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
15894         Use generic dispatch for xref backends
15896         * lisp/progmodes/xref.el (xref-backend-functions):
15897         New variable.
15898         (xref-find-function): Remove.
15899         (xref-find-backend)
15900         (xref--etags-backend): New functions.
15901         (xref-identifier-at-point-function)
15902         (xref-identifier-completion-table-function): Remove.
15903         (xref-backend-definitions, xref-backend-references)
15904         (xref-backend-apropos, xref-backend-identifier-at-point)
15905         (xref-backend-identifier-completion-table):
15906         New generic functions.
15908         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15909         Add `elisp--xref-backend' to the beginning of
15910         `xref-backend-functions', locally.  Delete references to
15911         removed functions and vars.
15912         (elisp-xref-find): Remove.
15913         (elisp--xref-backend): New function.
15914         (elisp--xref-find-references, elisp--xref-find-apropos)
15915         (elisp--xref-identifier-completion-table):
15916         Turn into appropriately named generic methods.
15918         * lisp/progmodes/etags.el (etags-xref-find): Remove.
15919         (xref-backend-identifier-completion-table)
15920         (xref-backend-references, xref-backend-definitions)
15921         (xref-backend-apropos): New generic methods.
15923 2015-11-14  Juri Linkov  <juri@linkov.net>
15925         Support rectangular regions for more commands
15927         * lisp/simple.el (region-extract-function): Handle the arg
15928         value ‘bounds’.
15929         (region-insert-function): New function.
15930         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
15931         If non-nil, operate on multiple chunks.
15932         (region-noncontiguous-p): New function.
15934         * lisp/rect.el: Add function rectangle--insert-region
15935         around region-insert-function.
15936         (extract-rectangle-bounds): New function.
15937         (rectangle--extract-region): Handle the arg value ‘bounds’.
15938         (rectangle--insert-region): New function.
15940         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
15941         around region-insert-function.
15942         (cua--extract-rectangle-bounds): New function.
15943         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
15945         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
15946         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
15947         (query-replace-regexp-eval, map-query-replace-regexp)
15948         (replace-string, replace-regexp): Use ‘use-region-p’.
15949         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
15950         (perform-replace): Add arg ‘region-noncontiguous-p’.
15951         If non-nil, operate on multiple chunks.
15953         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
15954         If non-nil, operate on multiple chunks.  (Bug#19829)
15956 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
15958         Handle multiple matches on the same line; add highlighting
15960         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
15961         column value in characters.
15962         (xref--collect-matches): Rename from `xref--collect-match'.
15963         Search for all matches in the hit line.  Add `highlight' face to
15964         the matched region in the summary.  Update both callers.
15966 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
15968         Replace xref-match-bounds with xref-match-length
15970         Relying on xref-location-marker to point to the beginning of the match
15972         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
15973         (xref-match-length): Add.
15974         (xref-make-match): Change the arguments.
15975         (xref--match-buffer-bounds): Remove.
15976         (xref-match-item): Store length, instead of end-column.
15977         (xref-pulse-momentarily)
15978         (xref--collect-match)
15979         (xref--query-replace-1): Update accordingly.
15980         (xref-query-replace): Ditto.  And check that the search results
15981         are up-to-date.
15983 2015-11-13  John Wiegley  <johnw@newartisans.com>
15985         Merge remote-tracking branch 'origin/master' into emacs-25
15987 2015-11-13  l3thal  <kwhite@gnu.org>
15989         Merge branch 'erc-async-reconnect' into emacs-25
15991         Reconnect asynchronously.
15993 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
15995         Merge from gnulib
15997         This incorporates:
15998         2015-11-13 xalloc-oversized: improve performance with GCC 5
15999         * lib/xalloc-oversized.h: Copy from gnulib.
16001 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16003         Spruce up ftfont.c memory allocation
16005         * src/ftfont.c (setup_otf_gstring):
16006         Avoid O(N**2) behavior when reallocating.
16007         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
16008         reallocating buffers; this simplifies the code.  Do not trust
16009         mflt_run to leave the output areas unchanged on failure, as
16010         this isn’t part of its interface spec.
16012 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16014         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
16016 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16018         Port recent XCB changes to 64-bit ‘long int’
16020         For historical reasons, libX11 represents 32-bit values like Atoms as
16021         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
16022         do that, so adapt the recent XCB code to behave properly on 64-bit
16023         platforms.  Also, fix what appears to be a bug in the interpretation
16024         of xcb_get_property_value_length, at least on my Fedora platform
16025         which is running libxcb-1.11-5.fc21.
16026         * src/xfns.c (x_real_pos_and_offsets):
16027         * src/xterm.c (get_current_wm_state):
16028         xcb_get_property_value_length returns a byte count, not a word count.
16029         For 32-bit quantities, xcb_get_property_value returns a vector
16030         of 32-bit words, not of (possibly 64-bit) long int.
16032         Backport.
16034 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16036         * src/undo.c (run_undoable_change): Now static.
16038         Backport.
16040 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16042         Remove support for ':timeout' from w32 tray notifications
16044         * src/w32fns.c (Fw32_notification_notify): Delete the code that
16045         supports ':timeout'.
16046         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
16047         with dbusbind.c when D-Bus is compiled in.
16049         * doc/lispref/os.texi (Desktop Notifications): Don't mention
16050         ':timeout'.
16052         Backport.
16054 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16056         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
16058         (simple-test--transpositions): New macro.
16059         (simple-transpose-subr): New test.
16061         Backport.
16063 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16065         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
16067         Backport.
16069 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16071         * src/undo.c: Small fixes for previous change
16073         (run_undoable_change): Mark void argument list.
16074         (record_property_change): Remove unused variable `boundary'.
16076         Backport.
16078 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16080         Add a few more variables to redisplay--variables
16082         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
16083         and bidi-display-reordering to the list.
16085         Backport.
16087 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16089         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
16091         Backport.
16093 2015-11-13  Eli Barzilay  <eli@barzilay.org>
16095         Fix point positioning after transposing with negative arg
16097         * lisp/simple.el (transpose-subr): When invoked with a negative
16098         argument, move point to after the transposed text, like we do
16099         when invoked with a positive argument.  (Bug#21885)
16101         Backport.
16103 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16105         Fix last change in shr.el
16107         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
16108         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
16110         Backport.
16112 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16114         Fix last change
16116         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
16117         Don't DEFSYM tray notification symbols if D-Bus is being used.
16119         Backport.
16121 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16123         Another fix for MinGW64 and Cygwin builds due to notifications
16125         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
16126         being compiled into Emacs.
16127         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
16128         Sw32_notification_notify and Sw32_notification_close if the code
16129         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
16131         Backport.
16133 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16135         Remove intern calls and XXX comments from Fx_export_frames
16137         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
16138         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
16139         for consistency with image types.  Remove XXX comments.
16140         (syms_of_xfns) <Qpdf>: DEFSYM it.
16142         Backport.
16144 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16146         Port recent XCB changes to 64-bit ‘long int’
16148         For historical reasons, libX11 represents 32-bit values like Atoms as
16149         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
16150         do that, so adapt the recent XCB code to behave properly on 64-bit
16151         platforms.  Also, fix what appears to be a bug in the interpretation
16152         of xcb_get_property_value_length, at least on my Fedora platform
16153         which is running libxcb-1.11-5.fc21.
16154         * src/xfns.c (x_real_pos_and_offsets):
16155         * src/xterm.c (get_current_wm_state):
16156         xcb_get_property_value_length returns a byte count, not a word count.
16157         For 32-bit quantities, xcb_get_property_value returns a vector
16158         of 32-bit words, not of (possibly 64-bit) long int.
16160 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16162         * src/undo.c (run_undoable_change): Now static.
16164 2015-11-13  Michael Albinus  <michael.albinus@gmx.de>
16166         Adapt Tramp version, do not merge with master
16168         * doc/misc/trampver.texi (trampver):
16169         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
16171 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16173         Remove support for ':timeout' from w32 tray notifications
16175         * src/w32fns.c (Fw32_notification_notify): Delete the code that
16176         supports ':timeout'.
16177         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
16178         with dbusbind.c when D-Bus is compiled in.
16180         * doc/lispref/os.texi (Desktop Notifications): Don't mention
16181         ':timeout'.
16183 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16185         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
16186         (simple-test--transpositions): New macro.
16187         (simple-transpose-subr): New test.
16189 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16191         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
16193 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16195         * src/undo.c: Small fixes for previous change
16196         (run_undoable_change): Mark void argument list.
16197         (record_property_change): Remove unused variable `boundary'.
16199 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16201         Add a few more variables to redisplay--variables
16203         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
16204         and bidi-display-reordering to the list.
16206 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16208         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
16210 2015-11-13  Eli Barzilay  <eli@barzilay.org>
16212         Fix point positioning after transposing with negative arg
16214         * lisp/simple.el (transpose-subr): When invoked with a negative
16215         argument, move point to after the transposed text, like we do
16216         when invoked with a positive argument.  (Bug#21885)
16218 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16220         Fix last change in shr.el
16222         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
16223         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
16225 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16227         Fix last change
16229         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
16230         Don't DEFSYM tray notification symbols if D-Bus is being used.
16232 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16234         Another fix for MinGW64 and Cygwin builds due to notifications
16236         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
16237         being compiled into Emacs.
16238         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
16239         Sw32_notification_notify and Sw32_notification_close if the code
16240         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
16242 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16244         Remove intern calls and XXX comments from Fx_export_frames
16246         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
16247         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
16248         for consistency with image types.  Remove XXX comments.
16249         (syms_of_xfns) <Qpdf>: DEFSYM it.
16251 2015-11-13  Eric Hanchrow  <eric.hanchrow@gmail.com>
16253         shr: don't invoke unbound function (Bug#21895)
16255         * lisp/net/shr.el (have-fringes-p): New function.
16256         (shr-insert-document, shr-fill-text): Use it.
16258 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
16260         * test/automated/keymap-tests.el: Fix test to make it repeatable
16262         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
16263         entry to its initial value to make the test repeatable in interactive
16264         sessions (assuming it doesn't fail and crashes Emacs, of course).
16266 2015-11-13  Artur Malabarba  <bruce.connor.am@gmail.com>
16268         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
16270 2015-11-12  Phillip Lord  <phillip.lord@russet.org.uk>
16272         : Tests for undo-auto functionality.
16274 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
16276         The heuristic that Emacs uses to add an `undo-boundary' has been
16277         reworked, as it interacts poorly with functions on `post-command-hook'
16278         or `after-change-functions'.
16280         * lisp/simple.el: New section added.
16281         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
16282         (self_insert_command): Calls simple.el to amalgamate.
16283         (delete_char): Calls simple.el to amalgamate.
16284         * src/keyboard.c (last_undo_boundary): Removed.
16285         * src/undo.c (run_undoable_change): New function.
16287 2015-11-12  Juri Linkov  <juri@linkov.net>
16289         Bind [?\S-\ ] to previous line command in Dired-like modes.
16291         * lisp/arc-mode.el (archive-mode-map):
16292         * lisp/dired.el (dired-mode-map):
16293         * lisp/proced.el (proced-mode-map):
16294         * lisp/vc/vc-dir.el (vc-dir-mode-map):
16295         Bind [?\S-\ ] to previous line command.
16296         (Bug#20790)
16298 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
16300         Fix the MinGW64 and Cygwin-w32 builds
16302         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
16303         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
16304         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
16305         which cause trouble with MinGW42 headers.  Ifdef away tray
16306         notifications code for Cygwin.  Reported by Andy Moreton
16307         <andrewjmoreton@gmail.com>.
16309 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
16311         Enable sorting of JSON object keys when encoding
16313         * lisp/json.el (json-encoding-object-sort-predicate): New variable
16314         for specifying a sorting predicate for JSON objects during encoding.
16315         (json--plist-to-alist): New utility function.
16316         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
16317         are to be sorted.
16318         (json-encode-alist): Sort output by
16319         `json-encoding-object-sort-predicate, when set.
16320         (json-encode-plist): Re-use `json-encode-alist' when object keys are
16321         to be sorted.
16322         (json-pretty-print-buffer-ordered): New command to pretty print the
16323         buffer with object keys sorted alphabetically.
16324         (json-pretty-print-ordered): New command to pretty print the region
16325         with object keys sorted alphabetically.
16327         * test/automated/json-tests.el (test-json-plist-to-alist)
16328         (test-json-encode-plist, test-json-encode-hash-table)
16329         (test-json-encode-alist-with-sort-predicate)
16330         (test-json-encode-plist-with-sort-predicate): New tests.
16332         * etc/NEWS: Add an entry for the new commands.
16334 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
16336         * test/automated/keymap-tests.el: New test file.
16338 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
16340         Speed up x_real_pos_and_offsets using XCB
16342         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
16343         all X calls, and pipeline requests when possible, collecting results
16344         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
16346 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
16348         Enable use of XCB for checking window manager state
16350         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
16351         of XGetWindowProperty plus error-catching, since we can explicitly
16352         check for errors in the XCB version.  This eliminates 3 XSync calls on
16353         top of the round-trip actually fetching the information.
16355 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
16357         Detect XCB and save a connection handle
16359         * configure.ac: If using X11, check for XCB libraries and header.
16360         * src/Makefile.in (XCB_LIBS): Define.
16361         (LIBX_EXTRA): Include it.
16363         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
16364         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
16365         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
16367 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
16369         Reduce some data dependencies between X calls
16371         Gains nothing in the traditional-Xlib code, but more closely aligns
16372         with how the XCB version will work.
16374         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
16375         send coordinates (0,0) to the X server and add in the real coordinates
16376         after getting the response.  Move XGetGeometry for outer window inside
16377         error-trapping block.  Use DPY variable more, since it's available.
16379 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
16381         Use color cache for creating bitmap
16383         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
16384         Set attributes to use the caching color allocator.  Initialize and
16385         free the cache.
16387 2015-11-12  Eli Barzilay  <eli@barzilay.org>
16389         Add "^" to the interactive specs of `dired-next/previous-line'
16391         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
16392         to bind these commands to the arrow keys, and that means that they work
16393         better with a "^" in the `interactive' declaration so selection works
16394         as expected.
16396 2015-11-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16398         Sync with soap-client repository, version 3.0.2
16400         * lisp/net/soap-client.el: Bump version to 3.0.2.
16402         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
16404         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
16405         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
16407         * lisp/net/soap-client.el: Support Emacs versions that do not have
16408         define-error.
16410         * lisp/net/soap-inspect.el: Remove version header.
16412         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
16413         format.
16415 2015-11-11  Alan Mackenzie  <acm@muc.de>
16417         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
16419         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
16420         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
16421         (c-guess-basic-syntax):
16422         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
16423         (c-get-fallback-scan-pos): "New" function (existed several years ago).
16424         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
16425         c-get-fallback-scan-pos.
16426         (c-parse-state-1): Handle 'BOD strategy.
16428         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
16429         (c-font-lock-fontify-region): Remove bindings of
16430         open-paren-in-column-0-is-defun-start to nil.
16432         * doc/misc/cc-mode.texi (Performance Issues)
16433         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
16435 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
16437         * lisp/obarray.el: Fix shadowed variables.
16438         (obarray-map, obarray-remove, obarray-put, obarray-get):
16439         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
16441 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
16443         Avoid error in submitting a form with EWW
16445         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
16446         CHUNK to be nil.  (Bug#21881)
16448 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
16450         Rename seq-p and map-p to seqp and mapp
16452         * lisp/emacs-lisp/seq.el (seqp): New name.
16453         * lisp/emacs-lisp/map.el (mapp): New name.
16454         * doc/lispref/sequences.texi: Update the documentation for seqp.
16455         * test/automated/map-tests.el: Update the tests for mapp.
16457 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
16459         Rename obarray-p to obarrayp
16461         * lisp/obarray.el (obarrayp): New name.
16462         * test/automated/obarray-tests.el: Update the tests.
16464 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
16466         Rename obarray-foreach to obarray-map
16468         * lisp/obarray.el (obarray-map): New name.
16469         * test/automated/obarray-tests.el: Update the corresponding tests.
16471 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
16473         New file with obarray functions.
16475         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
16476         * test/automated/obarray-tests.el: New file.
16478 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
16480         Implement tray notifications for MS-Windows
16482         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
16483         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
16484         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
16485         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
16486         (EMACS_NOTIFICATION_MSG): New macros.
16487         (NI_Severity): New enumeration.
16488         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
16489         (delete_tray_notification, Fw32_notification_notify)
16490         (Fw32_notification_close): New functions.
16491         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
16492         keywords used by w32-notification-notify.
16494         * doc/lispref/os.texi (Desktop Notifications): Describe the native
16495         w32 tray notifications.
16497 2015-11-11  Alan Mackenzie  <acm@muc.de>
16499         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
16501         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
16502         Windows" and new @defun selected-window-group.
16503         (Window Start and End): Describe new &optional parameter GROUP and
16504         ...-group-function for window-start, window-end, set-window-start, and
16505         pos-visible-in-window-p.
16506         (Textual Scrolling) Describe the same for recenter.
16507         doc/lispref/positions.texi (Screen Lines): Describe the same for
16508         move-to-window-line.
16510         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
16511         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
16512         new optional parameter "group".  At the beginning of each, check whether the
16513         corresponding ...-group-function is set to a function, and if so execute this
16514         function in place of the normal processing.
16515         (syms_of_window): Define symbols for the six new variables below.
16516         (window-start-group-function, window-end-group-function)
16517         (set-window-start-group-function, recenter-group-function)
16518         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
16519         New permanent local buffer local variables.
16520         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
16521         Fpos_visible_in_window_p.
16523         lisp/window.el (selected-window-group-function): New permanent local buffer
16524         local variable.
16525         (selected-window-group): New function.
16527         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
16528         enable, kill them at mode disable.  Add/remove follow-after-change to/from
16529         after-change-functions.
16530         (follow-start-end-invalid): New variable.
16531         (follow-redisplay): Manipulate follow-start-end-invalid.
16532         (follow-after-change, follow-window-start, follow-window-end)
16533         (follow-set-window-start, follow-pos-visible-in-window-p)
16534         (follow-move-to-window-line, follow-sit-for): New functions.
16536         lisp/isearch.el (isearch-call-message): New macro.
16537         (isearch-update, with-isearch-suspended, isearch-del-char)
16538         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
16539         (with-isearch-suspended): Rearrange code such that isearch-call-message is
16540         invoked before point is moved.
16541         (isearch-message): Add comment about where point must be at function call.
16542         (isearch-search): Remove call to isearch-message.
16543         (isearch-lazy-highlight-window-group): New variable.
16544         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
16545         the battery of tests to ...
16546         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
16547         Note: (sit-for 0) is still called.
16548         (isearch-lazy-highlight-update): Check membership of
16549         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
16550         property.
16551         (isearch-update, isearch-done, isearch-string-out-of-window)
16552         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
16553         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
16554         (isearch-lazy-highlight-update): Call the six amended primitives (see
16555         src/window.c above) with the new `group' argument set to t, to cooperate
16556         with Follow Mode.
16558 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
16560         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
16562         * lisp/net/tramp.el (tramp-handle-file-equal-p)
16563         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
16564         Harvey Chapman <hchapman@3gfp.com>.
16566         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
16567         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
16568         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
16569         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
16571 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
16573         * CONTRIBUTE: Encourage adding tests.
16575         Based on this post from John Wiegley:
16577           From: "John Wiegley" <johnw@newartisans.com>
16578           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
16579           To: Juanma Barranquero <lekktu@gmail.com>
16580           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
16581               emacs-devel <emacs-devel@gnu.org>
16582           Date: Wed, 28 Oct 2015 18:45:29 -0700
16583           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
16585           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
16587 2015-11-10  David Reitter  <david.reitter@gmail.com>
16589         Avoid creating notification objects when possible
16591         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
16592         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
16593         functions that do not require a notification object.  When needed,
16594         define NSWindowDidEnterFullScreenNotification to allow for compilation
16595         on OS X 10.6.8.
16597 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
16599         Move INTEGER_TO_CONS body out of .h file
16601         * src/data.c (INTBIG_TO_LISP): New macro, with most
16602         of the contents of the old INTEGER_TO_CONS.
16603         (intbig_to_lisp, uintbig_to_lisp): New functions.
16604         * src/lisp.h (INTEGER_TO_CONS):
16605         Simplify by using EXPR_SIGNED and the new functions.
16606         This shrinks code size a bit, and makes it easier to
16607         put a breakpoint on handling of large integers.
16609 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
16611         Merge from gnulib
16613         This incorporates:
16614         2015-11-10 intprops: new public macro EXPR_SIGNED
16615         2015-11-10 intprops: fix typo in clang port
16616         * lib/intprops.h: Copy from gnulib.
16618 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
16620         Spelling fixes
16622         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
16623         Fix misspelling in output.
16625 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
16627         * doc/lispref/variables.texi (Directory Local Variables):
16628         Document dir-locals wildcards.
16630         * lisp/files.el (dir-locals-file): Point to Info node.
16632         * doc/emacs/custom.texi (Directory Variables):
16633         Document dir-locals wildcards.
16635         * etc/NEWS: Document new functionality.
16637 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
16639         * lisp/files.el: Don't allow customization of dir-locals sorting.
16640         In retrospect, this is not a good idea for the same reason that
16641         `dir-locals-file' is a defconst, because it is important that this
16642         behavior be "uniform across different environments and users".
16643         Sure, the user can still change the sorting with a hack, but we
16644         shouldn't encourage them to change it.
16645         (dir-locals--all-files): Return list in the order returned by
16646         `file-expand-wildcards'.
16647         (file-expand-wildcards): Document the sorting predicate used.
16648         (dir-locals-sort-predicate): Delete variable.
16650 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
16652         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
16654         * lisp/isearch.el (search-default-regexp-mode): Change default value.
16656 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
16658         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
16659         `locate-dominating-file' will now keep looking if the files it finds in
16660         a given directory are unreadable (or not files).
16662 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
16664         * lisp/files.el (dir-locals-file): Allow wildcards.
16665         (dir-locals-find-file, dir-locals-collect-variables)
16666         (dir-locals-read-from-file): Update accordingly.
16667         (hack-dir-local-variables): Rename a local variable.
16669         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
16671         * lisp/help-fns.el (describe-variable): Update accordingly.
16673         * .gitignore: Add .dir-locals?.el.
16675 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
16677         * lisp/emacs-lisp/map.el (map-merge-with): New function.
16679         * test/automated/map-tests.el (test-map-merge-with): New test.
16681 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
16683         Fix some recently-perturbed bookmark autoloads
16685         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
16686         (bookmark-set): Restore autoload.
16687         (bookmark-set-no-overwrite): Add autoload.
16689         Thanks to Juanma Barranquero for noticing the autoload problems
16690         introduced by my recent commit adding/changing the above functions
16691         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
16693 2015-11-09  Noah Friedman  <friedman@splode.com>
16695         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
16696         the start of buffer.  I don't recall if older versions of gdb were
16697         less strict but you cannot dump a 0-length range in gdb 7.9.1.
16699 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
16701         * lisp/progmodes/project.el: Update Commentary.
16703         Merge branch 'project-next'
16705 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
16707         Fold `project-ask-user' into `project-current'
16709         * lisp/progmodes/project.el (project-find-functions): Remove
16710         `project-ask-user'.
16711         (project-ask-user): Remove function and the corresponding
16712         `project-roots' implementation.
16713         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
16714         user in case there's no project in the current directory.  Update
16715         all callers.
16717 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
16719         When VC detects a conflict, specify which file
16721         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
16722         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
16723         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
16724         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
16725         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
16726           to display a standard message that specifies the conflicted file.
16728         Before this change, the message VC used for indicating a conflicted
16729         file was just "There are unresolved conflicts in this file" without
16730         naming the file (and this language was duplicated in several places).
16731         After this change, it's "There are unresolved conflicts in file FOO"
16732         (and this language is now centralized in one function in vc.el).
16734         Justification: It's important for the message to name the conflicted
16735         file because the moment when VC realizes a file is conflicted does not
16736         always come interactively.  For example, some people automatically
16737         find a set of Org Mode files on startup, and may keep those .org files
16738         under version control.  If any of the files are conflicted, the user
16739         just sees some messages fly by, and might later check the "*Messages*"
16740         buffer to find out what files were conflicted.  I'm not saying this
16741         happened to me or anything; it's a purely hypothetical example.
16743 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
16745         Fix assertion violation in define-key
16747         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
16748         objects.  Reported by Drew Adams <drew.adams@oracle.com>
16749         and Juanma Barranquero <lekktu@gmail.com>.
16751 2015-11-09  Dima Kogan  <dima@secretsauce.net>
16753         Fix a memory leak in GC of font cache
16755         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
16756         entities if some of the fonts it references are marked.  This
16757         plugs a memory leak.  (Bug#21556)
16759 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
16761         Use INT_ADD_WRAPV etc. to check integer overflow
16763         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
16764         * src/buffer.c (record_overlay_string, overlay_strings):
16765         * src/casefiddle.c (casify_object):
16766         * src/ccl.c (Fccl_execute_on_string):
16767         * src/character.c (char_width, c_string_width, lisp_string_width)
16768         (count_size_as_multibyte, string_escape_byte8):
16769         * src/coding.c (coding_alloc_by_realloc, produce_chars):
16770         * src/data.c (arith_driver):
16771         * src/dispnew.c (realloc_glyph_pool, init_display):
16772         * src/editfns.c (styled_format):
16773         * src/fns.c (Ffillarray):
16774         * src/ftfont.c (ftfont_shape_by_flt):
16775         * src/gnutls.c (gnutls_hex_string):
16776         * src/gtkutil.c (get_utf8_string):
16777         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
16778         * src/keymap.c (Fkey_description):
16779         * src/lisp.h (SAFE_ALLOCA_LISP):
16780         * src/term.c (encode_terminal_code):
16781         * src/tparam.c (tparam1):
16782         * src/xselect.c (x_property_data_to_lisp):
16783         * src/xsmfns.c (smc_save_yourself_CB):
16784         * src/xterm.c (x_term_init):
16785         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
16786         more-complicated code involving division and/or
16787         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
16788         subtraction and/or INT_ADD_OVERFLOW.
16789         * src/casefiddle.c (casify_object): Simplify multibyte size check.
16790         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
16791         * src/data.c (arith_driver): Also check for division overflow,
16792         as that’s now possible given that the accumulator can now contain
16793         any Emacs integer.
16794         * src/lisp.h (lisp_word_count): Remove; no longer used.
16796 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
16798         Make sure that the ignore file exists
16800         * lisp/vc/vc.el (vc-default-ignore-completion-table):
16801         Make sure that the ignore file exists.
16803 2015-11-09  Michael Sperber  <mike@xemacs.org>
16805         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
16806         `gnus-summary-delete-article` in a way that also works on XEmacs.
16808 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
16810         Add support for retrieving paths to JSON elements
16812         Add support for retrieving the path to a JSON element. This can for
16813         instance be useful to retrieve paths in deeply nested JSON
16814         structures.
16816         * lisp/json.el (json-pre-element-read-function)
16817         (json-post-element-read-function): New variables to hold pre- and post
16818         read callback functions for `json-read-array' and `json-read-object'.
16819         (json--path): New variable used internally by `json-path-to-position'.
16820         (json--record-path, json--check-position): New functions used
16821         internally by `json-path-to-position'.
16822         (json-path-to-position): New function for retrieving the path to a
16823         JSON element at a given position.
16824         (json-read-object, json-read-array): Call
16825         `json-pre-element-read-function' and `json-post-element-read-function'
16826         when set.
16828         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
16829         (test-json-path-to-position-with-arrays)
16830         (test-json-path-to-position-no-match): New tests for
16831         `json-path-to-position'.
16833 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
16835         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
16837         This really should been part of my previous commit
16838         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
16840 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
16842         Offer non-overwrite bookmark setter (Bug#15746)
16844         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
16845         what `bookmark-set' used to do, but with more choices for overwrite
16846         vs push, and with minor changes to the interactive prompt format.
16847         (bookmark-set): Rewrite as wrapper around above.
16848         If overwriting, inform the user of that in the prompt.
16849         (bookmark-set-no-overwrite): New function, also done as wrapper.
16850         Bind to "M" in `ctl-x-r-map' autoloads.
16851         (bookmark-map): Similarly bind "M" here.
16853 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
16855         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
16857 2015-11-08  Alan Modra  <amodra@gmail.com>
16859         ELF unexec: Don't insert a new section
16861         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
16862         don't need to mess with symbol st_shndx, or section sh_link and
16863         sh_info.
16865         This does lead to eu-elflint complaints about symbols defined in .bss
16866         with a needed version, because normally it is undefined symbols that
16867         have needed versions;  Defined symbols have version definitions.
16868         The exception is symbols defined by the linker in .dynbss for
16869         variables copied from a shared library in order to avoid text
16870         relocations, with copy relocs to copy their initial values from the
16871         shared library.  These symbols are both defined and have needed
16872         versions, and eu-elflink only expects to see them in SHT_NOBITS
16873         sections.  Of course there is no real problem with having such symbols
16874         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
16876         * src/unexelf.c: Delete outdated comments.
16877         (PATCH_INDEX): Delete.
16878         (find_section): Delete.
16879         (unexec): Don't add a new section.  Instead reuse the last bss
16880         section, extending it to cover dumped data.  Make bss sections
16881         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
16882         st_shndx.  Rename bss sections.
16884 2015-11-08  Alan Modra  <amodra@gmail.com>
16886         ELF unexec: Drive from PT_LOAD header rather than sections
16888         This rewrites bss handling in the ELF unexec code.  Finding bss
16889         sections by name results in complicated code that
16890         - does not account for all names of possible bss sections,
16891         - assumes specific ordering of bss sections,
16892         - can wrongly choose a SHT_NOBITS section not in the bss segment,
16893         - incorrectly calculates bss size (no accounting for alignment gaps),
16894         - assumes .data and .bss are in the same segment.
16896         All of these problems and more are solved by finding the bss segment
16897         in PT_LOAD headers, ie. the address range included in p_memsz but not
16898         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
16899         in that address range.
16901         * src/unexelf.c: Delete old ppc comment.
16902         (OLD_PROGRAM_H): Define.
16903         (round_up): Delete.
16904         (unexec): Don't search for bss style sections by name.  Instead,
16905         use the last PT_LOAD header address range covered by p_memsz
16906         but not p_filesz and match any SHT_NOBITS section in that
16907         address range.  Simplify initialization of section header vars.
16908         Don't assume that section headers are above bss segment.  Move
16909         copying of bss area out of section loop.  Align .data2 section
16910         to 1, since it now covers the entire bss area.  For SHT_NOBITS
16911         sections in the bss segment, leave sh_addr and sh_addralign
16912         unchanged, but correct sh_offset.  Clear memory corresponding
16913         to SHT_NOBITS .plt section.  Delete comment and hacks for
16914         sections partly overlapping bss range now that the full range
16915         is properly calculated.  Delete now dead .sbss code.
16916         (Bug#20614)
16918 2015-11-08  Alan Modra  <amodra@gmail.com>
16920         ELF unexec: R_*_NONE relocs
16922         These should be ignored on all targets.
16924         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
16925         not just Alpha.  Comment on reloc size assumption.
16927 2015-11-08  Alan Modra  <amodra@gmail.com>
16929         ELF unexec: _OBJC_ symbols in bss sections
16931         This code assumed that there was only one bss section.  Rather than
16932         checking for a particular index, check the section type.  Also, handle
16933         the possibility that the section was SHT_NOBITS originally and is
16934         unchanged, in which case no clearing is needed (and sh_offset isn't
16935         necessarily valid, which can lead to a wild memset).
16937         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
16938         bss sections.
16940 2015-11-08  Alan Modra  <amodra@gmail.com>
16942         ELF unexec: Symbol table patching
16944         No st_shndx value larger than SHN_LORESERVE should be changed.
16945         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
16946         SHN_LORESERVE.  Error on SHN_XINDEX.
16948 2015-11-08  Alan Modra  <amodra@gmail.com>
16950         ELF unexec: Merge Alpha and MIPS COFF debug handling
16952         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
16953         Don't find .mdebug section index, find the section in the loop.
16954         Allow for unlikely possibility that .mdebug is located at sh_offset
16955         before bss segment, by calculating move from difference in
16956         sh_offset rather than just assuming new_data2_size.  Simplify
16957         cbLineOffset handling.
16959 2015-11-08  Alan Modra  <amodra@gmail.com>
16961         ELF unexec: Tidy code
16963         Separate out some of the more mechanical changes so following patches
16964         are smaller.
16966         * src/unexelf.c (unexec): Rearrange initialization of program
16967         header vars.  Use pointer vars in loops rather than indexing
16968         section header array via macros.  Simplify _OBJC_ sym code
16969         and reloc handling code.
16971 2015-11-08  Alan Modra  <amodra@gmail.com>
16973         ELF unexec: Correct section header index
16975         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
16976         it should have been using "NEW_SECTION_H (nn)" to find the name of the
16977         section currently being processed.  Of course, before the bss
16978         sections, n and nn have the same value, so this doesn't matter except
16979         in the case of .sbss.  For .sbss this probably meant .bss (most likely
16980         the next section) was copied from memory.  A later patch removes the
16981         bogus .sbss handling anyway.
16983         * src/unexelf.c (unexec): Use correct index to look up names.
16985 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
16987         Fix Bug#21841
16989         * lisp/filenotify.el (file-notify--rm-descriptor):
16990         Use `descriptor' instead of computing its value.
16991         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
16992         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
16993         (Bug#21841)
16995 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
16997         Remove dirs in vc project roots from the the vc project library roots
16999         * lisp/progmodes/project.el (project-library-roots):
17000         Remove directories inside the project roots from the result.
17001         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
17003 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
17005         Move and rename xref-find-regexp to the project package
17007         * lisp/progmodes/project.el (project-find-regexp)
17008         (project--read-regexp)
17009         (project--find-regexp-in): New functions.
17011         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
17012         xref--show-xrefs.  Use in existing callers in place of that
17013         function.
17014         (xref--show-xrefs): Only do the "show" part.
17015         (xref-find-regexp): Rename, more or less, to
17016         project-or-libraries-find-regexp.
17018 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
17020         Abolish temporary buffer management for xref
17022         * lisp/progmodes/xref.el (xref--temporary-buffers)
17023         (xref--current)
17024         (xref--inhibit-mark-current)
17025         (xref--mark-selected): Remove.  Remove all references.
17026         (xref--show-xrefs): Do not construct the
17027         list of the temporary buffers, nor pass it along.
17029 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
17031         Rename "search path" to "library roots"
17033         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
17034         of the elements from CL-LIST1.
17036         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
17037         Update WRT to the above change.
17039         * lisp/progmodes/project.el (project-search-path-function): Rename
17040         to project-library-roots-function, update the documentation and
17041         references.
17042         (project-search-path): Likewise, to project-library-roots.
17043         (project-roots): Clarify documentation.
17044         (project-vc-search-path): Likewise, to project-vc-library-roots.
17045         (project-library-roots): In addition to the renames, thread the
17046         results through file-name-as-directory.
17047         (project-prune-directories): Accept a variable number of
17048         arguments.  Rename to project-combine-directories.
17049         (project-subtract-directories): New function.
17051         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
17052         Append project-roots and project-library-roots together.
17054         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
17056 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17058         Prefer xpalloc to doubling buffers by hand
17060         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
17061         (read1): Use it for simplicity.
17062         * src/macros.c (store_kbd_macro_char):
17063         * src/minibuf.c (read_minibuf_noninteractive):
17064         * src/term.c (encode_terminal_code):
17065         * src/xrdb.c (magic_db):
17066         Prefer xpalloc to growing buffers by hand.
17067         This doesn’t fix any bugs, but simplifies the code a bit.
17069 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17071         Merge from gnulib
17073         This incorporates:
17074         2015-11-05 timespec-sub: fix overflow bug; add tests
17075         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
17076         2015-11-03 intprops: add parentheses
17077         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
17078         Copy from gnulib.
17080 2015-11-07  David Reitter  <david.reitter@gmail.com>
17082         Provide NS notification objects where required to eliminate warnings
17084         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
17085         Call notification functions with notification objects
17086         as per delegate APIs.
17088 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
17090         Add test for bug #21824
17092         * test/automated/buffer-tests.el: New file.
17093         (overlay-modification-hooks-message-other-buf): New test.
17095 2015-11-07  Kelvin White  <kwhite@gnu.org>
17097         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
17099 2015-11-07  David Reitter  <david.reitter@gmail.com>
17101         Ignore fullscreen exit notifications on NS when frame is dead
17103         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
17104         (windowDidExitFullScreen:): Return if frame is dead.
17105         These functions may be called when a fullscreen frame
17106         is closed; they are called before, not after.
17108         May address Bug#21428.
17110 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
17112         Speed up lookup in redisplay--variables
17114         * lisp/frame.el (redisplay--variables): Make it a hash-table.
17116         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
17117         as a hash-table.  This speeds up this function by an order of
17118         magnitude: where previously a setq was slowed down by 100% by
17119         introducing the maybe_set_redisplay test, it is now only 5%
17120         slower.
17121         (syms_of_xdisp) <redisplay--variables>: Doc fix.
17123 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17125         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
17127         The defsubst was being created as:
17128             (cl-defsubst name (args) ("DOC") ...)
17130         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
17131         Add test.
17133 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
17135         Update doc string of hexl-mode
17137         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
17139 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
17141         Fix error in copy-abbrev-table
17143         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
17144         property of the abbrev-table.  (Bug#21828)
17146         * test/automated/abbrev-tests.el: New file.
17148 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
17150         Add test to auto-revert-tests.el for Bug#21841
17152         * test/automated/auto-revert-tests.el
17153         (auto-revert-test01-auto-revert-several-files): New test.
17154         (auto-revert-test02-auto-revert-tail-mode)
17155         (auto-revert-test03-auto-revert-mode-dired): Rename them.
17157 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
17159         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
17161 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
17163         In x_consider_frame_title don't set title of tooltip frames
17165         * src/xdisp.c (x_consider_frame_title): Return immediately for
17166         tooltip frames to avoid displaying empty tooltips.
17168 2015-11-06  Anders Lindgren  <andlind@gmail.com>
17170         Fixed NextStep fullscreen problem (bug#21770).
17172         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
17173         fullscreen frames.
17175 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
17177         Ensure redisplay after evaluation
17179         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
17180         Revert last change.
17181         * lisp/frame.el (redisplay--variables): Populate the
17182         redisplay--variables list.
17183         * src/xdisp.c (maybe_set_redisplay): New function.
17184         (syms_of_xdisp) <redisplay--variables>: New variable.
17185         * src/window.h (maybe_set_redisplay): Declare prototype.
17186         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
17188 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17190         * test/automated/subr-tests.el (subr-test-when): Fix again.
17192 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
17194         Don't invoke overlay modification hooks in wrong buffer
17196         * src/buffer.c (report_overlay_modification): When called with
17197         AFTER non-zero, don't invoke overlay modification hooks if the
17198         buffer recorded in last_overlay_modification_hooks is different
17199         from the current buffer.  (Bug#21824)
17201 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
17203         * admin/notes/repo: Fix a few obsolete references to Bazaar.
17205 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17207         * test/automated/subr-tests.el (subr-test-when): Fix test.
17209 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
17211         Avoid division by zero crash observed by Yuan MEI
17213         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
17215         * src/dispnew.c (required_matrix_height, required_matrix_width):
17216         Avoid division by zero.
17217         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
17218         dpyinfo->smallest_char_width to 1.
17220 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
17222         Ensure redisplay after "C-x C-e"
17224         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
17225         redisplay happens to account for any side effects of the evaluated
17226         sexp.  (Bug#21835)
17228 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
17230         Skip some file notification tests for cygwin
17232         * test/automated/file-notify-tests.el (file-notify--test-with-events):
17233         Remove argument TIMEOUT.  Adapt all callees.
17234         (file-notify-test02-events, file-notify-test04-file-validity):
17235         Skip for cygwin.  (Bug#21804)
17237 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
17239         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
17241 2015-11-05  Daiki Ueno  <ueno@gnu.org>
17243         Suppress redundant Pinentry startup messages
17245         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
17246         * lisp/epg.el: Declare `pinentry-start'.
17247         (epg--start): Call `pinentry-start' with QUIET argument set.
17249 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
17251         * doc/emacs/ack.texi (Acknowledgments): Updates.
17253 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
17255         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
17256         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
17258 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
17260         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
17261         Add prettification support for \times.
17263 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
17265         * test/automated/process-tests.el: Skip tests when bash is unavailable.
17266         (process-test-sentinel-accept-process-output)
17267         (process-test-sentinel-sit-for): skip-unless bash executable found.
17269 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
17271         Add test for bug #21831
17273         * test/automated/process-tests.el
17274         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
17275         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
17277 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
17279         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
17281         (eieio--generic-static-object-generalizer): Fix typo.
17282         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
17283         like the underlying cause of bug#17852 was fixed in the mean time.
17285 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
17287         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
17289         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
17290         It breaks bootstrapping (duh).
17292 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
17294         * lisp/files.el (report-errors): Obsolete.
17296         (normal-mode, hack-local-variables, dir-locals-find-file):
17297         Use `with-demoted-errors' instead.
17299 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
17301         * lisp/subr.el (when): Use `macroexp-progn'.
17303         * test/automated/subr-tests.el (subr-test-when): New test.
17305 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
17307         * lisp/progmodes/xref.el: Doc fixes.
17308         (xref-make-file-location, xref-make-buffer-location, xref-make)
17309         (xref-make-bogus-location, xref-make-match): Add cross-references.
17310         (xref--insert-xrefs): Fix typo in docstring.
17312 2015-11-04  Anders Lindgren  <andlind@gmail.com>
17314         Render fringe bitmaps correctly on NextStep (bug#21301)
17316         The fringe bitmaps were inverted, the background was not transparent,
17317         the image data was horizontally mirrored, and periodic fringe bitmaps
17318         were not supported.
17320         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
17321         When both background and foreground colors are 0, set the background
17322         alpha channel to 0 (making the background transparent).  When
17323         copying the image data, do this from the most significant bit
17324         (leftmost) to the least (rightmost), to avoid mirroring.
17325         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
17326         Add support for periodic images (e.g. the empty line indicator).
17328 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
17330         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
17332 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
17334         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
17336         * admin/MAINTAINERS: Add thunk.el.
17338 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
17340         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
17342 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
17344         Fix a stupid error in gfilenotify.c
17346         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
17347         if we've got a `deleted' signal AND the file name is the watched one.
17349 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
17351         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
17353         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
17354         Use case-insensitive string compare for file names.
17355         (emacs-test-dir): Add 'downcase' to cause case differences (at
17356         least on my system).
17358 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
17360         flymake-tests.el (warning-predicate-rx-gcc): Fix check
17362         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
17363         Also check that "make" is available, not just "gcc".
17365 2015-11-02  Ken Brown  <kbrown@cornell.edu>
17367         Document behavior of collation on Cygwin
17369         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
17370         expected failure on Cygwin.
17371         * doc/lispref/strings.texi (Text Comparison): Document that
17372         punctuation and whitespace are not ignored for sorting on Cygwin.
17374 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
17376         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
17378 2015-11-01  Glenn Morris  <rgm@gnu.org>
17380         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
17381         (Bug#21794)
17382         * test/automated/f90.el (f90-test-bug21794): New test.
17384 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
17386         Fix incompatibility with TCC in test for bug#18745
17388         * test/automated/process-tests.el (process-test-quoted-batfile):
17389         Remove spaces unrelated to the bug being tested.
17391 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
17393         Improve completion in tramp-gvfs.el
17395         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
17396         Rename from `tramp-zeroconf-parse-service-device-names'.
17397         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
17398         with `tramp-zeroconf-parse-device-names'.
17399         (tramp-gvfs-parse-device-names): New defun.
17400         (top): Use it when `tramp-zeroconf-parse-device-names' is not
17401         applicable.
17403         * lisp/net/tramp.el (tramp-set-completion-function): The argument
17404         could also be a zeroconf service type.
17406 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17408         * lisp/net/ntlm.el: Change version to 2.0.0.
17410 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
17412         Fix bug#21762
17413         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
17414         `eql' instead of `=' to accommodate the case that (syntax-after (point))
17415         returns nil.
17416         * test/automated/python-tests.el (python-indent-inside-paren-7):
17417         New test.
17419 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
17421         * test/automated/python-tests.el: Avoid warnings.
17422         (python-tests-with-temp-buffer, python-tests-with-temp-file):
17423         Bind `python-indent-guess-indent-offset' to nil.
17425 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
17427         * src/alloc.c: Silence compiler warnings.
17428         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
17430 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
17432         * etc/NEWS: Fix js-jsx-mode entry punctuation.
17434 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
17436         Add JSX indentation via js-jsx-mode  (Bug#21799)
17438         * lisp/progmodes/js.el: Add JSX indentation support.
17439         (js--jsx-end-tag-re)
17440         (js--jsx-after-tag-re): New variables.
17441         (js--jsx-find-before-tag)
17442         (js--jsx-indented-element-p)
17443         (js--as-sgml)
17444         (js--expression-in-sgml-indent-line)
17445         (js-jsx-indent-line)
17446         (js-jsx-mode): New functions.
17447         * test/indent/js-jsx.js: New file.
17448         * etc/NEWS: Add information about js-jsx-mode.
17450 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
17452         Minor fix in filenotify.el
17454         * lisp/filenotify.el (file-notify--event-file-name)
17455         (file-notify--event-file1-name): Normalize result with
17456         `directory-file-name'.
17458 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
17460         Avoid errors in redisplay--pre-redisplay-functions
17462         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
17463         use 'bobp', instead compare window-point with 1.  (Bug#21730)
17465 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
17467         Merge from gnulib
17469         This incorporates:
17470         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
17471         2015-10-25 stdalign: port to Sun C 5.9
17472         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
17473         Copy from gnulib.
17475 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
17477         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
17478         (w32_compare_strings): Adjust for the correction.
17480 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
17482         * test/automated/vc-tests.el (vc-test--state)
17483         (vc-test--working-revision, vc-test--checkout-model):
17484         Add result messages.
17486 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17488         * test/automated/faces-tests.el: Add another test
17490 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17492         * lisp/faces.el (faces--attribute-at-point): Fix bug
17493         introduced by previous commit.
17495 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17497         * test/automated/faces-tests.el: New file.
17499 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17501         * lisp/faces.el: Refactor common code and fix a bug.
17502         (faces--attribute-at-point): New function.  Fix a bug when the
17503         face at point is a list of faces and the desired attribute is not
17504         on the first one.
17505         (foreground-color-at-point, background-color-at-point): Use it.
17507 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
17509         * etc/tutorials/TUTORIAL.translators: Fix PL names.
17511 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
17513         * lisp/character-fold.el: Provide `character-fold'.
17515 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
17517         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
17518         for Gnus and ivy.
17520 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
17522         Some minor fixes for tramp-gvfs.el
17524         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
17525         An attribute returned by gvfs-info might be empty.  In case of
17526         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
17527         (tramp-zeroconf-parse-service-device-names): New defun.
17528         Derived from `tramp-zeroconf-parse-workstation-device-names'.
17529         (top): Add completion functions for "afp" and "smb" methods.
17531 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17533         * test/automated/character-fold-tests.el: New file
17535 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17537         * test/automated/sort-tests.el: New file.
17538         Tests in this file are randomly generated and then tested with
17539         regular, reverse, and case-fold sorting.
17541 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
17543         Describe known problems with pinning Emacs to taskbar
17545         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
17546         on Windows 10.  For the details, see the discussion starting at
17547         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
17549 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17551         * lisp/isearch.el: Avoid an error that blocks isearch.
17552         (isearch-update): Don't error if `isearch--current-buffer' has
17553         been killed.
17555         * test/automated/isearch-tests.el (isearch--test-update):
17556         New file.
17558 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
17560         Fix documentation of 'beginning/end-of-buffer'
17562         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
17563         conditions under which the mark will be pushed at the previous
17564         position.  (Bug#21748)
17566 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
17568         Add RefTeX feature idea: editing RefTeX TOC buffers
17570         More face defs for ivy, swiper, ace-window, eshell
17572 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17574         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
17575         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
17576         just VAR.
17577         (auth-source-backend-parse): Use make-instance.
17578         (auth-source-search): Remove unused key args.
17579         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
17580         (auth-source-search-backends): Use slot names rather than their initarg.
17581         (auth-source-netrc-create):
17582         (auth-source-delete):
17583         (auth-source-secrets-create, auth-source-plstore-search)
17584         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
17585         (auth-source-plstore-create, auth-source-netrc-search)
17586         (auth-source-netrc-parse): Remove unused key args.
17587         (auth-source-forget+): Simplify the arglist.
17588         (auth-source-macos-keychain-search-items)
17589         (auth-source-token-passphrase-callback-function): Mark unused args.
17590         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
17591         (pp-escape-newlines): Declare.
17592         (auto-source--symbol-keyword): New function.
17593         (auth-source-plstore-create, auth-source-netrc-create)
17594         (auth-source-netrc-normalize): Use it.
17595         (auth-source-netrc-search): Don't pass :delete to
17596         auth-source-netrc-parse since it doesn't use it.
17597         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
17598         symbol-value to index in keyword args.
17599         (auth-source-macos-keychain-result-append): Avoid setq.
17600         (auth-source-netrc-create): Remove unused vars `file' and `add'.
17601         (auth-source-user-or-password): Remove unused var `cname'.
17603 2015-10-29  Juri Linkov  <juri@linkov.net>
17605         * lisp/dired.el (dired-unmark-all-files-query): Declare.
17606         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
17607         (Bug#21746)
17609 2015-10-29  Juri Linkov  <juri@linkov.net>
17611         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
17612         to go to the beginning of text line instead of command line.
17613         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
17615 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
17617         Fix encoding of saving *Help* buffers
17619         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
17620         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
17622 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17624         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
17625         (cl--generic-derived-specializers): New function.
17626         (cl--generic-derived-generalizer): New generalizer.
17627         (cl-generic-generalizers): New specializer (derived-mode MODE).
17628         (cl--generic-split-args): Apply the rewriter, if any.
17629         (cl-generic-define-context-rewriter): New macro.
17630         (major-mode): Use it to define a new context-rewriter, so we can write
17631         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
17633         * lisp/frame.el (window-system): New context-rewriter so we can write
17634         `(window-system VAL)' instead of (window-system (eql VAL)).
17635         (cl--generic-split-args): Apply the rewriter, if any.
17636         (frame-creation-function): Use the new syntax.
17638         * lisp/term/x-win.el (window-system-initialization)
17639         (handle-args-function, frame-creation-function)
17640         (gui-backend-set-selection, gui-backend-selection-owner-p)
17641         (gui-backend-selection-exists-p, gui-backend-get-selection):
17642         * lisp/term/w32-win.el (window-system-initialization)
17643         (handle-args-function, frame-creation-function)
17644         (gui-backend-set-selection, gui-backend-get-selection)
17645         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
17646         * lisp/term/pc-win.el (gui-backend-get-selection)
17647         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
17648         (gui-backend-set-selection, window-system-initialization)
17649         (frame-creation-function, handle-args-function):
17650         * lisp/term/ns-win.el (window-system-initialization)
17651         (handle-args-function, frame-creation-function)
17652         (gui-backend-set-selection, gui-backend-selection-exists-p)
17653         (gui-backend-get-selection):
17654         * lisp/startup.el (handle-args-function):
17655         * lisp/term/xterm.el (gui-backend-get-selection)
17656         (gui-backend-set-selection): Use the new syntax.
17658 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17660         * test/indent/css-mode.css: Add tests for url(...) syntax.
17662 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17664         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
17665         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
17666         (smie-prec2->grammar): Use `declare'.
17668 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17670         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
17671         (cl--generic-generalizer): Add `name' field.
17672         (cl-generic-make-generalizer): Add corresponding `name' argument.
17673         (cl-generic-define-generalizer): New macro.
17674         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
17675         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
17676         (cl--generic-t-generalizer): Use it.
17677         (cl-generic-ensure-function): Add `noerror' argument.
17678         (cl-generic-define): Use it so we don't follow aliases.
17679         (cl-generic-define-method): Preserve pre-existing ordering of methods.
17680         (cl--generic-arg-specializer): New function.
17681         (cl--generic-cache-miss): Use it.
17682         (cl-generic-generalizers): Only fset a temporary definition
17683         during bootstrap.
17684         (cl--generic-struct-tag, cl--generic-struct-specializers):
17685         Allow extra arguments.
17687         * lisp/emacs-lisp/eieio-compat.el
17688         (eieio--generic-static-symbol-generalizer)
17689         (eieio--generic-static-object-generalizer):
17690         Use cl-generic-define-generalizer.
17691         (eieio--generic-static-symbol-specializers): Allow extra arguments.
17693         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
17694         (eieio--generic-subclass-generalizer):
17695         Use cl-generic-define-generalizer.
17696         (eieio--generic-subclass-specializers): Allow extra arguments.
17698 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17700         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
17702 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
17704         Add "afp" method to Tramp
17706         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
17708         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
17709         (tramp-gvfs-handle-expand-file-name)
17710         (tramp-gvfs-handler-mounted-unmounted)
17711         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
17712         (tramp-gvfs-maybe-open-connection): Support also "afp".
17713         (tramp-gvfs-handle-file-attributes): Handle the case of empty
17714         "owner::user" and "owner::group" entries.
17716 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
17718         Handle negative coordinates in ‘x_calc_absolute_position’
17720         * src/w32term.c (x_calc_absolute_position): Find display origin to
17721         allow for negative coordinates.
17723 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
17725         (internal--syntax-propertize): Save match-data here (bug#21766)
17727         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
17728         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
17730 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
17732         Don't require default-directory to end with a slash
17734         * doc/lispref/files.texi (Magic File Names): Document the change
17735         in unhandled-file-name-directory.
17737         * lisp/url/url-handlers.el
17738         (url-handler-unhandled-file-name-directory): Update accordingly.
17740         * src/buffer.c (default-directory): Update the docsting.
17742         * src/fileio.c (unhandled-file-name-directory): Default to calling
17743         `file-name-as-directory'
17744         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
17746 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
17748         * lisp/isearch.el: Delete some outdated comments.
17750 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
17752         Fix eshell/clear not working if the output has a small line count
17754         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
17755         number of newlines to be inserted. This fixes the issue where
17756         eshell/clear wouldn't work if the prompt was not at the bottom of the
17757         window, and the output wasn't too long.
17759 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
17761         * lisp/files.el (write-file): Use vc-refresh-state.
17763         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
17765         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
17767 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
17769         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
17770         (macroexp-unprogn): Make sure we never return an empty list.
17771         (macroexp-if): Remove unused (and unsafe) optimization.
17772         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
17773         occur occasionally.
17775 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
17777         Fix bug#21766 and add test
17778         * lisp/simple.el (delete-trailing-whitespace): Save match data when
17779         calling `skip-syntax-backward'.
17780         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
17781         New test.
17783 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
17785         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
17787 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
17789         * src/dispnew.c (init_display): Simplify overflow checking.
17791 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
17793         * lisp/character-fold.el (character-fold-to-regexp): Fix case
17794         where string ends in space
17796 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
17798         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
17800         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
17802 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
17804         * lisp/character-fold.el: Make compatible with lax-whitespace.
17805         (character-fold-to-regexp): Rework internals to play nice with
17806         lax-whitespacing.
17808         When the user types a space, we want to match the table entry for
17809         ?\s, which is generally a regexp like "[ ...]".  However, the
17810         `search-spaces-regexp' variable doesn't "see" spaces inside these
17811         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
17812         manually expose a space).
17814         Furthermore, the lax search engine acts on a bunch of spaces, not
17815         on individual spaces, so if the string contains sequential spaces
17816         like "  ", we need to keep them grouped together like this:
17817         "\\(  \\|[ ...][ ...]\\)".
17819 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
17821         * lisp/isearch.el: Refactor momentary messages.
17822         (isearch--momentary-message): New function.
17823         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
17824         (isearch-toggle-invisible): Use it.
17826 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
17828         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
17829         (isearch-define-mode-toggle): New macro.
17830         (isearch-toggle-invisible): Rename to
17831         `isearch-define-mode-toggle'.
17832         (isearch-toggle-case-fold, isearch-toggle-invisible)
17833         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
17834         with `isearch-define-mode-toggle'.
17836 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
17838         Avoid using `add-to-list' on a let-local var in tramp-smb.el
17840         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
17841         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
17843 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
17845         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
17846         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
17847         does not exist in XEmacs 21.4.
17849 2015-10-28  Anders Lindgren  <andlind@gmail.com>
17851         Fixed OS X startup crash
17853         Input events started to arrive before ns_term_init() was finished.
17854         Solved by blocking input.  This also seems to correct the "You
17855         can't open the application "Emacs" because it may be damaged or
17856         incomplete" error issued when double-clicking on the Emacs
17857         application.
17859         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
17860         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
17862 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
17864         * src/process.c (Fget_buffer_process): Improve docstring.
17865         Document the fact that it doesn't return dead processes.
17867 2015-10-28  Anders Lindgren  <andlind@gmail.com>
17869         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
17871         * src/nsterm.h (struct ns_output): New flag, in_animation.
17872         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
17873         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
17874         in_animation flag around call to "setVisible". Set new tool bar
17875         height before call to setVisible.
17876         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
17877         andColumns:] as this fools the subsequent call to updateFrameSize
17878         from performing the real resize.
17879         (windowDidResize): Don't update anything when in_animation is
17880         non-zero.
17882         Trace output.
17884         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
17885         (EmacsToolbar):
17886         * src/nsterm.m (x_set_window_size, updateFrameSize)
17887         ([EmacsView setRows: andColumns:])
17889 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
17891         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
17893 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
17895         Prettify TeX macros not ending in a word char
17897         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
17898         Prettify macros which don't end in a word character.
17900 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
17902         Pipe Hg commit descriptions through 'tabindent'
17904         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
17905         through 'tabindent'.
17906         (vc-hg-log-view-mode): Set tab-width to 2 locally.
17907         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
17909 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
17911         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
17912         (tramp-smb-handle-directory-files): Use `delete-dups'.
17914         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
17916 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
17918         * lisp/international/ccl.el: Use lexical-binding.
17919         (ccl-compile-if): Remove unused var `false-ic'.
17920         (ccl-compile-write-repeat): Remove unused var `i'.
17921         (ccl-compile-map-single): Remove unused var `id'.
17922         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
17923         dynamic var `ccl-code'.
17925 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
17927         * lisp/json.el (json-new-object): Optimize trivial `list' call.
17929 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
17931         * lisp/help.el: Fix bug with incorrect arglist string.
17932         (help-add-fundoc-usage): Don't mistake a mis-formatted string
17933         for a list.
17935 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
17937         * lisp/gnus/gnus-topic.el: Silence some warnings.
17938         (gnus-topic-prepare-topic): Remove unused var `topic'.
17939         (gnus-topic-remove-topic): Mark unused arg `hide'.
17940         (gnus-tmp-header): Declare.
17941         (gnus-topic-goto-missing-group): Remove unused var `entry'.
17942         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
17943         (gnus-topic-copy-matching): Mark unused arg `copyp'.
17944         Move initialization of `topic' into its declaration.
17946 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
17948         Minor CEDET fixes
17950         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
17951         Handle warnings from gtags about invalid options.
17952         (cedet-gnu-global-create/update-database): Do incremental update
17953         properly.
17955         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
17956         Get monotone root right.
17958 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
17960         Fall back to polling in autorevert when needed
17962         * lisp/autorevert.el (auto-revert-notify-handler): When a
17963         `stopped' event arrives from file notification, fall back to polling.
17965         * test/automated/file-notify-tests.el
17966         (file-notify-test03-autorevert): Extend test for polling when file
17967         notification ceases to work.
17969 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
17971         Show full commit messages in 'hg log' when appropriate
17973         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
17974         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
17975         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
17977 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
17979         Use a plain SVG file for the icon
17981         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
17982           format instead of the Inkscape SVG format.
17984 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
17986         Fix subtle bug in auto-revert-tests.el
17988         * test/automated/auto-revert-tests.el
17989         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
17990         buffer where it belongs to.  (Bug#21668)
17992 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
17994         * lisp/emacs-lisp/map.el: Better docstrings.
17996         * lisp/emacs-lisp/seq.el: Better docstrings.
17998         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
18000 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
18002         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
18004 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
18006         Clarify that load-path contents should be directory file names
18008         * doc/lispref/files.texi (Directory Names): Define and use "directory
18009         file name".  Recommend `expand-file-name'.
18011         * src/lread.c (load-path): Fix doc string; elements are directory file
18012         names.
18014 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
18016         Fix simple-test.el test
18018         * test/automated/simple-test.el (simple-test--dummy-buffer):
18019         Make sure indentation doesn't use TABs, otherwise the 6th test
18020         might fail.
18022 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
18024         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
18025         `substring' does not account for full width characters.
18027 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
18029         Further work on `stopped' events in filenotify.el
18031         * doc/lispref/os.texi (File Notifications): Rework examples.
18033         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
18034         (file-notify--rm-descriptor, file-notify-callback): Improve check
18035         for sending `stopped' event.
18036         (file-notify-add-watch): Check for more events for `inotify'.
18038         * test/automated/file-notify-tests.el
18039         (file-notify--test-expected-events): New defvar.
18040         (file-notify--test-with-events): Use it.
18041         (file-notify--test-cleanup): Make it more robust when deleting
18042         directories.
18043         (file-notify--test-event-test): Check also for watched directories.
18044         (file-notify--test-event-handler): Suppress temporary .#files.
18045         (file-notify-test02-events, file-notify-test04-file-validity):
18046         Rework `stopped' events.
18047         (file-notify-test05-dir-validity): Wait for events when appropriate.
18049 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
18051         * src/keyboard.c (post-command-hook): Shorten docstring.
18053 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
18055         Fix infinite loop in sh-script's SMIE code
18057         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
18058         loop (bug#21747).
18060 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18062         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
18063         Character-fold search _still_ doesn't play well with
18064         lax-whitespace.  So disable it by default (again) for now.
18066 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18068         * lisp/isearch.el: No visual feedback for default search mode.
18069         During an isearch where character-folding is the default, we don't
18070         want to take up minibuffer space just to tell the user that
18071         "Char-fold " is on.  The same goes for other modes, if the user
18072         changes the default.  In contrast, if the user toggles OFF the
18073         default mode, they should see "Literal", to distinguish it from
18074         the default mode.
18075         (isearch--describe-regexp-mode): Return "" if describing the
18076         default mode, and return "literal " if describing a plain search
18077         and it is not default.
18079 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18081         * test/automated/simple-test.el: New file.
18082         Define tests for `newline' and `open-line'.
18084 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18086         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
18087         Also run `post-self-insert-hook' when called interactively.
18089 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18091         * lisp/simple.el (open-line): Fix docstring.
18092         Also explain apparently redundant line.
18094 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18095             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
18097         Sync with soap-client repository, version 3.0.1
18099         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
18100         Bump version to 3.0.1.
18102         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
18104 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
18106         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
18108 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18110         * src/keyboard.c (post-command-hook): Extend the docstring.
18111         Mainly, explain how to use it without hanging Emacs, or giving the
18112         impression that it is hanging.  Also mention `pre-command-hook'.
18113         (pre-command-hook): Mention `post-command-hook'.
18115 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18117         * lisp/custom.el (custom-declare-variable): Shorten code again.
18118         Without using pcase this time.  We can't use pcase because it is
18119         loaded after custom in loadup.el.  Also add a comment explaining
18120         this to future dummies like me.
18122 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
18124         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
18126 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
18128         Introduce `stopped' event in file notification
18130         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
18131         (file-notify-rm-watch): Use it.
18132         (file-notify-callback): Implement `stopped' event.
18133         (file-notify-add-watch): Mention `stopped' in the docstring.
18134         Check, that upper directory exists.
18136         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
18137         Add two test cases.
18138         (file-notify-test02-events): Handle also `stopped' event.
18139         (file-notify-test04-file-validity): Add another test case.
18141 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
18143         Revert commit that broke 'make bootstrap'
18145         * lisp/custom.el (custom-declare-variable): Revert commit
18146         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
18147         even when pcase has not been defined yet, when doing bootstrapping.
18149 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
18151         Port recent inline functions fix to Standard C
18153         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
18154         All uses rewritten to define the function directly rather than to
18155         use a macro to define the function.  This conforms to Standard C,
18156         which does not allow stray semicolons at the top level.  I hope it
18157         also avoids the problems with TAGS.  Those macros, though clever,
18158         were pretty confusing anyway, and it wasn’t clear they were worth
18159         the aggravation even without the TAGS problem.
18161 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18163         * lisp/isearch.el: Make character-fold search the default again.
18165 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18167         * lisp/character-fold.el: Many improvements.
18168         (character-fold-search-forward, character-fold-search-backward):
18169         New command.
18170         (character-fold-to-regexp): Remove lax-whitespace hack.
18171         (character-fold-search): Remove variable.  Only isearch and
18172         query-replace use char-folding, and they both have their own
18173         variables to configure that.
18175 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18177         * lisp/isearch.el: Generalize definition of regexp-function toggles.
18178         (isearch-specify-regexp-function): New macro for specifying
18179         possible values of `isearch-regexp-function'.
18180         (isearch-toggle-character-fold, isearch-toggle-symbol)
18181         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
18183 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18185         * lisp/isearch.el (search-default-regexp-mode): New variable.
18186         (isearch-mode): Use it.
18188 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18190         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
18191         (search-slow-speed, search-upper-case)
18192         (search-nonincremental-instead, search-whitespace-regexp)
18193         (search-invisible, isearch-hide-immediately)
18194         (isearch-resume-in-command-history, search-ring-max)
18195         (regexp-search-ring-max, search-ring-update, search-highlight)
18196         (isearch-fail): Delete :group entries.
18198 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18200         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
18202 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18204         addpm.c: Silence some warnings.
18206         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
18207         to LPBYTE.
18208         (add_registry): Pass NULL to optional lpClass argument of
18209         RegCreateKeyEx, not an empty string.
18211 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18213         addpm.c: Do not add obsolete GTK libraries to the path.
18215         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
18216         (add_registry): Remove variables `size' and `gtk_key'.
18217         Do not add the GTK DLL directory to the library search path; it is
18218         confusing behavior (in particular, the same Emacs version with and
18219         without invoking addpm will use a different path), and the GTK image
18220         libraries are obsolete anyway.
18222 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18224         addpm.c: Replace existing registry entries, but do not create new ones
18226         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
18227         existing values from previous versions, but do not add new ones; the
18228         key could exist for other reasons unrelated to old Emacsen, like X-style
18229         resources, or to set some environment variables like HOME or LANG, and
18230         in that case we don't want to populate it with obsolete values.
18232 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18234         * nt/addpm.c (add_registry): Do not compute unused return value.
18236 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18238         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
18240         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
18241         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
18242         current behavior because REG_OPTION_NON_VOLATILE is defined to
18243         be 0L anyway, but that option is actually documented only for
18244         RegCreateKeyEx.
18246 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18248         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
18250 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
18252         Update frame title when redisplay scrolls selected window
18254         * src/xdisp.c (redisplay_window): Reconsider the frame's title
18255         when the mode-line of the frame's selected window needs to be
18256         updated.
18258 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
18260         Update frame title when scrolling the selected window
18262         * src/window.c (wset_update_mode_line): New function, sets either
18263         the window's update_mode_line flag or the global update_mode_lines
18264         variable.
18265         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
18266         (window_scroll_line_based): Call it instead of only setting the
18267         window's update_mode_line flag.
18269 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
18271         An even better fix for bug#21739
18273         * src/window.c (set_window_buffer): If the window is the frame's
18274         selected window, set update_mode_lines, not the window's
18275         update_mode_line flag.
18276         * src/buffer.c (Fkill_buffer): Undo last change.
18277         (set_update_modelines_for_buf): Function deleted.
18279 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18280             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
18282         Sync with soap-client repository, version 3.0.0
18284         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
18285         Bump version to 3.0.0.
18287         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
18289         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
18291         * lisp/net/soap-inspect.el: Shorten first line description.
18293         * lisp/net/soap-client.el: Make a small whitespace fix.
18295         * lisp/net/soap-inspect.el: Update copyright years.
18297         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
18298         first use in soap-encode-xs-element.
18300         * lisp/net/soap-client.el (soap-type-is-array?): new defun
18301         (soap-encode-xs-element): handle array elements in this function
18302         (soap-encode-xs-complex-type): flag error if asked to encode an
18303         array type, this is handled in `soap-encode-xs-element'
18305         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
18306         Do not print type for attribute group.
18308         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
18309         New function.
18310         (soap-inspect-xs-attribute-group): Likewise.
18312         * lisp/net/soap-inspect.el
18313         (soap-resolve-references-for-xs-attribute-group): Resolve
18314         references of attributes in an attribute group.
18316         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
18317         type directly, not through soap-wsdl-get.
18319         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
18320         nil if reference attribute is nil.
18322         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
18323         Convert XML schema attributes to xsd:string.
18325         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
18326         New function.
18327         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
18328         (soap-sample-value-for-xs-complex-type): Likewise.
18329         (soap-inspect-xs-attribute): New function.
18330         (soap-inspect-xs-simple-type): Print attributes.
18331         (soap-inspect-xs-complex-type): Likewise.
18333         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
18334         Resolve references for attributes.
18335         (soap-resolve-references-for-xs-complex-type): Likewise.
18337         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
18338         Rename from soap-xml-node-first-child.
18339         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
18340         (soap-xs-parse-simple-type): Likewise.
18342         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
18344         * lisp/net/soap-client.el (soap-invoke-internal): New function.
18345         (soap-invoke-async): Call soap-invoke-internal.
18346         (soap-invoke): Likewise.
18348         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
18349         url-retrieve callback is killed.
18351         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
18352         Rename function.
18353         (soap-parse-wsdl-phase-fetch-imports): Likewise.
18354         (soap-parse-wsdl-phase-parse-schema): Likewise.
18355         (soap-parse-wsdl-phase-fetch-schema): Likewise.
18356         (soap-parse-wsdl-phase-finish-parsing): Likewise.
18357         (soap-parse-wsdl): Update calls.
18359         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
18361         * lisp/net/soap-client.el (soap-invoke-async): New function.
18362         (soap-invoke): Reimplement using soap-invoke-async.
18364         * lisp/net/soap-client.el (soap-parse-server-response):
18365         Improve docstring.
18366         (soap-invoke): Inline call to soap-parse-server-response.
18368         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
18369         Prevent incorrect warning.
18371         * lisp/net/soap-client.el (soap-parse-server-response):
18372         Rename soap-process-url-response.  Destroy the mime part.
18373         (soap-invoke): Call soap-parse-server-response.
18375         * lisp/net/soap-client.el: Update copyright date.
18377         * lisp/net/soap-client.el: Fix checkdoc issues.
18379         * lisp/net/soap-client.el: Fix indentation and long lines.
18381         * lisp/net/soap-client.el (soap-time-format): Remove variable.
18382         (soap-encode-xs-basic-type): Simplify date-time format detection.
18383         (soap-decode-xs-basic-type): Remove soap-time-format support.
18385         * lisp/net/soap-client.el (soap-process-url-response): New function.
18386         (soap-fetch-xml-from-url): Call soap-process-url-response.
18387         (soap-parse-wsdl-phase-1): New function.
18388         (soap-parse-wsdl-phase-2): Likewise.
18389         (soap-parse-wsdl-phase-3): Likewise.
18390         (soap-parse-wsdl-phase-4): Likewise.
18391         (soap-parse-wsdl-phase-5): Likewise.
18392         (soap-parse-wsdl): Call phase functions.
18394         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
18395         Remove one-argument and call.
18397         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
18399         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
18400         (soap-parse-schema): Add wsdl argument.  Look up XML schema
18401         imports from wsdl.
18402         (soap-load-wsdl): Do not set soap-xmlschema-imports.
18403         (soap-parse-wsdl): Get XML schema imports from wsdl.
18405         * lisp/net/soap-client.el (soap-current-file): Remove variable.
18406         (soap-wsdl): Add current-file slot.
18407         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
18408         file from wsdl.
18409         (soap-fetch-xml-from-file): Likewise.
18410         (soap-fetch-xml): Likewise.
18411         (soap-load-wsdl): Always create wsdl object first.
18412         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
18414         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
18415         (soap-xs-parse-element): Set is-group slot.
18416         (soap-resolve-references-for-xs-element): Skip is-group elements.
18417         (soap-xs-complex-type): Add is-group slot.
18418         (soap-xs-parse-complex-type): Set is-group slot.
18419         (soap-xs-parse-sequence): Parse xsd:group elements.
18420         (soap-resolve-references-for-xs-complex-type): Inline elements
18421         from referenced xsd:group nodes.
18422         (soap-parse-schema): Parse xsd:group nodes.
18424         * lisp/net/soap-client.el (soap-invoke):
18425         Don't set url-http-version to 1.0.
18427         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
18428         Allow choice nodes to accept multiple values.
18430         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
18431         for extra header values.
18433         * lisp/net/soap-client.el (soap-well-known-xmlns):
18434         Add wsa and wsaw tags.
18435         (soap-operation): Add input-action and output-action slots.
18436         (soap-parse-operation): Parse wsaw:Action nodes.
18437         (soap-encode-body): Encode service-url for WS-Addressing.
18438         (soap-create-envelope): Likewise.
18439         (soap-invoke): Update soap-create-envelope call to provide
18440         service-url argument.
18442         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
18443         Support xsi:type override attribute.
18444         (soap-decode-array): Likewise.
18446         * lisp/net/soap-client.el (soap-parse-schema):
18447         Handle location attribute.
18449         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
18450         matched validation regexp.
18452         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
18453         Encode xsd:list nodes.
18454         (soap-decode-xs-simple-type): Decode xsd:list nodes.
18456         * lisp/net/soap-client.el (soap-get-candidate-elements):
18457         Fix reference handling.
18459         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
18460         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
18461         (soap-xs-add-list): New function.
18463         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
18464         expected, interpret nil as "false".
18466         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
18467         gYear, gMonthDay, gDay and gMonth.
18469         * lisp/net/soap-client.el (soap-time-format): New variable.
18470         (soap-encode-xs-basic-type): Handle dateTime, time, date,
18471         gYearMonth, gYear, gMonthDay, gDay and gMonth.
18472         (soap-decode-date-time): New function.
18473         (soap-decode-xs-basic-type): Use soap-decode-date-time.
18475         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
18476         after encoding.
18477         (soap-decode-xs-basic-type): Validate value before decoding.
18479         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
18480         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
18482         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
18483         instead of overwriting it.
18484         (soap-validate-xs-simple-type): Add union support.
18486         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
18487         to Emacs regexp using xsdre-translate.
18488         (soap-validate-xs-simple-type): Validate value against pattern.
18490         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
18491         inline simpleType nodes.
18492         (soap-decode-type): Handle union types.
18494         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
18495         attributes.
18497         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
18498         from soap-xs-attribute-group-consolidate, all callers updated
18499         (soap-get-xs-attributes): Rename from
18500         soap-xs-attributes-consolidate, all callers updated
18502         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
18503         (soap-xs-attribute-group): New type.
18504         (soap-xs-parse-attribute-group): New function.
18505         (soap-resolve-references-for-xs-attribute-group): Likewise.
18506         (soap-xs-add-extension): Handle attribute groups.
18507         (soap-resolve-references-for-xs-simple-type): Likewise.
18508         (soap-xs-parse-complex-type): Likewise.
18509         (soap-xs-parse-extension-or-restriction): Likewise.
18510         (soap-resolve-references-for-xs-complex-type): Likewise.
18511         (soap-xs-attribute-group-consolidate): New function.
18512         (soap-xs-attributes-consolidate): Handle attribute groups.
18513         (soap-parse-schema): Likewise.
18515         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
18516         Fix boolean encoding.
18518         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
18519         element names in warnings.
18521         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
18523         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
18524         Eliminate invalid warnings for choice types.
18526         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
18527         Also encode base type attributes.
18529         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
18530         warning.  Print e-name in warnings, or element if e-name is nil.
18532         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
18533         (soap-xs-parse-element): Set substitution-group.
18534         (soap-resolve-references-for-xs-element): Populate alternatives slot.
18535         (soap-get-candidate-elements): New function.
18536         (soap-encode-xs-complex-type): Iterate through all candidate elements.
18537         Handle types with nil type indicator.  Fix warning logic.
18539         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
18540         earlier in the file to prevent compiler warning.
18542         * lisp/net/soap-client.el (soap-node-optional): New function.
18543         (soap-node-multiple): Likewise.
18544         (soap-xs-parse-element): Call soap-node-optional and
18545         soap-node-multiple.
18546         (soap-xs-complex-type): Add optional? and multiple? slots.
18547         (soap-xml-get-children-fq): New function.
18548         (soap-xs-element-get-fq-name): Likewise.
18549         (soap-xs-complex-type-optional-p): Likewise.
18550         (soap-xs-complex-type-multiple-p): Likewise.
18551         (soap-xs-attributes-consolidate): Likewise.
18552         (soap-decode-xs-attributes): Likewise.
18553         (soap-decode-xs-complex-type): Decode types with nil type indicator.
18554         Support children that use local namespaces.  Decode attributes.
18555         Add type considerations to optional? and multiple? warnings.
18557         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
18558         Store parsed attributes.
18559         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
18561         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
18562         Don't add the xsi:type attribute (Exchange refuses requests which have
18563         this attribute).
18565         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
18566         correct compiler warnings about unused function arguments and
18567         local variables.
18569         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
18570         type indicator.
18571         (soap-parse-envelope): Handle response headers.
18572         (soap-parse-response): Likewise.  Only return non-nil decoded values.
18574         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
18575         Return validated value.
18577         * lisp/net/soap-client.el (soap-xs-parse-element)
18578         (soap-xs-parse-simple-type)
18579         (soap-xs-parse-complex-type)
18580         (soap-parse-message)
18581         (soap-parse-operation): Add the current namespace to the element
18582         being created.
18583         (soap-resolve-references-for-xs-element)
18584         (soap-resolve-references-for-xs-simple-type)
18585         (soap-resolve-references-for-xs-complex-type)
18586         (soap-resolve-references-for-operation): Resolve the namespace to
18587         the namespace tag.
18588         (soap-make-wsdl): specify a namespace tag when creating the xsd
18589         and soapenc namespaces
18590         (soap-wsdl-resolve-references): don't update namespace tags in
18591         elements here
18592         (soap-parse-port-type): bind the urn: to soap-target-xmlns
18593         (soap-encode-body): don't add nil namespace tags to
18594         soap-encoded-namespaces
18596         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
18597         for registering the soap-inspect method.  Make debbugs tests pass.
18598         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
18599         type name, also skip string only nodes when decoding a structure.
18600         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
18601         types too.
18602         (soap-encode-body): Grab the header value from the param table.
18604         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
18605         New function.
18606         (soap-encode-xs-element): Don't encode nil value unless needed.
18608         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
18609         (soap-parse-binding): Parse the message parts required in the body.
18610         (soap-encode-body): Encode only the parts that are declared to be
18611         part of the body.
18613         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
18614         when writing out the tag.
18615         (soap-encode-body): Remove hack that inserts the xmlns in the
18616         element attributes list.
18618         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
18619         (soap-xs-parse-attribute): Default slot is set from the XML
18620         "fixed" attribute.
18621         (soap-encode-xs-complex-type-attributes): Encode any attributes
18622         that have a default value.  Also, don't put the xsi:nil attribute
18623         when the complex type has no content anyway.
18625         * lisp/net/soap-client.el (soap-well-known-xmlns):
18626         Add the xml namespace.
18627         (soap-local-xmlns): Start with the xml namespace.
18628         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
18629         (soap-make-xs-basic-types): More xsd types added.
18630         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
18631         Handle "language", "time", "date", "nonNegativeInteger".
18632         (soap-resolve-references-for-xs-element): Don't signal an error if
18633         the element does not have a type.
18634         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
18635         added stum for xsd:list.
18636         (soap-xs-add-union): Call soap-l2fq on all union members.
18637         (soap-xs-add-extension): Call soap-l2fq on the base member.
18638         (soap-resolve-references-for-xs-simple-type): Don't signal an
18639         error if the simple type has no base.
18640         (soap-resolve-references-for-xs-simple-type): Bugfix, call
18641         soap-wsdl-get on each type of the base.
18643         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
18644         Referenced type can be eiher a simple type or a basic type.
18645         (soap-xs-add-restriction)
18646         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
18647         (soap-make-xs-basic-types)
18648         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
18649         Add support for more XMLSchema basic types.
18650         (soap-current-file, soap-xmlschema-imports): New defvars.
18651         (soap-parse-schema): Add locations from xsd:import tags to
18652         `soap-xmlschema-imports'.
18653         (soap-wsdl): Make destructor private.
18654         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
18655         (soap-wsdl-add-alias): Check if we try to replace aliases.
18656         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
18657         (soap-fetch-xml): New defuns.
18658         (soap-load-wsdl): Update to load the WSDL from either a file or
18659         an url.
18660         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
18661         (soap-parse-wsdl): Process wsdl:import tags and imports from
18662         `soap-xmlschema-imports'.
18663         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
18664         symbol-name.
18665         (soap-l2fq): Make the name part always a string.
18666         (soap-name-p): New defun, used for name tests.
18668         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
18669         Supply sample values for choice types with a special tag.
18670         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
18671         Handle anonymous elements correctly.
18672         (soap-encode-value): Accept nodes that have no namespace tag.
18674         * lisp/net/soap-client.el (soap-invoke): Encode the string for
18675         `url-request-data' as UTF-8.  Fixes issue 16.
18677 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
18679         Update the new icon
18681         Move the E slightly to the right in the circle.
18683         * etc/images/icons/hicolor/128x128/apps/emacs.png:
18684         * etc/images/icons/hicolor/16x16/apps/emacs.png:
18685         * etc/images/icons/hicolor/24x24/apps/emacs.png:
18686         * etc/images/icons/hicolor/32x32/apps/emacs.png:
18687         * etc/images/icons/hicolor/48x48/apps/emacs.png:
18688         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
18689         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
18690         * nt/icons/emacs.ico: New icom update.
18692 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
18694         Avoid missing inline functions from lisp.h in TAGS
18696         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
18697         need to end each invocation with a semi-colon.
18698         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
18699         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
18700         inline functions defined immediately after each invocation, and
18701         also avoid tagging every invocation of these macros.
18703 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
18705         A better fix for bug#21739
18707         * src/buffer.c (set_update_modelines_for_buf): New function.
18708         (Fkill_buffer): Use it to set the global variable
18709         update_mode_lines if the killed buffer was displayed in some
18710         window.  Don't set windows_or_buffers_changed.  This is a better
18711         fix for bug#21739 than the previous fix, since it will cause only
18712         redisplay of mode lines, not of entire windows, but will still
18713         catch attention of x_consider_frame_title in xdisp.c, which
18714         redraws the frame title.
18716 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
18718         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
18719         tar.bz2 and tar.xz archives.
18721 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
18723         Fix infloop in redisplay introduced by a recent change
18725         * src/xdisp.c (redisplay_internal): Avoid inflooping when
18726         redisplaying the selected window sets the selected frame's
18727         redisplay flag.  (Bug#21745)
18729 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
18731         * lisp/emacs-lisp/thunk.el: Better documentation.
18733 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
18735         Replace the old icon for Windows and Mac OSX
18737         * nt/icons/emacs.ico:
18738         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
18739         Use the new icons.
18741 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
18743         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
18744         `load-path' should contain only directory names.
18746 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
18748         New library thunk.el
18750         thunk.el is extracted from stream.el in ELPA, with additional tests.
18752         * lisp/emacs-lisp/thunk.el: New file.
18753         * test/automated/thunk-tests.el: New file.
18754         * etc/NEWS: Add information about thunk.el
18756 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
18758         Fix bug#21669
18760         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
18761         calling low-level functions.
18763         * test/automated/file-notify-tests.el (file-notify--test-timeout):
18764         Decrase to 6 seconds for remote directories.
18765         (file-notify-test02-events): Expect different number of
18766         `attribute-changed' events for the local and remote cases.  Apply
18767         short delays between the operations, in order to receive all
18768         events in the remote case.  Combine `attribute-change' tests.
18769         (Bug#21669)
18771 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
18773         Decode the HTML source when displaying it in EWW
18775         * lisp/net/eww.el (eww-view-source): Decode the HTML source
18776         according to its headers.
18778 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
18780         New default icon
18782         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
18783         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
18784         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
18785         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
18786         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
18787         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
18788         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
18789         Move the old logo files to emacs23.*.
18790         * etc/images/icons/hicolor/128x128/apps/emacs.png:
18791         * etc/images/icons/hicolor/16x16/apps/emacs.png:
18792         * etc/images/icons/hicolor/24x24/apps/emacs.png:
18793         * etc/images/icons/hicolor/32x32/apps/emacs.png:
18794         * etc/images/icons/hicolor/48x48/apps/emacs.png:
18795         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
18796         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
18797         New files.
18798         * etc/images/icons/README: Update the copyright information.
18800 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
18802         Fix redisplay of frame title when current buffer is killed
18804         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
18805         non-zero value, to redisplay more than just the affected windows.
18806         (Bug#21739)
18808 2015-10-23  Anders Lindgren  <andlind@gmail.com>
18810         NextStep maximization and NSTRACE rewrite
18812         Full-height, full-width, and maximized windows now cover the
18813         entire screen (except the menu bar), including the part where the
18814         system dock is placed.  The system zoom animation is no longer
18815         used.
18817         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
18818         original size.
18820         * src/nsterm.m (ns_menu_bar_height): New function, return height of
18821         the menu bar, or 0 when it's hidden.
18822         (constrain_frame_rect): New function for constraining a frame.
18823         (ns_constrain_all_frames): Set frame size explicitly rather than
18824         relying on the system doing it for us by writing back the current
18825         frame size.
18826         (windowWillUseStandardFrame): Register non-maximized width or
18827         height as new user size.  When entering full width or height,
18828         the other size component is taken from the user size.
18829         (fullscreenState): New method for accessing the fullscreen state.
18830         (constrainFrameRect): Restrict frame to be placed under the menu bar,
18831         if present.  The old version, sometimes, restricted the height of a
18832         frame to the screen, this version never does this.
18833         (zoom): Perform zoom by setting the frame to the full size of the
18834         screen (minus the menu bar).  The default system function, with the
18835         zoom animation, is no longer used, as the final frame size doesn't
18836         cover the entire screen.
18838         Rework how to constrain resizing to the character grid.  The old
18839         system used "resizeIncrements" in NSWindows.  However, once a frame
18840         was resized so that it was not aligned to the text grid, it
18841         remained unaligned even after a resize.  In addition, it conflicted
18842         when resizing a fullheight window.
18844         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
18845         unless when pixelwise frame resizing is enabled.
18846         (updateFrameSize, initFrameFromEmacs)
18847         (toggleFullScreen, handleFS): Don't set resizeIncrements.
18849         Redesign the NS trace system.  The call structure is represented
18850         using indentations and vertical lines.  The NSTRACE macro accepts
18851         printf-style arguments.  New macros for printing various
18852         information.
18854         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
18855         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
18856         block (typically a function), accept printf-style arguments.
18857         (NSTRACE_MSG): Macro for extra information, accepts
18858         printf-style arguments.
18859         (NSTRACE_what): Macros for printing various types.
18860         (NSTRACE_FMT_what): Macro with printf format string snippets.
18861         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
18862         corresponds to NSTRACE_FMT_what.
18863         (NSTRACE_RETURN): Macro to print return value, accept
18864         printf-style arguments.
18865         (NSTRACE_RETURN_what): Macros to print return value for
18866         various types.
18868         * src/nsterm.m: Remove old NSTRACE macro
18869         * src/nsterm.m (nstrace_num): Trace counter.
18870         (nstrace_depth): Current call depth.
18871         (nstrace_leave): NSTRACE support function, called when the
18872         local variable "nstrace_enabled" goes out of scope using the
18873         "cleanup" extension.
18874         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
18875         (constrain_frame_rect, ns_constrain_all_frames)
18876         (ns_update_auto_hide_menu_bar, ns_update_begin)
18877         (ns_update_window_begin, update_window_end, ns_update_end)
18878         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
18879         (ns_frame_rehighlight, x_make_frame_visible)
18880         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
18881         (x_destroy_window, x_set_offset, x_set_window_size)
18882         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
18883         (ns_defined_color, frame_set_mouse_pixel_position)
18884         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
18885         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
18886         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
18887         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
18888         (dumpcursor, ns_draw_vertical_window_border)
18889         (ns_draw_window_divider, ns_draw_relief)
18890         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
18891         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
18892         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
18893         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
18894         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
18895         (ns_create_terminal, ns_term_init, sendEvent)
18896         (applicationDidFinishLaunching, applicationDidBecomeActive)
18897         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
18898         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
18899         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
18900         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
18901         (mouse_autoselect_window, in_window, mouseDragged)
18902         (rightMouseDragged, otherMouseDragged, windowShouldClose)
18903         (updateFrameSize, windowWillResize, windowDidResize)
18904         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
18905         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
18906         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
18907         (windowDidEnterFullScreen, windowWillExitFullScreen)
18908         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
18909         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
18910         (draggingEntered, performDragOperation, validRequestorForSendType)
18911         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
18912         (EmacsScroller_initFrame, EmacsScroller_setFrame)
18913         (EmacsScroller_dealloc, condemn, reprieve, judge)
18914         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
18915         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
18917         * src/nsfns.m: Remove old NSTRACE macro
18918         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
18919         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
18920         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
18922         * src/nsimage.m: Remove old NSTRACE macro
18923         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
18924         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
18926         * src/nsmenu.m: Remove old NSTRACE macro
18927         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
18928         Use new trace system.
18930 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
18932         No need to use eval-and-compile
18934         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
18935         autoload epg functions.
18937 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
18939         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
18941         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
18942         epg-context-set-passphrase-callback, epg-decrypt-string, and
18943         epg-encrypt-string; require epg when compiling for the setf-method
18944         for epg-context-armor. (bug#21724)
18946 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
18948         Include file cleanup for w32 files in src directory
18950         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
18951         fontset.h, blockinput.h.
18952         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
18953         charset.h, fontset.h.
18954         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
18955         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
18956         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
18957         in an ifdef-ed away block.
18958         Include fcntl.h for CYGWIN.
18959         (set_frame_param): Remove unused function.
18960         * src/w32select.c: Don't include charset.h and composite.h.
18961         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
18962         due to pointer signedness mismatches.
18963         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
18964         due to pointer signedness mismatches.
18965         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
18966         process.h, dispextern.h.
18967         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
18968         (Fw32_application_type): Avoid compiler warnings due to pointer
18969         signedness mismatches.
18970         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
18971         character.h, charset.h, dispextern.h.
18972         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
18973         to pointer signedness mismatches.
18974         * src/w32inevt.c: Don't include dispextern.h, window.h,
18975         termhooks.h, w32heap.h.
18976         * src/w32font.c: Don't include dispextern.h, character.h,
18977         charset.h, fontset.h, font.h.
18978         (intern_font_name, add_font_entity_to_list)
18979         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
18980         (list_all_matching_fonts): Avoid compiler warnings due to pointer
18981         signedness mismatches.
18982         * src/w32fns.c: Don't include character.h, intervals.h,
18983         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
18984         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
18985         (w32_color_map_lookup, add_system_logical_colors_to_map)
18986         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
18987         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
18988         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
18989         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
18990         compiler warnings, mainly due to pointer signedness mismatches.
18991         (unwind_create_frame_1): Remove unused function.
18992         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
18993         window.h, termhooks.h, dispextern.h.
18994         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
18995         signedness mismatch.
18996         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
18997         w32heap.h.
18999 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
19001         Improve doc-view wrt. auto-revert-mode
19003         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
19004         is corrupted (bug#21729).
19005         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
19007 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
19009         Describe dired-do-compress-to in the manual
19011         * etc/NEWS: Update.
19013         * lisp/dired-aux.el: Fix typo.
19015         * doc/emacs/dired.texi: Add entry.
19017 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
19019         Further fix for proper locale handling in tramp-gvfs.el
19021         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
19022         Just suppress LC_MESSAGES locale category settings.
19024 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19026         New lispref section “Security Considerations”
19028         This attempts to document some of the issues recently discussed
19029         on emacs-devel, and to indicate other such issues.  The section
19030         could be a lot longer.
19031         * doc/lispref/os.texi (Security Considerations):
19032         New node.
19033         * doc/lispref/elisp.texi (Top):
19034         * doc/lispref/processes.texi (Shell Arguments):
19035         * lisp/subr.el (shell-quote-argument):
19036         * src/callproc.c (syms_of_callproc):
19037         Reference it.
19039 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19041         Merge from gnulib
19043         This incorporates:
19044         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
19045         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
19046         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
19047         Copy from gnulib.
19049 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
19051         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
19052         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
19054 2015-10-21  Ken Brown  <kbrown@cornell.edu>
19056         Further include-file cleanup
19058         * src/sheap.c: Include stdlib.h.
19059         * src/unexcw.c: Include string.h.
19061 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
19063         Fix logic in 'server-kill-emacs-query-function'
19065         * lisp/server.el (server-kill-emacs-query-function): Correct the
19066         logic that controls whether the user is asked for confirmation.
19067         (Bug#21723)
19069 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19071         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
19072         (isearch--lax-regexp-function-p): New function.
19074 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19076         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
19077         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
19078         around `isearch-regexp-function'.
19080 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19082         * lisp/isearch.el: Rename word search to regexp-function search.
19083         `isearch-word' went well beyond its original purpose, and the name
19084         no longer makes sense.  It is now called
19085         `isearch-regexp-function', and its value should always be a function
19086         that converts a string to a regexp (though setting it to t is still
19087         supported for now).
19088         (isearch-word): Make obsolete.
19089         (isearch-regexp-function): New variable.
19090         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
19091         (with-isearch-suspended, isearch-toggle-regexp)
19092         (isearch-toggle-word, isearch-toggle-symbol)
19093         (isearch-toggle-character-fold, isearch-query-replace)
19094         (isearch-occur, isearch-highlight-regexp)
19095         (isearch-search-and-update, isearch-message-prefix)
19096         (isearch-search-fun-default, isearch-search)
19097         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
19098         Use it.
19099         (isearch-lazy-highlight-regexp-function): New var.
19100         (isearch-lazy-highlight-word): Make obsolete.
19101         (isearch--describe-regexp-mode): New function.
19102         (isearch--describe-word-mode): Make obsolete.
19104         * lisp/info.el (Info-isearch-search):
19105         * lisp/replace.el (replace-search, replace-highlight):
19106         * lisp/obsolete/longlines.el (longlines-search-function):
19107         * lisp/hexl.el (hexl-isearch-search-function):
19108         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
19109         Use the new var.
19111 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
19113         Add dired-do-compress-to command bound to "c"
19115         * lisp/dired-aux.el (dired-shell-command): Use the caller's
19116           `default-directory', return the result of `process-file'.
19117         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
19118         used by default.
19119         (dired-compress-files-alist): New defvar.
19120         (dired-do-compress-to): New command.
19122         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
19123         (dired-do-compress-to): Add an autoload entry.
19125         * etc/NEWS: Add two entries.
19127 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
19129         Make RefTeX work with LaTeX subfiles package
19131         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
19132         document class argument as master file for referencing purposes.
19134 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
19136         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
19138 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
19140         Include-file cleanup for src directory
19142         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
19143         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
19144         but does not include it directly.  As a general rule, a source
19145         file should include foo.h if it needs the interfaces that foo.h
19146         defines.
19147         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
19148         systime.h.
19149         * src/atimer.c: Don’t include blockinput.h.
19150         * src/buffer.c: Include coding.h, systime.h.  Don’t include
19151         keyboard.h, coding.h.
19152         * src/callint.c: Don’t include commands.h, keymap.h.
19153         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
19154         systty.h, termhooks.h.
19155         * src/casetab.c: Don’t include character.h.
19156         * src/category.c: Don’t include charset.h, keymap.h.
19157         * src/ccl.h: Don’t include character.h.
19158         * src/character.c: Don’t include charset.h.
19159         * src/charset.c: Don’t include disptab.h.
19160         * src/chartab.c: Don’t include ccl.h.
19161         * src/cm.c: Don’t include frame.h, termhooks.h.
19162         * src/cmds.c: Don’t include window.h, dispextern.h.
19163         * src/coding.c: Don’t include window.h, frame.h.
19164         * src/composite.c: Include composite.h.  Don’t include window.h,
19165         font.h.
19166         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
19167         * src/dbusbind.c: Don’t include frame.h.
19168         * src/decompress.c: Don’t include character.h.
19169         * src/dired.c: Don’t include character.h, commands.h, charset.h.
19170         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
19171         process.h, timespec.h.  Include systime.h.
19172         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
19173         * src/editfns.c: Include composite.h.  Don’t include frame.h.
19174         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
19175         commands.h, systty.h..
19176         * src/fileio.c: Don’t include intervals.h, dispextern.h.
19177         Include composite.h.
19178         * src/filelock.c: Don’t include character.h, systime.h.
19179         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
19180         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
19181         * src/font.c: Include termhooks.h.
19182         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
19183         struct composition_it, struct face, struct glyph_string.
19184         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
19185         intervals.h, window.h, termhooks.h.
19186         * src/frame.c: Don’t include character.h, commands.h, font.h.
19187         * src/frame.h: Don’t include dispextern.h.
19188         * src/fringe.c: Don’t include character.h.
19189         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
19190         character.h, charset.h, fontset.h.
19191         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
19192         fontset.h.
19193         * src/ftxfont.c: Don’t include dispextern.h, character.h,
19194         charset.h, fontset.h.
19195         * src/gfilenotify.c: Don’t include frame.h, process.h.
19196         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
19197         Don’t include syssignal.h, buffer.h, charset.h, font.h.
19198         * src/gtkutil.h: Don’t include frame.h.
19199         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
19200         Don’t include character.h.
19201         * src/indent.c: Don’t include keyboard.h, termchar.h.
19202         * src/inotify.c: Don’t include character.h, frame.h.
19203         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
19204         * src/intervals.c: Don’t include character.h, keyboard.h.
19205         * src/intervals.h: Don’t include dispextern.h, composite.h.
19206         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
19207         Include coding.h.
19208         * src/keyboard.h: Don’t incldue systime.h.
19209         * src/keymap.c: Don’t include charset.h, frame.h.
19210         * src/lread.c: Include dispextern.h and systime.h.
19211         Don’t include frame.h.  Include systime.h.
19212         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
19213         * src/menu.c: Include character.h, coding.h.  Don’t include
19214         dispextern.h.
19215         * src/menu.h: Don’t include systime.h.
19216         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
19217         intervals.h, termhooks.h.
19218         * src/print.c: Include coding.h.  Don’t include keyboard.h,
19219         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
19220         Add forward decl of struct terminal.
19221         * src/process.c: Don’t include termhooks.h, commands.h,
19222         dispextern.h, composite.h.
19223         * src/region-cache.c: Don’t include character.h.
19224         * src/scroll.c: Don’t include keyboard.h, window.h.
19225         * src/search.c: Don’t include category.h, commands.h.
19226         * src/sound.c: Don’t include dispextern.h.
19227         * src/syntax.c: Don’t include command.h, keymap.h.
19228         * src/sysdep.c: Don’t include window.h, dispextern.h.
19229         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
19230         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
19231         * src/terminal.c: Include character.h.
19232         Don’t include charset.h, coding.h.
19233         * src/textprop.c: Don’t include character.h.
19234         * src/undo.c: Don’t include character.h, commands.h, window.h.
19235         * src/unexsol.c: Don’t include character.h, charset.h.
19236         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
19237         window.h, dispextern.h, blockinput.h, character.h, font.h.
19238         * src/widgetprv.h: Don’t include widget.h.
19239         * src/window.c: Don’t include character.h, menu.h, intervals.h.
19240         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
19241         macros.h, process.h.
19242         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
19243         intervals.h.
19244         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
19245         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
19246         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
19247         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
19248         * src/xgselect.c: Don’t include timespec.h, frame.h.
19249         Include systime.h.
19250         * src/xgselect.h: Don’t include time.h.
19251         Use a forward decl to struct timespec instead.
19252         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
19253         dispextern.h.  Include systime.h.
19254         * src/xml.c: Don’t include character.h.
19255         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
19256         * src/xselect.c: Don’t include dispextern.h, character.h,
19257         buffer.h, process.h.
19258         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
19259         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
19260         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
19262 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
19264         (/ N) now returns the reciprocal of N
19266         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
19267         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
19268         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
19269         (color-xyz-to-srgb, color-xyz-to-lab):
19270         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
19271         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
19272         (shr-color-hsl-to-rgb-fractions):
19273         Exploit the change to simplify the code a bit.
19274         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
19275         Don’t complain about single-argument calls to ‘/’.
19276         * src/data.c (arith_driver, float_arith_driver):
19277         Implement the change.
19279 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
19281         Call vc-dir-refresh after stash operations
19283         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
19284         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
19286         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
19287         since it can be abbreviated (as returned by vc-find-root).
19289 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
19291         * lisp/vc/vc-svn.el:
19292         * lisp/vc/vc-mtn.el:
19293         * lisp/vc/vc-hg.el:
19294         * lisp/vc/vc-cvs.el:
19295         * lisp/vc/vc-git.el:
19296         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
19297         Its usages have been replaced with vc-run-delayed.
19299 2015-10-20  Dima Kogan  <dima@secretsauce.net>
19301         Fix memory leak in fontset handling
19303         * src/font.c (copy_font_spec): Make a deep copy of the input
19304         argument FONT.  (Bug#21651)
19306 2015-10-20  Michael Sperber  <mike@xemacs.org>
19308         * lisp/gnus/mailcap.el (mailcap-mime-data):
19309         Conditonalize `doc-view-mode', which does not exist on XEmacs.
19311 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
19313         Update the way directories are compressed
19315         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
19316         for *.tar.gz decompression to use a pipe.
19317         Add an entry for the default directory compression (to *.tar.g).
19318         (dired-compress-file): Update.
19320         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
19322 2015-10-20  Michael Sperber  <mike@xemacs.org>
19324         Unbreak `group' option for `mail-sources'
19326         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
19327         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
19328         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
19330 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
19332         New function seq-position
19334         * lisp/emacs-lisp/seq.el (seq-position): New function.
19335         * test/automated/seq-tests.el: New tests for seq-position.
19336         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
19338 2015-10-19  Ken Brown  <kbrown@cornell.edu>
19340         Enable --with-wide-int build on 32-bit Cygwin
19342         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
19343         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
19345 2015-10-19  Glenn Morris  <rgm@gnu.org>
19347         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
19349 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
19351         Resurrect image loading under auto-image-file-mode
19353         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
19354         'openp' specially.  This special case was lost in the changes on
19355         2015-08-18.  (Bug#21685)
19357 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
19359         Fix return value of 'set-file-extended-attributes'
19361         * lisp/files.el (set-file-extended-attributes): Return non-nil
19362         when setting either ACLs or SELinux context succeeds.  Document
19363         the return value.  (Bug#21699)
19365         * doc/lispref/files.texi (Changing Files): Document the return
19366         value of set-file-extended-attributes.
19368 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
19370         Improve documentation of functions that change files
19372         * doc/lispref/files.texi (Changing Files): Document that these
19373         functions signal an error on failure.
19375 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
19377         Fix doc string of 'shell-quote-argument'
19379         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
19381 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
19383         Some minor Tramp changes
19385         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
19387         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
19388         Expand `tramp-auto-save-directory'.
19390 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
19392         Minor edits in Tramp
19394         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
19395         Declare it.
19397         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
19398         Remove declaration.
19400 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
19402         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
19404 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
19406         Avoid crashes when redisplayng a window changes faces or fonts
19408         * src/xdisp.c (redisplay_internal): If redisplaying the selected
19409         window or one of the frames turns on the frame's 'redisplay' flag,
19410         redisplay again.  (Bug#21428)
19412         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
19414 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
19416         Solve timimg issues in file-notify-tests.el
19418         * test/automated/file-notify-tests.el (file-notify-test02-events):
19419         Rectify `attribute-change' tests.  There are timing issues with
19420         gfilenotify.  (Bug#21669)
19422 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
19424         Fix quoting of data within htmlfontify doc
19426         * doc/misc/htmlfontify.texi (Data Structures, Customization):
19427         Fix quoting of data structures.  A Lisp quote is needed only
19428         when data appears within Lisp code.
19430 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
19432         * lisp/emacs-lisp/package.el: Reload archive-contents if
19433         priorities change.
19434         (package--old-archive-priorities): New variable.
19435         (package-read-all-archive-contents, package-menu--refresh): Use it
19436         to decide when the `package-archive-contents' needs to be read
19437         again.
19439 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
19441         Make src headers idempotent and standalone
19443         Redo src/*.h so that each include file is idempotent (that is, can
19444         be included multiple times with the latter inclusions having no
19445         effect) and standalone (that is, can be included by itself,
19446         with no include file other than config.h needed as a prerequisite).
19447         This is standard practice in GNU programs nowadays.
19448         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
19449         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
19450         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
19451         * src/regex.h [emacs]:
19452         * src/syntax.h, src/systty.h, src/termhooks.h:
19453         Include lisp.h, for Lisp_Object.
19454         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
19455         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
19456         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
19457         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
19458         * src/termopts.h, src/tparam.h, src/unexec.h:
19459         Protect against multiple inclusion.
19460         * src/buffer.h: Include character.h, for STRING_CHAR.
19461         * src/emacsgtkfixed.h (struct frame):
19462         * src/fontset.h (struct face):
19463         * src/region-cache.h (struct buffer):
19464         * src/termhooks.h (struct glyph):
19465         * src/xsettings.h (struct x_display_info):
19466         Add possibly-forward decl.
19467         * src/syntax.h: Include buffer.h, for BVAR.
19468         * src/sysselect.h: Include lisp.h, for eassume.
19469         * src/termchar.h: Include <stdio.h>, for FILE.
19470         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
19471         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
19473 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
19475         Handle symlink targets containing spaces in tramp-gvfs.el
19477         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
19478         Handle symlink targets containing spaces.
19480 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
19482         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
19484         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
19485         same reason that `load-path' shouldn't.  Setting it via the customize
19486         interface is a trap for the user.
19488         Installed themes commonly add themselves to this variable, which means
19489         its value is not fit for being saved (it will permanently remember dirs
19490         that don't exist anymore).
19492         This is aggravated by the fact that Emacs always applies the `user'
19493         theme on top of any theme that's loaded, since this will apply the old
19494         variable value and remove any new directories that had been recently
19495         added by themes themselves.
19497         Not to mention, we already have `custom-theme-directory', which is safe
19498         to customize.
19500 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
19502         * lisp/mpc.el: Rename the new toggling commands.
19503         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
19504         (mpc-toggle-shuffle): Add "-toggle" in the name.
19506 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
19508         Improve the doc string of 'completion-boundaries'
19510         * lisp/minibuffer.el (completion-boundaries): Rename the argument
19511         TABLE to COLLECTION, for consistency with other high-level
19512         completion functions.  Document how COLLECTION is called if it
19513         is a function.  (Bug#21644)
19515 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
19517         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
19519 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
19521         Make dired-do-compress work for *.zip files
19523         * lisp/dired-aux.el (dired-check-process): Transform the top-level
19524           comment into a docstring.
19525         (dired-shell-command): New command.  This mirrors
19526         `dired-check-process', but is more user-friendly for passing
19527         arguments.
19528         (dired-compress-file-suffixes): Allow to specify the command switches
19529         along with input (%i) and output (%o) inside the PROGRAM part.
19530         Add an entry for *.zip files, and update the entry for *.tar.gz files
19531         to the new style.  Update the docstring.
19532         (dired-compress-file): When PROGRAM matches %i or %o, use the new
19533         logic.
19534         (dired-update-file-line): Avoid an error when at end of buffer.
19536         Fixes bug#21637.
19538 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
19540         Minor improvement in documentation of internals
19542         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
19544 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
19546         Improve documentation of COLLECTION in completion functions
19548         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
19549         cross-reference to "Programmed Completion".
19551         * src/minibuf.c (Fcompleting_read): Improve the doc string.
19552         (Bug#21644)
19554 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
19556         Add more release info to etc/HISTORY
19558         * etc/HISTORY: Add more release information about 19.x and 20.x
19559         versions.
19561 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
19563         New file etc/HISTORY
19565         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
19566         * etc/HISTORY: New file.
19567         * etc/NEWS: Mention it.
19569 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
19571         js-mode: Don't misindent generator methods
19573         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
19574         generator methods from multiplication operator
19575         (https://github.com/mooz/js2-mode/issues/275).
19577 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
19579         Fix animation timeout delay calculation
19581         * lisp/image.el (image-animate-timeout):
19582         Don’t assume speed is floating-point.
19584 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
19586         Add commands for controlling MPD modes
19588         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
19589         (mpc-cmd-single): New functions.
19590         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
19591         (mpc-mode-menu): Add new commands as menu items.
19593 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
19595         Refer to `(elisp)Basic Completion' in completing-read docstring
19597         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
19598         Completion' in the docstring (bug#21644).
19600 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
19602         * lisp/mpc.el (mpc-format): Always push form to pred
19604 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19606         Spelling fixes
19608         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
19609         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
19610         Fix misspelling of nonexistent file name.
19612 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
19614         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
19616 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
19618         Some editing fixes in Tramp
19620         * lisp/net/tramp-gvfs.el:
19621         * doc/misc/tramp.texi: "customer option" -> "custom option".
19623         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
19625 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
19627         Use proper localization in tramp-gvfs.el
19629         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
19630         Suppress localized settings in order to proper parse gfvs output.
19632 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
19634         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
19635         Quote argument in proper order.  (Bug#21562)
19637 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
19639         Fix typos in docstrings
19641         * lisp/emacs-lisp/map.el:
19642         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
19643           macros.
19645 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
19647         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
19649 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
19651         Make dired-jump work with tar-subfile-mode
19653         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
19654           emitting an error, switch to `tar-superior-buffer'.
19656 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
19658         * .gitignore: Add build-aux/ar-lib.
19660 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
19662         Better docstrings in seq.el and map.el
19664         * lisp/emacs-lisp/map.el:
19665         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
19667 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19669         Merge from gnulib
19671         This incorporates:
19672         2015-10-13 binary-io, u64, unistd: port to strict C
19673         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
19674         2015-09-25 c-ctype: port better to z/OS EBCDIC
19675         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
19676         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
19677         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
19678         Copy from gnulib.
19680 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19682         Take XPNTR private
19684         * src/alloc.c (PURE_POINTER_P): Remove.
19685         All uses replaced with PURE_P.
19686         (XPNTR_OR_SYMBOL_OFFSET): New function.
19687         (XPNTR): Move here from lisp.h.
19688         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
19689         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
19690         Remove unnecessary cast.
19691         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
19692         to avoid an unnecessary runtime test for symbols.
19693         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
19694         Only alloc.c needs XPNTR now.
19696 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
19698         Add MPC play/pause command
19700         * lisp/mpc.el (mpc-toggle-play): New command.
19701         (mpc-mode-map): Bind it to "s".
19702         (mpc-mode-menu): Add corresponding menu item.
19704 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
19706         Add bindings and menu items for prev and next tracks
19708         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
19709         "<" to mpc-prev.
19710         (mpc-mode-menu): Add corresponding menu items
19712 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
19714         Reduce face-related consing during frame creation.
19716         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
19717         attribute list once.
19718         (face-spec-reset-face): Use it instead of building the list.
19720 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
19722         Do process ConfigureNotify events indicating size changes.
19724         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
19725         events don't have the same size, process each one.
19727 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
19729         Derive mpc-mode from special-mode
19731         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
19732         (mpc-mode): Derive from special mode.
19733         (mpc-songs-mode-map): Don't set parent keymap.
19735 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
19737         Fix error messages for when covers are not found.
19739         The last change to mpc-format let the binding to file call
19740         mpc-file-local-copy with nil argument.  Instead, employ if-let here
19741         so nil bindings don't result in needless computation and errors.
19742         * lisp/mpc.el: Require 'subr-x at compile time.
19743         * lisp/mpc.el (mpc-format): Use if-let.
19745 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
19747         Make dired-do-compress work for *.tar.gz files
19749         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
19750           "tar -zxvf" to *.tar.gz; update docstring.
19752         (dired-compress-file): Allow to specify switches after the command in
19753         `dired-compress-file-suffixes'.
19755 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
19757         Make dired-do-compress work for directories
19759         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
19760           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
19761         Also convert the top comment into a docstring.
19763 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19765         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
19767         ... since it might come straight from the memoizing table.
19769 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
19771         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
19773 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
19775         Use special-mode in eww list modes
19777         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
19778         (eww-buffers-mode): Derive from special-mode and remove redundant
19779         setting of buffer-read-only.
19780         (eww-mode-map): Remove redundant keymap parent setting.
19781         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
19782         Remove redundant keymap suppressions and mappings.
19784 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
19786         Allow setting frame pixel sizes from frame parameters (Bug#21415)
19788         Also fix some misfeatures in frame (re-)sizing code, add more
19789         debugging information and remove some dead code.
19791         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
19792         parameter names when setting `frame-size-history'.
19793         (frame--size-history): New function.
19795         * src/frame.c (frame_inhibit_resize): If frame has not been made
19796         yet, return t if inhibit_horizontal_resize or
19797         inhibit_vertical_resize bit have been set.
19798         (adjust_frame_size): Simplify.
19799         (make_frame): Initialize inhibit_horizontal_resize,
19800         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
19801         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
19802         inhibit_vertical_resize slots.
19803         (x_set_frame_parameters): Handle `text-pixels' specification for
19804         width and height parameters.  Don't consider new_height or
19805         new_width changes.  Call adjust_frame_size instead of
19806         Fset_frame_size.
19807         (x_figure_window_size): Two new arguments x_width and y_width
19808         returning frame's figures width and height.  Calculate tool bar
19809         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
19810         Handle `text-pixels' specification for width and height
19811         parameters.
19812         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
19813         (Qx_set_window_size_1, Qx_set_window_size_2)
19814         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
19815         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
19816         (Qfree_frame_menubar_2): New symbols.
19817         * src/frame.h (structure frame): New booleans
19818         tool_bar_redisplayed, tool_bar_resized,
19819         inhibit_horizontal_resize, inhibit_vertical_resize.
19820         (x_figure_window_size): Update external declaration.
19821         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
19822         calling gtk_window_resize.
19823         (update_frame_tool_bar): Make inhibiting of frame resizing more
19824         discriminative.  Set tool_bar_resized bit.
19825         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
19826         resizing more discriminative.  Call adjust_frame_size instead of
19827         x_set_window_size.
19828         (Fx_create_frame): Handle x_width and x_height if
19829         set by x_figure_window_size.
19830         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
19831         subtract 3 from tool bar height.
19832         (x_set_window_size): Add frame_size_history_add call.
19833         (x_new_font): Call adjust_frame_size instead of
19834         x_set_window_size.
19835         * src/w32fns.c (x_change_tool_bar_height): Reset
19836         tool_bar_redisplayed and tool_bar_resized bits when adding tool
19837         bar.  Make inhibiting of frame resizing more discriminative.
19838         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
19839         (Fx_create_frame): Handle x_width and x_height if set by
19840         x_figure_window_size.  Set size hints before adjusting frame size.
19841         (x_create_tip_frame): Adjust x_figure_window_size call.
19842         * src/w32term.c (x_set_window_size): Add frame_size_history_add
19843         call.
19844         * src/widget.c (set_frame_size): Remove dead code.  Add
19845         frame_size_history_add call.  When frame_resize_pixelwise is t
19846         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
19847         pixel_width and pixel_height.
19848         (update_various_frame_slots): Remove dead code.
19849         (EmacsFrameResize): Add more information in
19850         frame_size_history_add call.
19851         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
19852         is not set.
19853         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
19854         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
19855         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
19856         tool_bar_resized bits when adding tool bar.  Make inhibiting of
19857         frame resizing more discriminative.
19858         (Fx_create_frame): Handle x_width and x_height if set by
19859         x_figure_window_size.  Set size hints before adjusting frame size.
19860         (x_create_tip_frame): Adjust x_figure_window_size call.
19861         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
19862         (set_frame_menubar): On Lucid never add core-border-width to
19863         avoid that adding XtNinternalBorderWidth adds it again.
19864         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
19865         * src/xterm.c (x_new_font): In non-toolkit case handle size
19866         change of menu bar.
19867         (x_set_window_size_1): Fix calls to frame_size_history_add.
19868         (x_wm_set_size_hint): Remove dead code.  Set
19869         size_hints.min_width and size_hints.min_height to base_width and
19870         base_height.
19872 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
19874         * test/automated/file-notify-tests.el (file-notify--test-timeout):
19875         Add docstring.  Increase to 10 seconds for remote
19876         directories.  (Bug#21669)
19878 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
19880         Unmacroize ebrowse.c and etags.c a bit
19882         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
19883         (streq, filename_eq, set_flag, has_flag): Now inline functions.
19884         (set_flag): First arg is now an address, not an lvalue.
19885         All callers changed.
19886         (filename_eq, set_flag, has_flag):
19887         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
19888         All callers changed.
19889         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
19890         Now inline functions.  Remove asserts that are unnecessary these
19891         days (and in some cases were too-generous anyway).
19893 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
19895         Use highlight for current items
19897         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
19898         Apply highlight face instead of region face.
19900 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
19902         Search for more cover image names in MPC
19904         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
19905         case insensitively
19907 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
19909         Remove or comment out unused variables
19911         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
19912         nontext_cursor, mode_cursor, hand_cursor and count.
19913         (x_change_tool_bar_height): Remove variable old_text_height.
19914         (deliver_wm_chars): Remove variable strip_Alt.
19915         (Fw32_shell_execute): Remove variable document_a.
19916         (Fw32_frame_geometry): Remove variable fullboth.
19917         * src/w32term.c (w32_setup_relief_color): Comment out variable
19918         w32_display_info.
19919         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
19920         (w32_read_socket): Comment out variables rows, columns.
19921         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
19923 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
19925         * src/w32proc.c (sys_select): Fix bitwise test.
19927 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
19929         Minor typo corrections in doc strings
19931         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
19932         Doc fixes.
19934 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
19936         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
19938 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
19940         Attempt to avoid crashes in plist-member
19942         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
19943         and a call to XCDR.  (Bug#21655)
19945 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
19947         * lisp/select.el (gui-get-primary-selection): In
19948         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
19950 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
19952         Support RTF in doc-view
19954         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
19956 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
19958         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
19960 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
19962         Replace the usage of an obsolete function in auth-source.el
19964         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
19965         Replace an usage of `epg-context-set-armor' with `setf'.
19967 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
19969         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
19971 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
19973         Have calc-yank recognize numbers in different bases.
19975         * lisp/calc/calc-yank.el (math-number-regexp): New function.
19976         (calc-yank): Use `math-number-regexp' to recognize numbers.
19978 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
19980         Handle an opaque-move X11 window manager operation more efficiently
19982         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
19983         followed by more ConfigureNotify events for the same window, process
19984         only the last one.
19986 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
19988         Fix cursor setting for tip frame; re-enable cursor generation
19990         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
19991         attributes sent when creating the new X window.  Don't skip setting
19992         the pointerColor parameter.
19994 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
19996         Rewrite x_set_mouse_color to sync less
19998         We can track serial numbers of X requests and correlate error events
19999         with the associated requests.  This way we can identify errors for
20000         specific calls without having to use XSync after every one.
20002         * src/xfns.c (enum mouse_cursor): New type.
20003         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
20004         (mouse_cursor_types): New array listing the Lisp variables and default
20005         cursor appearances for each cursor type.
20006         (x_set_mouse_color_handler): New function; checks error event serial
20007         number against submitted requests.
20008         (x_set_mouse_color): Updated to use the new error handler callback,
20009         and to be more table-driven, to simplify repetitious code.
20011 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20013         Add x_catch_errors_with_handler
20015         * src/xterm.c (struct x_error_message_stack): Add new fields for a
20016         callback function and associated data pointer.
20017         (x_error_catcher): If the callback function is set, call it after
20018         saving the error message string.
20019         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
20020         accepts a callback function and data pointer.
20021         (x_catch_errors): Now a wrapper function.
20022         * src/xterm.h (x_special_error_handler): New typedef.
20023         (x_catch_errors_with_handler): Declare.
20025 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20027         Introduce x_uncatch_errors_after_check to reduce XSync calls
20029         Both x_had_errors_p and x_check_errors call XSync, so if they're
20030         immediately followed by x_uncatch_errors, its XSync call will be
20031         redundant, resulting in a wasted round trip to the X server.
20033         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
20034         x_uncatch_errors without the XSync call.
20035         (XTmouse_position, x_wm_supports):
20036         * src/xfns.c (x_set_mouse_color):
20037         * src/xmenu.c (Fx_menu_bar_open_internal):
20038         * src/xselect.c (x_own_selection, x_get_foreign_selection):
20039         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
20040         * src/xterm.h (x_uncatch_errors_after_check): Declare.
20042 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
20044         Document the optional prefix to `calc-yank'
20046         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
20047         prefix to `calc-yank'.
20048         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
20049         the Calc buffer are yanked back unchanged.
20051 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
20053         * lisp/calendar/calendar.el: Display buffer before executing body.
20055         In each use of this macro, the modeline is derived from a window width
20056         calculation, which will be wrong if (display-buffer) splits the window
20057         horizontally.
20059 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20061         Use ‘echo’ safely with ‘\’ or leading ‘-’
20063         POSIX says that ‘echo FOO’ produces implementation-defined output
20064         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
20065         behavior in that case.
20066         * Makefile.in (removenullpaths): Remove.
20067         (epaths-force): Rewrite to avoid the need for ‘echo’.
20068         (install-etc): Be clearer about escaping the shell metacharacters
20069         ‘\’ and ‘$’.
20070         * Makefile.in (install-arch-indep, install-etcdoc):
20071         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
20072         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
20073         * configure.ac, lib-src/rcs2log, make-dist:
20074         * src/Makefile.in (lisp.mk):
20075         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
20076         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
20077         if $foo can contain arbitrary characters.
20078         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
20079         * doc/lispref/two-volume.make (vol1.pdf):
20080         * test/etags/make-src/Makefile (web ftp publish):
20081         Use ‘printf’ rather than ‘echo -e’.
20083 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
20085         Allow numbers with different radixes to be yanked.
20087         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
20088         default base 10.
20090 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20092         Improve CHECK_IMPURE and PURE_P speedup
20094         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
20096 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
20098         Use events instead of chars to keep track of steps.
20100         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
20101         to keep track of steps.
20103 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20105         Fix --enable-gcc-warnings problem with older GCC
20107         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
20108         This is for building with --enable-gcc-warnings with
20109         GCC 4.6 through 5.0.
20111 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
20113         Fix vertical-motion in truncated lines that end in a stretch
20115         * src/indent.c (Fvertical_motion): Expect overshoot when point is
20116         beyond window margin and lines are truncated, even if we have a
20117         stretch at point.  (Bug#21468)
20119 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
20121         Avoid link-time errors due to inline functions
20123         * src/emacs.c: Include puresize.h, to avoid link-time errors in
20124         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
20125         inline functions.
20127 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
20129         * src/data.c (Faset): Fix last change.
20131 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20133         CHECK_IMPURE and PURE_P speedup
20135         * src/intervals.c (create_root_interval):
20136         Do CHECK_IMPURE only for strings; not needed for buffers.
20137         Prefer ! STRINGP to BUFFERP, for a tad more speed.
20138         * src/puresize.h (CHECK_IMPURE, PURE_P):
20139         Now inline functions instead of macros.
20140         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
20141         All callers changed.
20142         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
20143         All callers changed.
20145 2015-10-09  Noah Friedman  <friedman@splode.com>
20147         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
20149 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20151         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
20153         our after-change-function, rather than re-adding it if it was removed.
20155 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20157         * lisp/cedet/ede: Silence some compiler warnings
20159         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
20160         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
20161         (ede-apply-object-keymap, ede-reset-all-buffers)
20162         (ede-auto-add-to-target): Use dolist.
20163         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
20164         Use field names rather than initarg names in `oref'.
20165         (ede-load-project-file): Remove unused var `file'.
20166         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
20167         (ede-set): Remove unused var `a'.
20169         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
20170         (ede-project-autoload): Avoid the old-style "name" argument.
20171         (ede-emacs-find-matching-target): Use field names rather than initarg
20172         names in `oref'.
20174         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
20175         (ede-linux-load, ede-project-autoload): Avoid the old-style
20176         "name" argument.
20177         (ede-linux-find-matching-target): Use field names rather than initarg
20178         names in `oref'.
20180 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20182         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
20184 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20186         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
20187         indenting too far after ":-".
20189 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
20191         Update case-table and categories of recently added characters
20193         * lisp/international/characters.el: Update information about Latin
20194         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
20195         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
20196         blocks.  (Byug#21654)
20198 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
20200         * src/frame.c (adjust_frame_size): In minibuffer-only windows
20201         don't count minibuffer height twice.  (Bug#21643)
20203 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
20205         Avoid inflooping in font-lock
20207         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
20208         inhibit-field-text-motion around the call to
20209         line-beginning-position, to avoid inflooping.  (Bug#21615)
20211 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
20213         Refactor duplicated code; ensure default is in completions
20215         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
20216         New function.
20217         (reftex-extract-bib-entries): Use it.
20218         (reftex-extract-bib-entries-from-thebibliography): Use it.
20220 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20222         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
20223         in the example.
20225 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
20227         * lisp/calc/calc.el: Silence byte-compiler warnings.
20228         (calc-scan-for-dels): Use ignore-errors.
20229         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
20230         (calc-read-key-sequence): Remove unused var `prompt2'.
20231         (calc-kill-stack-buffer): Remove unused var `buflist'.
20232         (calc): Remove unused var `oldbuf'.
20233         (calc-refresh): Use inhibit-read-only.
20234         (calc-can-abbrev-vectors): Declare.
20235         (calc-record): Remove unused var `mainbuf'.
20236         (math-sub-bignum): Remove unused var `sum'.
20237         (math-svo-c, math-svo-wid, math-svo-off): Declare.
20239 2015-10-08  Daiki Ueno  <ueno@gnu.org>
20241         Use g_clear_error instead of g_error_free
20243         * src/image.c: Define g_clear_error instead of g_error_free.
20244         (init_svg_functions): Resolve symbol g_clear_error instead of
20245         g_error_free.
20246         (svg_load_image): Use g_clear_error instead of g_error_free, to
20247         suppress GLib warnings when ERR is not set.  See bug#21641.
20249 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
20251         * src/image.c (image_size_error): Simplify.
20253 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
20255         Fix problems caught with --enable-gcc-warnings
20257         * src/image.c (lookup_rgb_color):
20258         * src/xfns.c (x_defined_color):
20259         * src/xterm.c (x_parse_color):
20260         Remove unused locals.
20262 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
20264         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
20266 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
20268         Format initial input uniformly
20270         * lisp/calc/calc.el (calc-digit-start-entry): New function.
20271         * lisp/calc/calc.el (calcDigit-start):
20272         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
20273         Use `calc-digit-start-entry' to format input.
20275 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
20277         Disable non-working pointerColor setting for X tooltip frame
20279         It generates a bunch of server traffic, but there's some bug wherein
20280         the new mouse cursor settings don't seem to get used.  In most
20281         situations the cursor isn't likely to be seen anyway, so it's not
20282         urgent to fix.
20284         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
20286 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
20288         Reduce some unnecessary X calls
20290         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
20291         call.  If border width is wanted, get it from the XGetGeometry call
20292         instead of calling XGetWindowAttributes on the same window.  Skip some
20293         X calls if we've already detected an error from the X server.
20294         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
20295         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
20297 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
20299         Reduce color allocation/query traffic in the TrueColor case
20301         When working with an X visual with TrueColor class, pixel values can
20302         be generated from the RGB values according to mask value provided by
20303         the server on connection.  Some of the image-handling code was already
20304         doing this.
20306         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
20307         lookup_rgb_color.
20308         (x_mutable_colormap): New function.
20309         * src/image.c (lookup_rgb_color): Move pixel composition code to
20310         x_make_truecolor_pixel.
20311         (x_kill_gs_process): Call x_mutable_colormap.
20312         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
20313         x_mutable_colormap.
20314         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
20315         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
20316         pixel value into RGB values directly, and don't send a request to the
20317         server.
20318         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
20319         value with x_make_truecolor_pixel.
20320         (x_copy_color): For an immutable color map, just return the provided
20321         pixel value.
20323 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
20325         Cache XParseColor results in the X display info structure
20327         With repeated lookups of foreground and background colors for multiple
20328         faces per frame, we issue a lot of redundant color name lookups to the
20329         X server, waiting every time for the response.  On a remote network
20330         with, say, 30ms round-trip time, this can add nearly a full second to
20331         creation of a new frame.
20333         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
20334         * src/image.c (get_spec_bg_or_alpha_as_argb):
20335         (xpm_init_color_cache, xpm_lookup_color):
20336         * src/xfns.c (x_defined_color):
20337         * src/xterm.c (x_parse_color): New function; caches color names not
20338         starting with "#" in the display-info structure.
20339         (x_delete_display): Delete the cache content.
20340         * src/xterm.h (struct color_name_cache_entry): New type.
20341         (x_parse_color): Declare.
20342         (struct x_display_info): Add a new field for the cache.
20344 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
20346         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
20348 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
20350         Fix segfault in image_size_error
20352         * src/image.c (image_size_error): Pass a Lisp string to
20353         image_error, not a C string.  (Bug#21641)
20355 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
20357         Highlight CSS variable definitions
20359         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
20360         CSS variables.  (Bug#21638)
20362 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
20364         * test/automated/tabulated-list-test.el: New file.
20365         Test bug#21639 and some basic functionality.
20367 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
20369         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
20370         Check if column can be sorted before trying.  (Bug#21639)
20372 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
20374         Add test for `self-insert-command' (bug#21633)
20376         * test/automated/cmds-tests.el: New file.
20378 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
20380         * src/window.c (resize_frame_windows): Don't set root window's
20381         top position when resizing horizontally.
20383 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
20385         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
20386         Document more possible values.
20388 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
20390         * lisp/textmodes/tex-mode.el: Use lexical-binding.
20392 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
20394         * lisp/indent.el (indent--default-inside-comment): New function.
20395         (indent-for-tab-command): Use it for `noindent' indentation.
20397 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
20399         Fix bug in GC_CHECK_MARKED_OBJECTS check
20401         * src/alloc.c (mark_object): Fix bug in checking code.
20402         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
20403         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
20404         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
20405         bucket.  The bug did not affect behavior either in the normal case
20406         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
20407         not have an internal error that a properly-written
20408         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
20410 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
20412         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
20413         Add prettified version for \\Bbb{Q}.
20415 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
20417         * test/automated/package-test.el (package-test-install-single):
20418         Add a test for bug#21625.
20420 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
20422         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
20423           not a package-desc object.  Also clarify documentation.  (Bug#21625)
20425 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
20427         Fix display of characters adjacent to ZWJ and ZWNJ
20429         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
20430         characters the same as directional formatting controls.
20431         (bidi_level_of_next_char): Include all Bn characters in rule L1,
20432         as mandated by the UBA.
20434 2015-10-06  Andreas Schwab  <schwab@suse.de>
20436         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
20437         number.  (Bug#21633)
20439 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
20441         * doc/lispref/objects.texi (Window Type): Add a cross reference.
20443         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
20445 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
20447         * lisp/language/misc-lang.el (composition-function-table):
20448         Fix entries for Arabic and Syriac.
20450 2015-10-05  Damien Cassou  <damien@cassou.me>
20452         Add first unit tests for auth-source.el
20454         * test/automated/auth-source-tests.el: New file.
20456 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
20458         Remove redundant redisplay code
20460         * src/xdisp.c (redisplay_internal, try_cursor_movement)
20461         (try_window_reusing_current_matrix, try_window_id): Remove
20462         redundant restrictions on redisplay optimizations based on the
20463         frame's 'redisplay' flag.  See
20464         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
20465         discussions.
20467 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
20469         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
20471 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
20473         Update tutorials/TUTORIAL.cn
20475         * etc/tutorials/TUTORIAL.cn: Improve translation.
20477 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20479         * src/macfont.m (macfont_encode_char, syms_of_macfont):
20480         Remove unused vars.
20482 2015-10-04  Stefan Merten  <stefan@merten-home.de>
20484         Pull in version numbers from rst.el upstream release.
20486         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
20487         (rst-svn-timestamp, rst-official-version)
20488         (rst-official-cvs-rev, rst-package-emacs-version-alist):
20489         Update version numbers.
20491 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
20493         * test/automated/coding-tests.el: New file.
20495 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
20497         Improve XEmacs compatibility of Tramp
20499         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
20500         Declare if it doesn't exist.
20501         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
20502         (redisplay): Make it an alias if it doesn't exist.
20504         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
20505         `file-remote-p' (due to XEmacs compatibility).
20507         * lisp/net/trampver.el (locate-dominating-file)
20508         (tramp-compat-replace-regexp-in-string): Autoload.
20509         (tramp-repository-get-version): Do not dupe byte-compiler.
20511 2015-09-02  K. Handa  <handa@gnu.org>
20513         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
20515         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
20516         Adjusted for the change of type of elements in the array
20517         MFLTGlyphString.glyphs.
20519 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
20520             Michael Heerdegen  <michael_heerdegen@web.de>
20522         shr: fix too long lines in rendered buffers (Bug#21012)
20524         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
20525         Correct calculation of available width.
20526         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
20527         is nil.
20529 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20531         Restore blank line before next section, erroneously erased
20532         in my previous commit
20534         * etc/compilation.txt (symbol ant): Add an additional trailing blank
20535         line to this section, so that there are two of them immediately before
20536         the next section.
20538 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20540         Support MSW filename style for ant compilation error regexp
20542         * etc/compilation.txt (symbol ant):
20543         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
20544         Support MSW filename style.
20546 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
20548         * nt/INSTALL: Minor spelling and quote fixes.
20550         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
20552 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
20554         Maintain ordering of JSON object keys by default
20556         * lisp/json.el (json-object-type): Mention order handling in doc-string.
20557         (json--plist-reverse): New utility function.
20558         (json-read-object): Maintain ordering for alists and plists.
20559         (json-pretty-print): Ensure that ordering is maintained.
20561         * test/automated/json-tests.el (test-json-plist-reverse): New test for
20562         `json--plist-reverse'.
20563         (json-read-simple-alist): Update test to accommodate for changes in
20564         `json-read-object'.
20566         * etc/NEWS: Document the new behavior of the pretty printing functions.
20568 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
20570         * src/coding.c (complement_process_encoding_system): Revert last change.
20572 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
20574         * admin/MAINTAINERS: Add entry for Ulf Jasper.
20576 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
20578         Doc fix for `defmacro'
20580         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
20582 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
20584         More validatation of coding systems
20586         * src/fileio.c (Finsert_file_contents): Remove redundant
20587         coding-system check.
20588         (choose_write_coding_system): Likewise.
20589         * src/coding.c (complement_process_encoding_system): Check argument
20590         for valid coding system.
20592 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
20594         Avoid crashes in coding_inherit_eol_type
20596         * src/coding.c (coding_inherit_eol_type): Check the validity of
20597         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
20598         (Bug#21602)
20600 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
20602         More validatation of coding system in 'write-region'
20604         * src/coding.c (choose_write_coding_system): More validation of
20605         coding-system from various sources.  Suggested by Andreas Schwab
20606         <schwab@linux-m68k.org>.  (Bug#21602)
20608 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
20610         Avoid crashes due to invalid coding-system
20612         * src/fileio.c (choose_write_coding_system)
20613         (Finsert_file_contents): Check validity of coding-system-for-write
20614         and coding-system-for-read bound by the caller.  (Bug#21602)
20616 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
20618         Adapt to new prettify-symbols-unprettify-at-point default
20620         * etc/NEWS: Mention that unprettication of symbol at point is off
20621         by default.
20623 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
20625         Revert my two recent process.c changes
20627         Revert "Improve last commit to process.c" and "Remove callback-handled
20628         channels from Available set" because they did not fix bug#21313.
20630         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
20631         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
20633 2015-10-02  Markus Triska  <triska@metalevel.at>
20635         * lisp/progmodes/prolog.el: Update and extend operator table.
20636         (prolog-smie-grammar): Add multifile, public etc.
20638 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
20640         Allow autogen even when Git is not installed
20642         * autogen.sh: Test ‘git status’ before trying to use Git.
20644 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
20646         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
20647         Adjust lto/lfrom when we have uncommitted changes.
20649 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
20651         Fix problems found by clang 3.5.0
20653         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
20654         * src/font.c (font_parse_family_registry):
20655         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
20657 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
20659         * nt/INSTALL: Update instructions for running autogen.sh.
20661         * nt/INSTALL: Point to ezwinports for libXpm binaries.
20663 2015-10-02  Daniel Colascione  <dancol@dancol.org>
20665         Fix winner in cl-lib not loaded case
20667         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
20668         without requiring CL
20670 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
20672         Fix a few problems with directed quotes
20674         This is in response to a problem report by Kaushal Modi in:
20675         http://bugs.gnu.org/21588#25
20676         * lisp/cedet/mode-local.el (describe-mode-local-overload):
20677         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
20678         * lisp/info-xref.el (info-xref-check-all-custom):
20679         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
20680         Prefer directed to undirected single quotes in diagnostics.
20682 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
20684         Revert "Attempt to fix slow redisplay caused by last changes"
20686         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
20687         (try_cursor_movement): Don't relax requirements for redisplay
20688         optimizations for the selected frame.  (Bug#21597)
20690         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
20692 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
20694         Fix slow redisplay when daemon frame exists
20696         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
20697         when looking for frames that need to be redisplayed.  (Bug#21597)
20699 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
20701         Attempt to fix slow redisplay caused by last changes
20703         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
20704         (try_cursor_movement): Relax requirements for redisplay
20705         optimizations for the selected frame.  (Bug#21597)
20707 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
20709         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
20710         Improve doc string.
20712 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
20714         * lisp/minibuffer.el (minibuffer-completion-help):
20715         Set default base-size, in case completion table does not set it.
20717 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
20719         Fix GUD display of GDB output with non-ASCII text
20721         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
20722         (gdb-mi-decode): New function.
20723         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
20724         decode octal escapes in GDB output.  (Bug#21572)
20726 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
20728         * nt/INSTALL: Document where to find XPM support files.
20730 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
20732         Un- and re-prettification are not exclusive
20734         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
20735         Re-apply prettification to previous symbol also when unprettifying
20736         next one.
20738 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
20740         Don't unprettify symbol at point by default
20742         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
20743         Default to disabled (nil).
20745 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
20747         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
20748         Support unprettifying when point is after a symbol.
20750         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
20752 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
20754         Avoid assertion violations in push_prefix_prop
20756         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
20757         a line that has a line-prefix defined starts with an image.  (Bug#21428)
20759 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
20761         Disable some display optimizations when frames need redisplay
20763         These optimizations were previously disabled by the
20764         windows_or_buffers_changed flag, which now is not set
20765         when only some frames need to be redrawn.
20766         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
20767         'redisplay' flag is set.
20768         (try_window_reusing_current_matrix, try_window_id)
20769         (try_cursor_movement): Disable these optimizations when the
20770         frame's 'redisplay' flag is set.
20772 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
20774         Don't modify buffer by unprettification
20776         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
20777         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
20778         modify buffer when setting/removing custom prettify-symbols-start/end
20779         text properties.  Add them to font-lock-extra-managed-props, too.
20781 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
20783         Try to avoid redisplaying all frames when creating a new one
20785         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
20786         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
20787         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
20788         * src/frame.c (x_set_screen_gamma): Set the specific frame's
20789         `redisplay' bit rather than windows_or_buffers_changed.
20791         * src/window.c (apply_window_adjustment): Remove redundant setting of
20792         windows_or_buffers_changed.
20794         * src/xdisp.c (redisplay_internal): Set the specific frame's
20795         `redisplay' bit rather than update_mode_lines in response to
20796         cursor_type_changed.
20797         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
20798         (AINC): Adjust accordingly.
20800 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
20802         Implement unprettification of symbol at point
20804         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
20805         symbol at point.
20806         (prettify-symbols--current-symbol-bounds): New variable.
20807         (prettify-symbols--post-command-hook): New function.
20808         (prettify-symbols-unprettify-at-point): New defcustom.
20809         (prettify-symbols-mode): Use it.
20810         (prettify-symbols--compose-symbol): Use them.
20812 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20814         * src/macfont.m (mac_font_descriptor_supports_languages):
20815         Regard "zh" as synonym of "zh-Hans".
20817 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20819         Work around crash when displaying etc/HELLO on OS X 10.11
20821         * src/macfont.m (mac_font_get_weight)
20822         (mac_font_descriptor_get_adjusted_weight): New functions.
20823         (macfont_store_descriptor_attributes): Adjust weight.
20825 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20827         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
20829 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
20831         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
20832         of the columns.
20834 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
20836         Use unar and lsar to handle RAR archives in arc-mode
20838         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
20839         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
20841 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
20843         Clarify :create in auth-source's docs
20845         * lisp/gnus/auth-source.el (auth-source-search):
20846         Clarify :create's meaning.
20848 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
20850         Avoid empty -path arguments in rgrep
20852         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
20853         the list produced according to grep-find-ignored-directories,
20854         before passing it to Find/Grep invocation.  (Bug#21548)
20856 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
20858         Clarify documentation of pos-visible-in-window-p
20860         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
20861         t for POS.  See
20862         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
20863         for the original report.
20865         * doc/lispref/windows.texi (Window Start and End): Clarify the
20866         meaning of t for the POSITION argument of pos-visible-in-window-p.
20868 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
20870         * lisp/progmodes/prolog.el: Fix various indentation cases.
20871         (prolog-operator-chars): New const (add \\).
20872         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
20873         (prolog-smie-rules): Add rules according to bug#21526.
20875 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
20877         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
20878         (sh-indent-after-continuation): Add new value `always' (bug#17620)
20879         (sh-smie-sh-rules): Remove old handling of continued lines.
20880         (sh-smie--indent-continuation): New function.
20881         (sh-set-shell): Use it.
20883 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
20885         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
20886         Remove redundant :group keyword args.
20887         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
20888         Remove variables.
20889         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
20890         turn them into compile-time variables.
20891         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
20892         Add rules for break, continue, return, global, and persistent.
20893         Refine the rule for "until".
20894         (octave-smie--funcall-p, octave-smie--end-index-p)
20895         (octave-smie--in-parens-p): New functions.
20896         (octave-smie-backward-token, octave-smie-forward-token): Use them to
20897         distinguish the "enumeration" function and the "end" index from
20898         their corresponding keywords.
20899         (octave--block-offset-keywords): New constant.
20900         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
20901         parsing.
20902         (octave-reserved-words): Redefine using octave-smie-grammar.
20903         (octave-font-lock-keywords): Use octave-smie--funcall-p and
20904         octave-smie--end-index-p.
20906 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
20908         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
20910 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
20912         * nt/INSTALL: Remove references to GTK site.
20913         That site no longer offers Windows downloads.
20915 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
20917         * nt/INSTALL: Add instructions for installing Git.
20919 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
20921         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
20922         use colors.  Suggested by Eli Zaretskii.
20924 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
20926         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
20927         not supporting 256 above colors (bug#21557).
20929 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
20931         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
20933         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
20935 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
20937         Add documentation for seq.el
20939         * doc/lispref/sequences.texi: Add documentation regarding extending
20940         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
20941         seq-do and seq-map.
20943 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
20945         Better documentation for seq-some
20947         * doc/lispref/sequences.texi:
20948         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
20949         guarantee that the returned value is the first non-nil value that
20950         resulted from applying the predicate.
20952 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
20954         * lisp/arc-mode.el: Sharp-quote function arguments.
20956 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
20958         Avoid redisplay error in ediff-regions-wordwise
20960         * lisp/vc/ediff-util.el
20961         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
20962         set before activating it.  (Bug#21567)
20964 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
20966         Another attempt to fix crashes due to prematurely freed faces
20968         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
20969         faces for as long as we might have desired matrices that reference
20970         those faces.  (Bug#21428)
20972 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
20974         Add auctex development list email address
20976 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
20978         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
20980 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
20982         Improve wrapfig package support and caption parsing
20984         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
20985         Correct description string and add wraptable environment.
20986         (reftex-default-context-regexps): Improve caption regexp.
20988 2015-09-28  Anders Lindgren  <andlind@gmail.com>
20990         Respect value of frame_resize_pixelwise when handling fullscreen state
20992         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
20993         setting size increments.
20995 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
20997         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
20999 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
21001         Add prettify-symbols-alist for js-mode
21003         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
21004         (js-mode): Use it.
21006 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
21008         * nt/subdirs.el: File deleted (no longer used).
21010 2015-09-26  Alan Mackenzie  <acm@muc.de>
21012         Fix follow-scroll-up/down, making them replacements for scroll-up/down
21014         1. Allow point to move between follow windows in scroll operations.
21015         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
21016         when EOB was isolated in the last follow window.
21018         * lisp/follow.el (follow-fixed-window): New variable.
21019         (follow-get-scrolled-point): New function.
21020         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
21021         Reformulate the code.  Put `scroll-command' properties on the functions.
21022         Correct minor errors in ...-down's doc string and code.
21023         (follow-calc-win-end): Amend incomplete doc string.  Use
21024         `pos-visible-in-window-p' to check whether EOB is in the window.
21025         (follow-estimate-first-window-start): Correct an off-by-1 error.
21026         (follow-adjust-window): Add handling for explicit scrolling operations.
21028 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
21030         * admin/MAINTAINERS: Add self, plus list some more files
21031         sans maintaners.
21033 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
21035         New DWIM commands for changing letter-case
21037         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
21038         New functions.  (Bug#21501)
21040 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
21042         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
21044 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
21046         Make face realization be more frame-specific
21048         * src/frame.h (struct f): New flag face_change.
21049         * src/xfaces.c (Finternal_make_lisp_face)
21050         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
21051         (update_face_from_frame_parameter): Set the face_change flag only
21052         for the frame whose faces are affected.
21053         * src/xdisp.c (init_iterator): If a frame's face_change flag is
21054         set, free faces only on that frame.
21055         (redisplay_internal): Disable "display optimization 1" if the
21056         frame's face_change flag is set.
21057         (redisplay_window): Don't allow skipping a window's redisplay if
21058         its frame's face_change flag is set.
21059         * src/frame.c (x_set_screen_gamma): Instead of calling
21060         Fclear_face_cache, call clear_face_cache and set
21061         windows_or_buffers_changed to a non-zero value.  This avoids
21062         setting the global face_change flag that triggers face realization
21063         on all frames and thorough redisplay of all of them.
21065         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
21066         clear face cache if the selected frame is a GUI frame.
21068 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
21070         Remove font-latex specific check
21072         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21073         Use syntax-ppss data to identify verbatim contents.
21075 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
21077         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21078         Fix some false negatives.
21080 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21082         Reorder Windows version in Emacs manifests
21084         * nt/emacs-x64.manifest:
21085         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
21086         highest.
21088 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21090         Update Emacs manifest files for Windows 10
21092         * nt/emacs-x86.manifest:
21093         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
21095 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21097         Avoid non-ASCII decoding errors in C src files
21099         * src/nsterm.m:
21100         * src/lisp.h:
21101         * src/editfns.c:
21102         * src/doprnt.c: Add 'coding' cookies -- these files include
21103         Unicode characters and should be decoded as UTF-8.
21105 2015-09-25  Alan Mackenzie  <acm@muc.de>
21107         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
21109         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
21110         amend to match current modes and functions.
21111         (edebug-set-initial-mode): Uncomment and change from setting a defun's
21112         `edebug-initial-mode''s property to setting the variable
21113         `edebug-initial-mode'.
21114         (top level): Create new binding C-x C-a C-m for
21115         `edebug-set-initial-mode'.
21117         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
21118         `edebug-set-initial-mode' and its new key binding.
21119         (Edebug Options): Mention the new command in the pertinent place.
21121         * etc/NEWS: Write entry for this change.
21123 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21125         Avoid non-ASCII decoding errors in Texinfo files
21127         * doc/misc/tramp.texi:
21128         * doc/lispref/strings.texi:
21129         * doc/lispref/positions.texi:
21130         * doc/lispref/help.texi:
21131         * doc/lispref/functions.texi:
21132         * doc/lispintro/emacs-lisp-intro.texi:
21133         * doc/emacs/text.texi:
21134         * doc/emacs/modes.texi:
21135         * doc/emacs/mini.texi:
21136         * doc/emacs/display.texi:
21137         * doc/emacs/custom.texi:
21138         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
21139         Unicode characters and should be decoded as UTF-8.
21140         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
21141         apostrophe unnecessarily.
21143 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
21145         Merge from gnulib
21147         This incorporates:
21148         2015-09-25 c-ctype: rewrite to use inline functions
21149         2015-09-24 maint: add coding cookies to non-ASCII sources
21150         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
21151         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
21152         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
21153         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
21154         * lib/set-permissions.c:
21155         Copy from gnulib.
21157 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
21159         Update publicsuffix.txt from upstream
21161         * etc/publicsuffix.txt: Update from
21162         https://publicsuffix.org/list/effective_tld_names.dat
21163         dated 2015-09-24 17:29:21 UTC.
21165 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
21167         Prevent timers from messing up TTY menus
21169         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
21170         the TTY menu is open.  (Bug#21530)
21172 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
21174         No need to mention K&R C in c-mode intro
21176 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
21178         Fix recent bootstrap problems
21180         * src/syntax.c (parse_sexp_propertize): Fix last fix.
21181         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
21182         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
21184 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
21186         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
21188 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
21190         Properly quote nested xml comments (Bug#6267) (Bug#20001)
21192         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
21193         (nxml-mode): Set comment-quote-nested-function.
21195 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
21197         Allow major-modes full control over quoting nested comments
21199         * lisp/newcomment.el (comment-quote-nested-function): New variable.
21200         (comment-quote-nested-default): New function.
21201         (comment-quote-nested): Use `comment-quote-nested-function'.
21203 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
21205         Prefer CALLN in a few more places
21207         * src/macfont.m (macfont_set_family_cache):
21208         * src/nsterm.m (append2):
21209         * src/xterm.c (x_cr_export_frames):
21210         Prefer CALLN to allocating the arg arrays by hand.
21212 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
21214         Adapt file-notify-test02-events test case
21216         * test/automated/file-notify-tests.el (file-notify-test02-events):
21217         Create a new watch for every test.
21219 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
21221         Continue gfilenotify.c implementation of missing parts
21223         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
21224         `gfile-add-watch' call.
21225         (file-notify-rm-watch): Modify `file-notify-descriptors' only
21226         after calling the low level functions.
21228         * src/gfilenotify.c (dir_monitor_callback): Check, whether
21229         event_type is expected.
21230         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
21231         (Fgfile_rm_watch): Fix typo.
21232         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
21234 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
21236         * src/syntax.c (parse_sexp_propertize): Handle spurious
21237         e_property_truncated flag.
21238         (update_syntax_table_forward): Remove invalid assertion.
21240 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
21242         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
21243         space display spec on text-mode terminals, by calling
21244         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
21245         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
21246         test for a GUI frame.
21248 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
21250         Move let-when-compile to lisp-mode.el
21252         This fixes the bootstrapping problem of `let-when-compile' using
21253         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
21255 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
21257         * lisp/url/url-http.el (url-http-parse-headers): Do not
21258         automatically include Authorization header in redirect.
21259         (Bug#21350)
21261 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
21263         Clarify documentation of ':relative-width'
21265         * doc/lispref/display.texi (Specified Space): Document that
21266         ':relative-width' is only supported on GUI frames.
21268 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
21270         Fix 'current-column' in presence of :relative-width
21272         * src/indent.c (check_display_width): Support ':relative-width'
21273         in a display spec that specifies a stretch glyph.  (Bug#21533)
21275 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
21277         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
21279         ... to conform better to CONTRIBUTE guidelines.
21281 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
21283         * lisp/progmodes/prolog.el: Fix indentation of empty line
21285         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
21286         `empty-line-token' element.
21287         (smie-indent-empty-line): New function.
21288         (smie-indent-functions): Add it.
21290         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
21291         behavior and use the new `empty-line-token' element (bug#21526).
21292         (prolog-mode-variables): Fix comment-start-skip setting to match
21293         comment-start.
21295         * test/indent/prolog.prolog: Add nested indentation tests.
21297         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
21298         comment-start-skip not to misuse submatch 1.
21300 2015-09-22  Alan Mackenzie  <acm@muc.de>
21302         Make description of `edebug-initial-mode' user friendly
21304         Fixes bug#21365.
21306         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
21307         description of `edebug-initial-mode' from that of its implementation
21308         to that of its visual effect and use.  Move the paragraph higher up.
21310 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
21312         lisp/progmodes/gud.el (gud-format-command): Fix last commit
21314         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
21315         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
21317 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
21319         Improve last commit to process.c
21321 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
21323         Implement gfile-valid-p
21325         * lisp/filenotify.el (file-notify-callback): Fix typo.
21326         (gfile-valid-p): Remove defalias.
21328         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
21329         the file or directory to be watched is deleted.
21330         (Fgfile_add_watch): Make watch_object a triple.
21331         (Fgfile_rm_watch): Check, whether watch is cancelled already.
21332         (Fgfile_valid_p): New defun.
21333         (syms_of_gfilenotify): Declare Sgfile_valid_p.
21335 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
21337         Remove callback-handled channels from Available set
21339         * src/process.c (wait_reading_process_output): Remove channel from
21340         Available set if it is handled by a callback, e.g., dbus or
21341         inotify (bug#21313).
21343 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
21345         Use lunate epsilon for TeX \epsilon
21347         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
21348         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
21349         \epsilon to use GREEK LUNATE EPSILON SYMBOL
21351 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
21353         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
21355         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
21356         rather than outermost paren (bug#21526).
21358 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
21360         Improve git diff hunk headers for .el, .texi
21362         Problem reported by Alan Mackenzie in:
21363         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
21364         * .gitattributes (*.el, *.texi): New patterns.
21365         * autogen.sh: Configure diff.elisp.xfuncname and
21366         diff.texinfo.xfuncname if using Git.
21368 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
21370         Don't rely on defaults in decoding UTF-8 encoded Lisp files
21372         * lisp/replace.el:
21373         * lisp/textmodes/rst.el:
21374         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
21376 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
21378         Clarify or replace a few \u escapes
21380         * doc/lispref/nonascii.texi (Character Properties)
21381         More-detailed commentary for \u escapes.
21382         * lisp/progmodes/python.el (python--prettify-symbols-alist):
21383         * lisp/replace.el (query-replace-from-to-separator):
21384         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
21385         (rst-mode-syntax-table):
21386         * lisp/whitespace.el (whitespace-display-mappings):
21387         Prefer actual character to \u escape when this makes the code
21388         easier to follow in the usual case where Unicode chars can be
21389         displayed.
21391 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
21393         Pacify GCC -Wmaybe-uninitialized in xdisp.c
21395         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
21396         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
21397         charpos.  The loop should always execute at least once anyway.
21399 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
21401         Signal error on invalid regexp
21403         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
21404         Signal an error when the user tries searching with a regexp
21405         matching the empty string.
21407 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
21409         Another fix of file-notify-tests for w32notify
21411         * test/automated/file-notify-tests.el (file-notify-test02-events):
21412         Further adaptation for w32notify: reduce the number of expected
21413         'changed' events.  (Bug#21435)
21415 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
21417         Adapt tests and manual for w32notify
21419         * doc/lispref/os.texi (File Notifications): w32notify does not
21420         send `attribute-changed' events.
21422         * test/automated/file-notify-tests.el (file-notify--test-with-events):
21423         Simplify parameters.  Adapt all callees.
21424         (file-notify-test02-events): w32notify does not send
21425         `attribute-changed' events.
21426         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
21427         Do not skip in case of w32notify.  Simply ignore this part of the test.
21429 2015-09-21  Dima Kogan  <dima@secretsauce.net>
21431         Fix setting breakpoints when remote-debugging
21433         * lisp/progmodes/gud.el (gud-format-command): Send localized file
21434         names to the debugger running on the remote.  (Bug#13304)
21436 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
21438         Better docstring and parameter name for seq-find
21440         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
21441         the parameter `sentinel' to `default'.
21443         * doc/lispref/sequences.texi (Sequence Functions): Update the
21444           documentation for `seq-find' accordingly.
21446 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
21448         Avoid infinite recursion while displaying box face
21450         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
21451         the previous string/buffer character position under bidi
21452         iteration.  (Bug#21428)
21454 2015-09-21  Anders Lindgren  <andlind@gmail.com>
21456         Keep upper edge unchanged when changing size of NS frame
21458         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
21459         (Bug#21415).
21461 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
21463         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
21464         (prolog-smie-rules): Accommodate standard if/then/else special
21465         indentation.
21466         (prolog-mode): Add . to electric-indent-chars.
21467         (prolog-electric--if-then-else): Re-indent the line before adding space
21468         after the new char (bug#21526).
21470 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
21472         Add prettify symbols to python-mode
21474         * lisp/progmodes/python.el (python-prettify-symbols-alist):
21475         New variable.
21476         (python-mode): Use it
21478 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
21480         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
21482 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
21484         (compilation-error-regexp-alist-alist): Tone down guile-file
21486         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
21487         Make guile-file a bit less enthusiastic (bug#21496).
21489 2015-09-20  Drew Csillag  <drew@thecsillags.com>
21491         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
21492         Fix m4_* highlighting.
21494         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
21495         of commands when they have a "m4_" prefix.
21497 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
21499         '.' -> `.' in doc string
21501         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
21502         individual chars with grave quotes instead of straight quotes, as
21503         this works better when they are translated to curved quotes.
21505 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
21507         Improve file notifications, especially for Tramp
21509         * doc/lispref/files.texi (Magic File Names):
21510         Mention `file-notify-valid-p'.
21512         * doc/lispref/os.texi (File Notifications):
21513         Describe `file-notify-valid-p'.
21515         * etc/NEWS: Add `file-notify-valid-p'.
21517         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
21518         Improve implementation.
21519         (tramp-gvfs-monitor-file-process-filter): Rename from
21520         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
21521         process if appropriate.
21523         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
21524         Improve implementation.
21525         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
21526         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
21527         if appropriate.
21528         (tramp-sh-inotifywait-process-filter): Rename from
21529         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
21530         appropriate.
21532         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
21533         Use `delete-process'.
21534         (tramp-handle-file-notify-valid-p): Check also, that file or
21535         directory to be watched still exists.
21537         * test/automated/file-notify-tests.el (file-notify--test-timeout):
21538         New defun.  Use it at all places a timeout is needed.
21539         (file-notify--test-cleanup): Delete directories recursively.
21540         Cleanup also Tramp connections.
21541         (file-notify-test02-events): Add tests for `attribute-change'.
21542         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
21543         Add tests for `file-notify-rm-watch'.
21545 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
21547         Use %s to format strings instead of splicing them
21549         If FOO might contain quotes that are part of a file or variable
21550         name, the quotes should not be translated when showing FOO’s name
21551         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
21552         is not quite right, as it would translate FOO’s quotes.
21553         Change it to (message "%s: bar" FOO) instead.
21554         * lisp/allout.el (allout-process-exposed):
21555         * lisp/calc/calc-ext.el (calc-do-prefix-help):
21556         * lisp/calc/calc-store.el (calc-store-into):
21557         * lisp/calendar/todo-mode.el (todo-category-completions):
21558         * lisp/cedet/semantic/complete.el (semantic-completion-message):
21559         * lisp/org/ob-latex.el (convert-pdf):
21560         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
21561         * lisp/org/ox-latex.el (org-latex-compile):
21562         * lisp/org/ox-man.el (org-man-compile):
21563         * lisp/org/ox-odt.el (org-odt--export-wrap):
21564         * lisp/org/ox-texinfo.el (org-texinfo-compile):
21565         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
21566         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
21567         (verilog-signals-combine-bus, verilog-read-defines)
21568         (verilog-getopt-file, verilog-expand-dirnames)
21569         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
21570         * lisp/term/ns-win.el (ns-spi-service-call):
21571         Use %s to avoid translating quotes of file names etc. in diagnostics.
21573 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
21575         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
21576         (js-mode): Don't set syntax-begin-function.
21578 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
21580         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
21581         syntax-begin-function is a symbol.
21583 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
21585         Improve documentation of 'run-at-time'
21586         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
21587         In particular, don't refer to 'diary-entry-time', because it is
21588         unavailable until diary-lib is loaded.  Also, refer to
21589         'timer-duration-words', not 'timer-duration', as the latter's doc
21590         string says nothing about the accepted strings.
21592 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
21594         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
21596 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
21598         Repair pdbtrack remote file tracking
21599         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
21600         Rectify pdbtrack so it follows transitions from one remote source
21601         file to the next.
21603 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
21605         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
21607 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
21609         Adapt vc-src to the old-new vc-checkin API
21610         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
21611         additional optional parameter.
21613 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
21615         Add overflow module to CSS property list
21616         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
21617         from CSS Overflow Module Level 3.
21619 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
21621         Fix documentation of "C-u C-x v v"
21622         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
21623         documentation of "C-u C-x v v" match what the code does.
21625         Resurrect the ability to specify a revision in vc-next-action
21626         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
21627         * lisp/vc/vc-dav.el (vc-dav-checkin):
21628         * lisp/vc/vc-git.el (vc-git-checkin):
21629         * lisp/vc/vc-hg.el (vc-hg-checkin):
21630         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
21631         an additional optional argument, the revision to checkin.
21632         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
21633         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
21634         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
21635         a revision to checkin.
21636         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
21637         revision when checking in files.
21638         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
21639         for the details.
21641 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
21643         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
21644         (verilog-decls-princ, verilog-modport-princ)
21645         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
21647 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
21649         Fix the routine for help on Calc's prefixes
21650         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
21651         (calc-do-prefix-help): Use `read-char' to determine the next Calc
21652         command.
21654 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
21656         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
21657         (font-lock-fontify-block): Don't let-bind it.
21658         (font-lock-compile-keywords): Don't use it.
21659         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
21660         start one slot earlier, instead.
21661         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
21662         Don't declare.
21663         (syntax-ppss): Don't use it either.
21664         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
21665         from docstring.
21666         * doc/emacs/display.texi (Font Lock): Don't mention
21667         font-lock-beginning-of-syntax-function.
21668         * doc/lispref/modes.texi (Font Lock Basics): Update description of
21669         font-lock-defaults.
21670         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
21671         * lisp/loadhist.el (unload-feature-special-hooks):
21672         Remove font-lock-beginning-of-syntax-function.
21673         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
21674         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
21675         font-lock-beginning-of-syntax-function.
21677 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
21679         Backslash cleanup in Elisp source files
21680         This patch should not change behavior.  It typically omits backslashes
21681         where they are redundant (e.g., in the string literal "^\$").
21682         In a few places, insert backslashes where they make regular
21683         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
21684         "^\\*", which has the same effect as a regular expression.
21685         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
21686         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
21687         RCS IDs, as that makes it clearer that the backslash is intended.
21689         Some more minor backslash fixes
21690         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
21691         * test/automated/info-xref.el (info-xref-test-write-file):
21692         Double backslashes in strings.
21694         Fix several backslash typos in Elisp strings
21695         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
21696         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
21697         (todo-reset-done-string, todo-reset-comment-string)
21698         (todo-reset-highlight-item):
21699         * lisp/erc/erc-networks.el (erc-networks-alist):
21700         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
21701         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
21702         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
21703         (nntp-telnet-shell-prompt):
21704         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
21705         * lisp/image-dired.el (image-dired-rotate-original):
21706         (image-dired-get-exif-file-name):
21707         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
21708         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
21709         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
21710         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
21711         * lisp/net/shr-color.el (shr-color->hexadecimal):
21712         * lisp/org/org-bibtex.el (org-bibtex-fields):
21713         * lisp/org/org-docview.el (org-docview-export):
21714         * lisp/org/org-entities.el (org-entities):
21715         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
21716         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
21717         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
21718         (ebnf-style-database):
21719         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
21720         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
21721         * lisp/progmodes/sql.el (sql-product-alist):
21722         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
21723         (verilog-error-font-lock-keywords)
21724         (verilog-assignment-operator-re):
21725         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
21726         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
21727         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
21728         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
21729         For example, to get the regular expression ‘\.’ use the string
21730         literal "\\.", not "\." (which is equivalent to ".").
21731         * lisp/emulation/viper-util.el (viper-glob-unix-files):
21732         Remove stray ‘\j’ from string.
21733         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
21734         (nntp-telnet-shell-prompt):
21735         Treat > like $ when matching a shell prompt.
21736         * lisp/progmodes/make-mode.el (makefile-browse):
21737         Properly quote a diagnostic.
21739         Fix minor quoting problems in diagnostics
21740         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
21741         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
21742         Follow text-quoting-style in diagnostic, and quote a file name.
21744 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
21746         * doc/lispref/frames.texi (Cursor Parameters):
21747         Document 'x-stretch-cursor'.
21749 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
21751         Omit unnecessary \ before paren in C docstrings
21752         Although \( is needed in docstrings in Elisp code, it is not needed in
21753         docstrings in C code, since C function definitiions do not start with
21754         a parenthesis.  The backslashes made the docstrings a bit harder to
21755         read and to format in columns.  Also, some C docstrings had ( in
21756         column 1 and this did not appear to be causing any problems.  So,
21757         simplify C docstrings by replacing \( with ( and \) with ).
21759         A few more minor quoting fixes in a script and a text file
21761         Minor quoting fixes in scripts and doc
21762         Prefer straight quotes in random script files, as they are not
21763         converted.  Prefer grave quotes in a couple of places in the manual
21764         that were missed earlier, as these quotes are converted.
21766         Minor backslash fixes in manuals and scripts
21767         * Makefile.in (install-arch-indep):
21768         * admin/charsets/compact.awk:
21769         * admin/charsets/gb180302.awk (gb_to_index):
21770         * admin/charsets/gb180304.awk (gb_to_index):
21771         Avoid undefined behavior in Awk regular expression backslashes.
21772         * doc/misc/efaq.texi (Matching parentheses):
21773         Omit unnecessary backslashes.
21774         * doc/misc/gnus-faq.texi (FAQ 5-8):
21775         Avoid undefined behavior in suggested sed backslash usage.
21777         Add -Wswitch to --enable-gcc-warnings
21778         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
21779         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
21780         * lib-src/etags.c (main, consider_token, C_entries):
21781         * src/coding.c (encode_invocation_designation):
21782         * src/data.c (Ftype_of):
21783         * src/eval.c (Fdefvaralias, default_toplevel_binding)
21784         (Fbacktrace__locals, mark_specpdl):
21785         * src/lisp.h (record_xmalloc):
21786         * src/syntax.c (scan_lists, scan_sexps_forward):
21787         * src/window.c (window_relative_x_coord):
21788         * src/xdisp.c (push_it, pop_it):
21789         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
21790         Error out or do nothing (as appropriate) if a switch statement
21791         with an enum value does not cover all of the enum.
21792         * src/dispextern.h (struct iterator_stack_entry.u.comp):
21793         Remove unused member discovered by using -Wswitch.
21794         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
21795         * src/vm-limit.c (check_memory_limits):
21796         Simplify warning-diagnostic computation by using a table.
21798         etags ‘fatal’ function is now printf-like
21799         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
21800         Also, now static; not clear why it needed to be extern.
21801         (verror): New function, with most of the old contents of ‘error’.
21802         (fatal, error): Use it.
21804 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
21806         More adaptations in file-notify-tests.el
21807         * test/automated/file-notify-tests.el
21808         (file-notify-test05-dir-validity): Skip for w32notify in
21809         batch-mode.  (Bug#21432)
21811 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
21813         Adapt test in file-notify-tests.el
21814         * test/automated/file-notify-tests.el
21815         (file-notify-test04-file-validity): Skip for w32notify in
21816         batch-mode.  Add test lost last commit.
21818 2015-09-16  Dima Kogan  <dima@secretsauce.net>
21820         winner no longer holds on to dead frames
21821         * lisp/winner.el (winner-change-fun): Cull dead frames.
21822         This prevents a potentially massive memory leak.  See:
21823         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
21825 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
21827         Use common report_file_notify_error function
21828         * src/fileio.c (report_file_notify_error): New function.
21829         * src/inotify.c (report_inotify_error): Remove function.
21830         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
21831         (Finotify_rm_watch): Use report_file_notify_error.
21832         * src/lisp.h (report_file_notify_error): Declare external function.
21833         * src/w32notify.c (report_w32notify_error): Remove function.
21834         (Fw32notify_add_watch, Fw32notify_rm_watch):
21835         Use report_file_notify_error.
21837 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
21839         Fix documentation.
21840         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
21841         the documentation of the root mean square.
21843 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
21845         Remove tool_bar_redisplayed_once and associated code.
21846         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
21847         * src/frame.c (make_frame, x_set_font): Remove initialization of
21848         f->tool_bar_redisplayed_once.
21849         * src/w32fns.c (x_change_tool_bar_height):
21850         * src/xfns.c (x_change_tool_bar_height): Don't check for
21851         f->tool_bar_redisplayed_once.
21852         * src/xdisp.c (redisplay_internal): Remove handling of
21853         f->tool_bar_redisplayed_once.
21855 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
21857         Restore some of the quoting in the manuals
21858         * doc/lispref/windows.texi (Coordinates and Windows)
21859         (Coordinates and Windows):
21860         * doc/lispref/variables.texi (Lexical Binding)
21861         (File Local Variables):
21862         * doc/lispref/text.texi (Format Properties):
21863         * doc/lispref/symbols.texi (Symbol Components):
21864         * doc/lispref/strings.texi (Creating Strings):
21865         * doc/lispref/sequences.texi (Sequence Functions):
21866         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
21867         (Search and Replace):
21868         * doc/lispref/processes.texi (Bindat Spec):
21869         * doc/lispref/os.texi (Idle Timers):
21870         * doc/lispref/objects.texi (Basic Char Syntax):
21871         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
21872         * doc/lispref/nonascii.texi (Character Properties):
21873         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
21874         (Mode Line Variables):
21875         * doc/lispref/minibuf.texi (Text from Minibuffer):
21876         * doc/lispref/loading.texi (Autoload):
21877         * doc/lispref/keymaps.texi (Controlling Active Maps):
21878         * doc/lispref/frames.texi (Frame Layout, Size and Position)
21879         (Size Parameters, Implied Frame Resizing):
21880         * doc/lispref/files.texi (Changing Files, Magic File Names):
21881         * doc/lispref/eval.texi (Self-Evaluating Forms):
21882         * doc/lispref/display.texi (Progress, Abstract Display)
21883         (Abstract Display Example, Bidirectional Display):
21884         * doc/lispref/commands.texi (Event Mod):
21885         * doc/emacs/windows.texi (Displaying Buffers):
21886         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
21887         * doc/emacs/text.texi (Enriched Text):
21888         * doc/emacs/programs.texi (MixedCase Words):
21889         * doc/emacs/picture-xtra.texi (Insert in Picture)
21890         (Tabs in Picture):
21891         * doc/emacs/misc.texi (Emacs Server, Printing):
21892         * doc/emacs/mini.texi (Minibuffer History):
21893         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
21894         (Pulling / Pushing):
21895         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
21896         * doc/emacs/help.texi (Help, Help Echo):
21897         * doc/emacs/glossary.texi (Glossary):
21898         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
21899         (Frame Commands):
21900         * doc/emacs/files.texi (Reverting, Saving, Directories):
21901         * doc/emacs/entering.texi (Exiting):
21902         * doc/emacs/emacs.texi (Top):
21903         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
21904         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
21905         appropriate or replace quoting with @dfn.
21906         * doc/misc/ediff.texi (Window and Frame Configuration):
21907         * doc/lispref/processes.texi (Network Feature Testing):
21908         * doc/lispref/display.texi (Display Margins): Quote the phrase
21909         after "a.k.a." where appropriate.
21911 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
21913         Clarify reftex-extra-bindings docs
21914         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
21915         * doc/misc/reftex.texi (Key Bindings): Document that the variable
21916         only has an effect at load-time.
21918 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
21920         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
21921         search argument.  (Bug#21492) (Bug#21493)
21923 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
21925         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
21926         Add pretty symbols for \qquad and \varrho.
21928 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
21930         Add new functions for the root mean square of a (Calc) vector
21931         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
21932         New functions.
21933         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
21934         `calc-vector-rms', add autoloads for `calc-vector-rms' and
21935         `calcFunc-rms'.
21936         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
21937         `calcFunc-rms'.
21938         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
21939         `calc-vector-rms'.
21940         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
21941         command.
21943 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
21945         Add monotone EDE generic project
21946         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
21947         Add monotone generic project.
21949         Revert premature commit
21950         * doc/lispref/files.texi: Revert premature commit of change to
21951         file-name-all-completions.
21953         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
21954         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
21955         with cl-generic defaults.
21956         (elisp--xref-find-references): Add doc string.
21957         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
21958         tests to find bug.
21960         Fix bugs in eieio-oref-default related to class symbols
21961         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
21962         (eieio-oref-default): Handle class properly.
21964 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
21966         Quote “fullboth” when defining it
21967         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
21968         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
21970 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
21972         Minor doc fix in emacs/ack.texi
21973         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
21974         first argument.
21976 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
21978         Adapt tests in auto-revert-tests.el
21979         * test/automated/auto-revert-tests.el (auto-revert--timeout):
21980         Make it a defconst.
21981         (auto-revert--wait-for-revert): New defun.
21982         (auto-revert-test00-auto-revert-mode)
21983         (auto-revert-test01-auto-revert-tail-mode)
21984         (auto-revert-test02-auto-revert-mode-dired): Use it.
21986 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
21988         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
21989         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
21990         (cl-lib-fdefs): Add defgeneric.
21991         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
21992         (eieio-kw, cl-lib-kw, el-kw): Remove.
21994 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
21996         Quote less in manuals
21997         The manuals often used quotes ``...'' when it is better to use @dfn or
21998         @code or capitalized words or no quoting at all.  For example, there is
21999         no need for the `` and '' in “if a variable has one effect for
22000         @code{nil} values and another effect for ``non-@code{nil}'' values”.
22001         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
22002         unnecessary quoting like this, and to use @dfn etc. instead when called
22003         for (Bug#21472).
22005 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
22007         * lisp/custom.el (load-theme): Only compute hash when needed.
22009 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22011         Pacify --enable-gcc-warnings
22012         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
22014 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
22016         Improve error reports in inotify.c
22017         * src/inotify.c (report_inotify_error): New function.  Clone of
22018         report_w32notify_error.
22019         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
22020         (Finotify_rm_watch): Use it.
22022 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22024         Fix the file-notify tests for watch validation on w32
22025         * test/automated/file-notify-tests.el
22026         (file-notify-test04-file-validity): Move the directory deletion
22027         out of the file-notify--test-with-events macro.
22028         (file-notify-test04-file-validity)
22029         (file-notify-test05-dir-validity): Enlarge the timeout of
22030         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
22032 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
22034         Use OPEN BOX instead of space for \quad.
22035         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
22036         character for \quad instead of a space.
22038 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22040         Add missing *.pbm images
22041         * etc/images/connect.pbm: New file.
22042         * etc/images/custom/down-pushed.pbm: New file.
22043         * etc/images/custom/down.pbm: New file.
22044         * etc/images/custom/right-pushed.pbm: New file.
22045         * etc/images/custom/right.pbm: New file.
22046         * etc/images/describe.pbm: New file.
22047         * etc/images/disconnect.pbm: New file.
22048         * etc/images/ezimage/bits.pbm: New file.
22049         * etc/images/ezimage/bitsbang.pbm: New file.
22050         * etc/images/ezimage/box-minus.pbm: New file.
22051         * etc/images/ezimage/box-plus.pbm: New file.
22052         * etc/images/ezimage/box.pbm: New file.
22053         * etc/images/ezimage/checkmark.pbm: New file.
22054         * etc/images/ezimage/dir-minus.pbm: New file.
22055         * etc/images/ezimage/dir-plus.pbm: New file.
22056         * etc/images/ezimage/dir.pbm: New file.
22057         * etc/images/ezimage/doc-minus.pbm: New file.
22058         * etc/images/ezimage/doc-plus.pbm: New file.
22059         * etc/images/ezimage/doc.pbm: New file.
22060         * etc/images/ezimage/info.pbm: New file.
22061         * etc/images/ezimage/key.pbm: New file.
22062         * etc/images/ezimage/label.pbm: New file.
22063         * etc/images/ezimage/lock.pbm: New file.
22064         * etc/images/ezimage/mail.pbm: New file.
22065         * etc/images/ezimage/page-minus.pbm: New file.
22066         * etc/images/ezimage/page-plus.pbm: New file.
22067         * etc/images/ezimage/page.pbm: New file.
22068         * etc/images/ezimage/tag-gt.pbm: New file.
22069         * etc/images/ezimage/tag-minus.pbm: New file.
22070         * etc/images/ezimage/tag-plus.pbm: New file.
22071         * etc/images/ezimage/tag-type.pbm: New file.
22072         * etc/images/ezimage/tag-v.pbm: New file.
22073         * etc/images/ezimage/tag.pbm: New file.
22074         * etc/images/ezimage/unlock.pbm: New file.
22075         * etc/images/gnus/important.pbm: New file.
22076         * etc/images/gnus/mail-send.pbm: New file.
22077         * etc/images/gnus/receipt.pbm: New file.
22078         * etc/images/gnus/toggle-subscription.pbm: New file.
22079         * etc/images/gnus/unimportant.pbm: New file.
22080         * etc/images/gud/all.pbm: New file.
22081         * etc/images/gud/rcont.pbm: New file.
22082         * etc/images/gud/recstart.pbm: New file.
22083         * etc/images/gud/recstop.pbm: New file.
22084         * etc/images/gud/rfinish.pbm: New file.
22085         * etc/images/gud/rnext.pbm: New file.
22086         * etc/images/gud/rnexti.pbm: New file.
22087         * etc/images/gud/rstep.pbm: New file.
22088         * etc/images/gud/rstepi.pbm: New file.
22089         * etc/images/gud/thread.pbm: New file.
22090         * etc/images/lock-broken.pbm: New file.
22091         * etc/images/lock-ok.pbm: New file.
22092         * etc/images/lock.pbm: New file.
22093         * etc/images/mail/copy.pbm: New file.
22094         * etc/images/mail/forward.pbm: New file.
22095         * etc/images/mail/not-spam.pbm: New file.
22096         * etc/images/mail/outbox.pbm: New file.
22097         * etc/images/mail/preview.pbm: New file.
22098         * etc/images/mail/save-draft.pbm: New file.
22099         * etc/images/mh-logo.pbm: New file.
22100         * etc/images/mpc/add.pbm: New file.
22101         * etc/images/mpc/ffwd.pbm: New file.
22102         * etc/images/mpc/next.pbm: New file.
22103         * etc/images/mpc/pause.pbm: New file.
22104         * etc/images/mpc/play.pbm: New file.
22105         * etc/images/mpc/prev.pbm: New file.
22106         * etc/images/mpc/rewind.pbm: New file.
22107         * etc/images/mpc/stop.pbm: New file.
22108         * etc/images/redo.pbm: New file.
22109         * etc/images/smilies/braindamaged.pbm: New file.
22110         * etc/images/smilies/cry.pbm: New file.
22111         * etc/images/smilies/dead.pbm: New file.
22112         * etc/images/smilies/evil.pbm: New file.
22113         * etc/images/smilies/forced.pbm: New file.
22114         * etc/images/smilies/grin.pbm: New file.
22115         * etc/images/smilies/indifferent.pbm: New file.
22116         * etc/images/sort-ascending.pbm: New file.
22117         * etc/images/sort-column-ascending.pbm: New file.
22118         * etc/images/sort-criteria.pbm: New file.
22119         * etc/images/sort-descending.pbm: New file.
22120         * etc/images/sort-row-ascending.pbm: New file.
22121         * etc/images/unchecked.pbm: New file.
22122         * etc/images/zoom-in.pbm: New file.
22123         * etc/images/README: Update instructions for PBM files.
22125         Add separator.pbm tool-bar image
22126         * etc/images/separator.pbm: New file.  Having it avoids the side
22127         effect of changing the tool-bar height when the default font's size
22128         changes and XPM image support is not available, due to the SPC
22129         characters that are left in the Lisp string used to display the tool
22130         bar, because there are no images to display instead of those SPC
22131         characters.
22133         Make show-paren-match face visible on mono-color displays
22134         * lisp/faces.el (show-paren-match): Use the underline face for
22135         mono-color displays.  (Bug#21481)
22137 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
22139         Don’t double-encode non-ASCII mail clipboard
22140         * lisp/mail/mailclient.el (mailclient-send-it):
22141         Also fix the case when mailclient-place-body-on-clipboard-flag
22142         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
22144 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
22146         Adapt file-notify-tests.el test cases
22147         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
22148         * src/inotify.c (Finotify_valid_p): Adapt docstring.
22149         * test/automated/file-notify-tests.el
22150         (file-notify-test03-autorevert)
22151         (file-notify-test04-file-validity)
22152         (file-notify-test04-file-validity-remote)
22153         (file-notify-test05-dir-validity)
22154         (file-notify-test05-dir-validity-remote): Adapt docstring.
22155         (file-notify-test04-file-validity): Let events arrive before
22156         calling final `file-notify-valid-p'.  Do not ignore errors.
22157         (file-notify-test05-dir-validity): Do not manipulate
22158         `temporary-file-directory', it isn't necessary.  Let events arrive
22159         before calling final `file-notify-valid-p'.  Do not ignore errors.
22161 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
22163         Don’t double-encode non-ASCII for mail client
22164         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
22165         Use RFC 6068’s list of unreserved characters.
22166         (mailclient-send-it): When encoding the body as a URL,
22167         first decode it as per Content-Type: and Content-Transfer-Encoding:,
22168         as URLs must use percent-encoded UTF-8 (Bug#21471).
22169         * doc/misc/url.texi (mailto): Update RFC number.
22171 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
22173         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
22175 2015-09-14  Alan Mackenzie  <acm@muc.de>
22177         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
22178         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
22179         `cadr/car'.
22181 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22183         Clarify documentation of char-table extra slots
22184         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
22185         slot numbers are zero-based.  (Bug#21467)
22187 2015-09-14  Alan Mackenzie  <acm@muc.de>
22189         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
22190         Fixes bug#21449.
22191         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
22192         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
22193         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
22194         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
22195         Insert "\\|\\\\." into regexps which match symbols.
22197 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22199         Improve the doc string of w32notify-valid-p
22200         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
22201         that removing a watch makes its object invalid.
22203 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
22205         Fix tests for file-notify-valid-p
22206         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
22207         Use delete-directory to delete file-notify--test-tmpfile if it is
22208         a directory.  Likewise for file-notify--test-tmpfile1.
22209         (file-notify-test04-file-validity)
22210         (file-notify-test05-dir-validity): Delete the parent directory of
22211         the test.  Ignore errors when cleaning up after the test.
22213 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22215         Report file-notify-error in w32notify.c
22216         * src/w32notify.c (report_w32notify_error): New function.
22217         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
22218         errors, instead of calling report_file_error.  (Bug#21432)
22220         Implement w32notify-valid-p
22221         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
22222         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
22223         'identity'.
22225 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
22227         Test file-notify-valid-p
22228         * test/automated/file-notify-tests.el
22229         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22230         New tests.
22232 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
22234         Fix markup in ELisp manual
22235         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
22236         of the 'alpha' parameter value.  (Bug#21470)
22238 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
22240         Introduce `file-notify-valid-p'
22241         * lisp/filenotify.el (file-notify-valid-p): New defun.
22242         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
22243         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
22244         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
22245         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
22246         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
22247         <file-notify-valid-p>: Add handler.
22248         * lisp/net/tramp.el (tramp-file-name-for-operation):
22249         Add `file-notify-valid-p'.
22250         (tramp-handle-file-notify-valid-p): New defun.
22251         * src/inotify.c (Finotify_valid_p): New defun.
22252         (syms_of_inotify): Declare Sinotify_valid_p.
22254 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
22256         Port Unicode char detection to FreeBSD+svgalib
22257         Problem reported by Ashish SHUKLA in:
22258         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
22259         * configure.ac: Check for struct unipair.unicode instead of for
22260         <linux/kd.h>, since that’s more specific to what the code
22261         actually needs.
22262         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
22264         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
22266 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
22268         Fix vertical cursor motion across overlay strings with newlines
22269         * src/indent.c (Fvertical_motion): Don't leave point in the middle
22270         of an overlay string with newlines, as that will position the
22271         cursor after the string at whatever column is there.  (Bug#21468)
22273 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
22275         Fix tests in file-notify-tests.el
22276         * test/automated/file-notify-tests.el: Remove Tramp declarations.
22277         (file-notify-test00-availability): Print remote command w/o Tramp
22278         internal functions.
22279         (file-notify-test02-events, file-notify-test02-events-remote):
22280         Adapt docstring.
22281         (file-notify-test03-autorevert): Use `format-message' when
22282         inspecting *Messages* buffer.
22284 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
22286         Bind inhibit-modification-hooks rather than a/b-c-f
22287         * lisp/wid-edit.el (widget-editable-list-insert-before)
22288         (widget-editable-list-delete-at):
22289         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
22290         (cperl-font-lock-unfontify-region-function):
22291         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
22292         * lisp/obsolete/longlines.el (longlines-mode):
22293         * lisp/obsolete/fast-lock.el (save-buffer-state):
22294         * lisp/mouse.el (mouse-save-then-kill-delete-region):
22295         * lisp/gnus/message.el (message-hide-headers):
22296         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
22297         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
22298         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
22299         than after/before-change-functions to nil.
22301 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
22303         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
22304         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
22305         the buffers, even if the forced redisplay is interrupted.
22307         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
22309         Merge syntax-propertize--done and parse-sexp-propertize-done
22310         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
22311         (syntax-propertize): Set syntax-propertize--done even if
22312         syntax-propertize-function is nil.  Avoid recursive invocations.
22313         (syntax-propertize-chunks): New var.
22314         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
22315         Simplify.
22316         (parse-sexp-propertize-function): Don't set any more.
22317         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
22318         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
22319         Call Qinternal__syntax_propertize instead of
22320         Vparse_sexp_propertize_function.  Truncate e_property if needed.
22321         (update_syntax_table_forward): Streamline.
22322         (syms_of_syntax): Define Qinternal__syntax_propertize.
22323         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
22325 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
22327         Prefer straight quoting in some text files
22328         Mostly this just changes ` to ' in static text.  Some exceptions:
22329         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
22330         typically does that now.
22331         * admin/quick-install-emacs (TRY, top level):
22332         Use straight quoting in diagnostics.
22333         * src/README: Fix working-directory confusion.
22335         * CONTRIBUTE: Move send-email here from git-workflow.
22337 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
22339         Improve file notifications in Tramp
22340         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
22341         Set proper events to watch for.
22342         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
22343         watched events.
22345 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
22347         Fix NS build with --enable-checking='glyphs'
22348         * src/nsfns.m (unwind_create_frame): Make the preprocessor
22349         conditionals for referencing 'dpyinfo' consistent throughout the
22350         function.  (Bug#21426)
22352 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
22354         Add seq-find
22355         This function is similar to `seq-some' but returns the found element.
22356         In the cases where nil can be the found element, a sentinel optional
22357         argument can be provided to avoid ambiguities.
22358         * lisp/emacs-lisp/seq.el (seq-find): New function.
22359         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
22360         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
22361         seq-find.
22363 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
22365         Document file-notify--test-with-events.
22366         * test/automated/file-notify-tests.el (file-notify--test-with-events):
22367         Add docstring.
22369 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
22371         Report used native library in file-notify-tests.el
22372         * test/automated/file-notify-tests.el
22373         (tramp-get-remote-gvfs-monitor-dir)
22374         (tramp-get-remote-inotifywait): Declare them.
22375         (file-notify-test00-availability): Print used native library.
22377 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
22379         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
22380         (mpc-file-local-copy): Check for absolute path.  Check more config
22381         locations.
22383 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
22385         Improve documentation of categories
22386         * doc/lispref/syntax.texi (Categories): Clarify the example of
22387         using define-category and modify-category-entry.  (Bug#21448)
22389 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
22391         Revert some stray curved quotes I missed earlier
22392         Problem reported by David Kastrup in:
22393         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
22394         * lisp/international/mule-cmds.el (leim-list-header):
22395         Use format-message with an ASCII-only format.
22397         Prefer NUMBERP to spelling it out
22398         * src/editfns.c (styled_format):
22399         * src/frame.h (NUMVAL):
22400         * src/image.c (parse_image_spec):
22401         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
22402         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
22403         * src/process.c (Fsignal_process):
22404         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
22405         * src/xfaces.c (check_lface_attrs):
22406         * src/xselect.c (x_fill_property_data, x_send_client_event):
22407         Use NUMBERP rather than INTEGERP || FLOATP.
22409 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
22411         Improve file-notify-tests
22412         * test/automated/file-notify-tests.el: Use lexical-binding.
22413         (file-notify--test-cleanup): New function.
22414         (file-notify-test00-availability, file-notify-test01-add-watch)
22415         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
22416         (file-notify--test-with-events): New macro.
22417         (file-notify-test02-events): Use it.
22419 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
22421         Add patch-sending instructions to git-workflow
22422         From a suggestion by Mitchel Humpherys in:
22423         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
22424         * admin/notes/git-workflow (Sending patches): New section.
22426         Port to GIFLIB 5.0.6 and later
22427         Problem reported by Mitchel Humpherys in:
22428         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
22429         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
22430         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
22431         (gif_load) [HAVE_GIF]: Use it.
22433 2015-09-10  Glenn Morris  <rgm@gnu.org>
22435         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
22437 2015-09-09  Glenn Morris  <rgm@gnu.org>
22439         * test/automated/file-notify-tests.el (file-notify-test02-events):
22440         Fix recent change.
22442 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
22444         Refix movemail GCC pacification
22445         Problem reported by Ken Brown in:
22446         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
22447         * lib-src/movemail.c (main): Fix previous change.
22449 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22451         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
22452         Mark unused vars with underscore.
22454         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
22455         (parse_sexp_propertize): ...from here.
22457         * lisp/filenotify.el: Use lexical-binding
22458         (file-notify-add-watch): Avoid add-to-list.
22460 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
22462         Start checking event types in file-notify tests
22463         * test/automated/file-notify-tests.el (file-notify--test-events):
22464         New variable.
22465         (file-notify--test-event-handler): Append received event to
22466         file-notify--test-events for later analysis.
22467         (file-notify-test02-events): Assert that the expected notifications have
22468         arrived in the expected order.
22470 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
22472         Merge from gnulib and texinfo
22473         This incorporates:
22474         2015-08-03 Improve port of stdalign to C++11
22475         * lib/stdalign.in.h: Copy from gnulib.
22476         * doc/misc/texinfo.tex: Copy from texinfo.
22478 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22480         Make syntax.c call syntax-propertize on demand
22481         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
22482         (parse-sexp-propertize-function): Use it.
22483         (syntax-propertize): Disable parse-sexp-propertize-function.
22484         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
22485         New functions.
22486         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
22487         `parse-sexp-propertize-function'.
22488         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
22489         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
22490         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
22491         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
22492         Don't assume `point' is set.
22494 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
22496         Fix indentation of an @example in ELisp manual
22497         * doc/lispref/syntax.texi (Categories): Untabify the example.
22498         (Bug#21448)
22500 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
22502         Define internal-char-font even if --without-x
22503         The function is used now even in non-graphical environments.
22504         Problem reported by Glenn Morris in:
22505         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
22506         * src/font.c (Finternal_char_font): Move here ...
22507         * src/fontset.c (Finternal_char_font): ... from here.
22509 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22511         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
22512         Remove warning.
22514 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
22516         Fix display of complex local data types in GDB-MI
22517         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
22518         variable has no value, display "<complex data type>" as a
22519         placeholder, instead of a confusing "nil".  (Bug#21438)
22521 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
22523         Remove redundant redefinition of seq-drop-while from seq.el
22524         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
22526 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
22528         * lisp/emacs-lisp/package.el (package--ensure-init-file):
22529         More robust check for `package-initialize' calls in init file.
22530         This function accepts an optional argument, but calls passing
22531         an argument would not have been detected.
22533 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
22535         Port movemail to RHEL 6 with --enable-gcc-warnings
22536         * lib-src/movemail.c (main): Declare local only if needed.
22538         Port recent Linux console changes to RHEL 6
22539         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
22541         Improvements for curved quotes on Linux consule
22542         This should help Emacs work better out-of-the-box on Linux consoles,
22543         which have only limited support for displaying Unicode characters.
22544         Also, undo the recent change that caused text-quoting-style to
22545         affect quote display on terminals, so that the two features are
22546         independent.  See Alan Mackenzie in:
22547         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
22548         Finally, add a style parameter to startup--setup-quote-display,
22549         so that this function can also be invoked after startup, with
22550         different styles depending on user preference at the time.
22551         * configure.ac: Check for linux/kd.h header.
22552         * doc/emacs/display.texi (Text Display): Document quote display.
22553         * doc/lispref/display.texi (Active Display Table):
22554         * etc/NEWS:
22555         * lisp/startup.el (startup--setup-quote-display, command-line):
22556         text-quoting-style no longer affects quote display.
22557         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
22558         * lisp/international/mule-util.el (char-displayable-p):
22559         * lisp/startup.el (startup--setup-quote-display):
22560         On a text terminal supporting glyph codes, use the reported
22561         glyph codes instead of the terminal coding system, as this
22562         is more accurate on the Linux console.
22563         * lisp/startup.el (startup--setup-quote-display):
22564         New optional arg STYLE.
22565         * src/fontset.c (Finternal_char_font):
22566         Report glyph codes for a text terminal, if they are available.
22567         Currently this is supported only for the Linux console.
22568         * src/termhooks.h (struct terminal): New member glyph-code-table.
22569         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
22570         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
22571         (terminal_glyph_code): New function.
22573 2015-09-08  Juri Linkov  <juri@linkov.net>
22575         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
22576         underline.  (Bug#21433)
22578 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
22580         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
22582 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
22584         Fix double-reporting of rename events with inotify
22585         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
22586         of rename events with inotify (bug#21435).
22588 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
22590         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
22591         (tetris-mode-map): Use it.
22593 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
22595         Remove a few simple cases of global redisplay
22596         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
22597         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
22598         rather than returning a "resized_p" boolean.
22599         (redisplay_internal): Adjust call accordingly.
22600         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
22601         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
22602         tracking of this undesirable situation.
22604         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
22605         * src/process.c (status_notify): Only set the update_mode_line on the
22606         relevant buffers rather than setting it globally.
22608 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
22610         * lisp/electric.el (electric-quote-post-self-insert-function):
22611         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
22612         (electric-quote-mode): Activate everywhere in message-mode.
22614 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
22616         Go back to grave quoting in source-code docstrings etc.
22617         This reverts almost all my recent changes to use curved quotes
22618         in docstrings and/or strings used for error diagnostics.
22619         There are a few exceptions, e.g., Bahá’í proper names.
22620         * admin/unidata/unidata-gen.el (unidata-gen-table):
22621         * lisp/abbrev.el (expand-region-abbrevs):
22622         * lisp/align.el (align-region):
22623         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
22624         (outlineify-sticky):
22625         * lisp/apropos.el (apropos-library):
22626         * lisp/bookmark.el (bookmark-default-annotation-text):
22627         * lisp/button.el (button-category-symbol, button-put)
22628         (make-text-button):
22629         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
22630         * lisp/calc/calc-embed.el (calc-do-embedded):
22631         * lisp/calc/calc-ext.el (calc-user-function-list):
22632         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
22633         * lisp/calc/calc-help.el (calc-describe-key)
22634         (calc-describe-thing, calc-full-help):
22635         * lisp/calc/calc-lang.el (calc-c-language)
22636         (math-parse-fortran-vector-end, math-parse-tex-sum)
22637         (math-parse-eqn-matrix, math-parse-eqn-prime)
22638         (calc-yacas-language, calc-maxima-language, calc-giac-language)
22639         (math-read-giac-subscr, math-read-math-subscr)
22640         (math-read-big-rec, math-read-big-balance):
22641         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
22642         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
22643         (calc-auto-recompute):
22644         * lisp/calc/calc-prog.el (calc-fix-token-name)
22645         (calc-read-parse-table-part, calc-user-define-invocation)
22646         (math-do-arg-check):
22647         * lisp/calc/calc-store.el (calc-edit-variable):
22648         * lisp/calc/calc-units.el (math-build-units-table-buffer):
22649         * lisp/calc/calc-vec.el (math-read-brackets):
22650         * lisp/calc/calc-yank.el (calc-edit-mode):
22651         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
22652         * lisp/calendar/appt.el (appt-display-message):
22653         * lisp/calendar/diary-lib.el (diary-check-diary-file)
22654         (diary-mail-entries, diary-from-outlook):
22655         * lisp/calendar/icalendar.el (icalendar-export-region)
22656         (icalendar--convert-float-to-ical)
22657         (icalendar--convert-date-to-ical)
22658         (icalendar--convert-ical-to-diary)
22659         (icalendar--convert-recurring-to-diary)
22660         (icalendar--add-diary-entry):
22661         * lisp/calendar/time-date.el (format-seconds):
22662         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
22663         (timeclock-make-hours-explicit, timeclock-log-data):
22664         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
22665         (todo-item-mark, todo-check-format)
22666         (todo-insert-item--next-param, todo-edit-item--next-key)
22667         (todo-mode):
22668         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
22669         * lisp/cedet/mode-local.el (describe-mode-local-overload)
22670         (mode-local-print-binding, mode-local-describe-bindings-2):
22671         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
22672         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
22673         * lisp/cus-start.el (standard):
22674         * lisp/cus-theme.el (describe-theme-1):
22675         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
22676         (custom--sort-vars-1, load-theme):
22677         * lisp/descr-text.el (describe-text-properties-1, describe-char):
22678         * lisp/dired-x.el (dired-do-run-mail):
22679         * lisp/dired.el (dired-log):
22680         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
22681         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
22682         (ad-disable-advice, ad-remove-advice, ad-set-argument)
22683         (ad-set-arguments, ad--defalias-fset, ad-activate)
22684         (ad-deactivate):
22685         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
22686         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
22687         (byte-optimize-while, byte-optimize-apply):
22688         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
22689         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
22690         (byte-compile-log-file, byte-compile-format-warn)
22691         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
22692         (byte-compile-cl-warn)
22693         (byte-compile-warn-about-unresolved-functions)
22694         (byte-compile-file, byte-compile--declare-var)
22695         (byte-compile-file-form-defmumble, byte-compile-form)
22696         (byte-compile-normal-call, byte-compile-check-variable)
22697         (byte-compile-variable-ref, byte-compile-variable-set)
22698         (byte-compile-subr-wrong-args, byte-compile-setq-default)
22699         (byte-compile-negation-optimizer)
22700         (byte-compile-condition-case--old)
22701         (byte-compile-condition-case--new, byte-compile-save-excursion)
22702         (byte-compile-defvar, byte-compile-autoload)
22703         (byte-compile-lambda-form)
22704         (byte-compile-make-variable-buffer-local, display-call-tree)
22705         (batch-byte-compile):
22706         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
22707         * lisp/emacs-lisp/chart.el (chart-space-usage):
22708         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
22709         (check-declare-warn, check-declare-file)
22710         (check-declare-directory):
22711         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
22712         (checkdoc-message-text-engine):
22713         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
22714         (cl--describe-class):
22715         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
22716         (cl--generic-describe, cl-generic-generalizers):
22717         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
22718         (cl-symbol-macrolet):
22719         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
22720         * lisp/emacs-lisp/copyright.el (copyright)
22721         (copyright-update-directory):
22722         * lisp/emacs-lisp/edebug.el (edebug-read-list):
22723         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
22724         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
22725         (eieio-oref):
22726         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
22727         * lisp/emacs-lisp/eieio-speedbar.el:
22728         (eieio-speedbar-child-make-tag-lines)
22729         (eieio-speedbar-child-description):
22730         * lisp/emacs-lisp/eieio.el (defclass, change-class):
22731         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
22732         (elint-init-form, elint-check-defalias-form)
22733         (elint-check-let-form):
22734         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
22735         (ert-results-pop-to-backtrace-for-test-at-point)
22736         (ert-results-pop-to-messages-for-test-at-point)
22737         (ert-results-pop-to-should-forms-for-test-at-point)
22738         (ert-describe-test):
22739         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
22740         (find-function-library):
22741         * lisp/emacs-lisp/generator.el (iter-yield):
22742         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
22743         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
22744         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
22745         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
22746         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
22747         (advice--make, define-advice):
22748         * lisp/emacs-lisp/package-x.el (package-upload-file):
22749         * lisp/emacs-lisp/package.el (package-version-join)
22750         (package-disabled-p, package-activate-1, package-activate)
22751         (package--download-one-archive)
22752         (package--download-and-read-archives)
22753         (package-compute-transaction, package-install-from-archive)
22754         (package-install, package-install-selected-packages)
22755         (package-delete, package-autoremove, describe-package-1)
22756         (package-install-button-action, package-delete-button-action)
22757         (package-menu-hide-package, package-menu--list-to-prompt)
22758         (package-menu--perform-transaction)
22759         (package-menu--find-and-notify-upgrades):
22760         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
22761         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
22762         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
22763         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
22764         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
22765         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
22766         (rx-form):
22767         * lisp/emacs-lisp/smie.el (smie-config-save):
22768         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
22769         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
22770         * lisp/emacs-lisp/testcover.el (testcover-1value):
22771         * lisp/emacs-lisp/timer.el (timer-event-handler):
22772         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
22773         (viper-toggle-search-style, viper-kill-buffer)
22774         (viper-brac-function):
22775         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
22776         * lisp/env.el (setenv):
22777         * lisp/erc/erc-button.el (erc-nick-popup):
22778         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
22779         * lisp/eshell/em-dirs.el (eshell/cd):
22780         * lisp/eshell/em-glob.el (eshell-glob-regexp)
22781         (eshell-glob-entries):
22782         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
22783         * lisp/eshell/esh-opt.el (eshell-show-usage):
22784         * lisp/facemenu.el (facemenu-add-new-face)
22785         (facemenu-add-new-color):
22786         * lisp/faces.el (read-face-name, read-face-font, describe-face)
22787         (x-resolve-font-name):
22788         * lisp/files-x.el (modify-file-local-variable):
22789         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
22790         (set-auto-mode, hack-one-local-variable--obsolete)
22791         (dir-locals-set-directory-class, write-file, basic-save-buffer)
22792         (delete-directory, copy-directory, recover-session)
22793         (recover-session-finish, insert-directory)
22794         (file-modes-char-to-who, file-modes-symbolic-to-number)
22795         (move-file-to-trash):
22796         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
22797         * lisp/find-cmd.el (find-generic, find-to-string):
22798         * lisp/finder.el (finder-commentary):
22799         * lisp/font-lock.el (font-lock-fontify-buffer):
22800         * lisp/format.el (format-write-file, format-find-file)
22801         (format-insert-file):
22802         * lisp/frame.el (get-device-terminal, select-frame-by-name):
22803         * lisp/fringe.el (fringe--check-style):
22804         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
22805         * lisp/help-fns.el (help-fns--key-bindings)
22806         (help-fns--compiler-macro, help-fns--parent-mode)
22807         (help-fns--obsolete, help-fns--interactive-only)
22808         (describe-function-1, describe-variable):
22809         * lisp/help.el (describe-mode)
22810         (describe-minor-mode-from-indicator):
22811         * lisp/image.el (image-type):
22812         * lisp/international/ccl.el (ccl-dump):
22813         * lisp/international/fontset.el (x-must-resolve-font-name):
22814         * lisp/international/mule-cmds.el (prefer-coding-system)
22815         (select-safe-coding-system-interactively)
22816         (select-safe-coding-system, activate-input-method)
22817         (toggle-input-method, describe-current-input-method)
22818         (describe-language-environment):
22819         * lisp/international/mule-conf.el (code-offset):
22820         * lisp/international/mule-diag.el (describe-character-set)
22821         (list-input-methods-1):
22822         * lisp/mail/feedmail.el (feedmail-run-the-queue):
22823         * lisp/mouse.el (minor-mode-menu-from-indicator):
22824         * lisp/mpc.el (mpc-playlist-rename):
22825         * lisp/msb.el (msb--choose-menu):
22826         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
22827         * lisp/net/imap.el (imap-interactive-login):
22828         * lisp/net/mairix.el (mairix-widget-create-query):
22829         * lisp/net/newst-backend.el (newsticker--sentinel-work):
22830         * lisp/net/newst-treeview.el (newsticker--treeview-load):
22831         * lisp/net/rlogin.el (rlogin):
22832         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
22833         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
22834         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
22835         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
22836         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
22837         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
22838         (org-babel-goto-named-result):
22839         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
22840         * lisp/org/ob-ref.el (org-babel-ref-resolve):
22841         * lisp/org/org-agenda.el (org-agenda-prepare):
22842         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
22843         (org-clock-resolve):
22844         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
22845         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
22846         * lisp/org/org-habit.el (org-habit-parse-todo):
22847         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
22848         (org-mouse-context-menu):
22849         * lisp/org/org-table.el (org-table-edit-formulas):
22850         * lisp/org/ox.el (org-export-async-start):
22851         * lisp/proced.el (proced-log):
22852         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
22853         (ada-check-matching-start, ada-goto-matching-start):
22854         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
22855         * lisp/progmodes/ada-xref.el (ada-find-executable):
22856         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
22857         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
22858         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
22859         (flymake-start-syntax-check-process):
22860         * lisp/progmodes/python.el (python-shell-get-process-or-error)
22861         (python-define-auxiliary-skeleton):
22862         * lisp/progmodes/sql.el (sql-comint):
22863         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
22864         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
22865         * lisp/recentf.el (recentf-open-files):
22866         * lisp/replace.el (query-replace-read-from)
22867         (occur-after-change-function, occur-1):
22868         * lisp/scroll-bar.el (scroll-bar-columns):
22869         * lisp/server.el (server-get-auth-key):
22870         * lisp/simple.el (execute-extended-command)
22871         (undo-outer-limit-truncate, list-processes--refresh)
22872         (compose-mail, set-variable, choose-completion-string)
22873         (define-alternatives):
22874         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
22875         (command-line-1):
22876         * lisp/subr.el (noreturn, define-error, add-to-list)
22877         (read-char-choice, version-to-list):
22878         * lisp/term/common-win.el (x-handle-xrm-switch)
22879         (x-handle-name-switch, x-handle-args):
22880         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
22881         * lisp/textmodes/reftex-ref.el (reftex-label):
22882         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
22883         * lisp/textmodes/two-column.el (2C-split):
22884         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
22885         (tutorial--find-changed-keys):
22886         * lisp/type-break.el (type-break-noninteractive-query):
22887         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
22888         (wdired-do-perm-changes):
22889         * lisp/whitespace.el (whitespace-report-region):
22890         Prefer grave quoting in source-code strings used to generate help
22891         and diagnostics.
22892         * lisp/faces.el (face-documentation):
22893         No need to convert quotes, since the result is a docstring.
22894         * lisp/info.el (Info-virtual-index-find-node)
22895         (Info-virtual-index, info-apropos):
22896         Simplify by generating only curved quotes, since info files are
22897         typically that ways nowadays anyway.
22898         * lisp/international/mule-diag.el (list-input-methods):
22899         Don’t assume text quoting style is curved.
22900         * lisp/org/org-bibtex.el (org-bibtex-fields):
22901         Revert my recent changes, going back to the old quoting style.
22903 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
22905         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
22906         (package--autoloads-file-name)
22907         (package--activate-autoloads-and-load-path): New function.
22908         (package-activate-1): Delegate autoloading and load-path
22909         configuration to `package--activate-autoloads-and-load-path'.
22910         (package--compile): Before compilation, call
22911         `package--activate-autoloads-and-load-path' instead of
22912         `package-activate-1'.
22914 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
22916         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
22918 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
22920         Fix deletion of symlinks to directories on MS-Windows
22921         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
22922         symlink to a directory, try again with 'rmdir'.
22923         (is_symlink): If the argument is a symlink to a directory, set a
22924         bit in the return value to indicate that fact.
22926 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
22928         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
22929         When `package-initialize' is called as part of loading the init file,
22930         the user probably doesn't want it to be called again afterwards.
22931         In this situation, `package-initialize' now sets
22932         `package-enable-at-startup' to nil to prevent that.  The user can have
22933         the old behavior by setting this variable to t after the call to
22934         `package-initialize'.  (Bug#21423)
22935         * doc/emacs/package.texi (Package Installation): Document it.
22936         * doc/lispref/package.texi (Packaging Basics): Document it.
22937         * etc/NEWS: Document it.
22939 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
22941         Bump version of ntlm.el to 2.00
22942         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
22943         Add comm keyword.
22945 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
22947         * doc/misc/gnus.texi (Mail Source Specifiers):
22948         Allow :mailbox to be a list.
22950 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
22952         * lisp/progmodes/etags.el (etags-tags-completion-table):
22953         Allow even one non-regular character before the implicit tag name.
22954         Reported at http://emacs.stackexchange.com/questions/15269/.
22956 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
22958         Add support for NTLMv2 authentication
22959         * lisp/net/ntlm.el (ntlm): New customization group.
22960         (ntlm-compatibility-level): New defcustom.
22961         (ntlm-compute-timestamp): New function.
22962         (ntlm-generate-nonce): Likewise.
22963         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
22965 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
22967         * lisp/emacs-lisp/package.el: Rename custom faces.
22968         All of the recently introduced faces, like `package-name-face', have
22969         been renamed to no end in `-face' to comply with the convention
22970         described in (info "(elisp) Defining Faces").
22971         (package-name, package-description)
22972         (package-status-built-in, package-status-external)
22973         (package-status-available, package-status-new)
22974         (package-status-held, package-status-disabled)
22975         (package-status-installed, package-status-dependency)
22976         (package-status-unsigned, package-status-incompat)
22977         (package-status-avail-obso): New faces.
22978         (package-menu--print-info-simple): Use them.
22980 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
22982         mail-source.el: Make the imap mail-source's :mailbox handle a list
22983         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
22984         Allow :mailbox to be  a list.
22986 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
22988         nnimap.el: Handle nil arg to nnimap-request-group
22989         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
22990         This arg isn't always passed in, check it's not nil before making it
22991         into a list.  The active arg will also be nil if the group is new,
22992         check for that.
22994 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
22996         File notifications: Support renaming over directory boundaries
22997         * lisp/filenotify.el (file-notify-handle-event):
22998         (file-notify--pending-event): Adapt docstring.
22999         (file-notify--descriptor, file-notify-callback): Reimplement in
23000         order to support renaming over directory boundaries.
23001         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
23002         * doc/lispref/os.texi (File Notifications): Remove limitation of
23003         file renaming to the same directory.
23005 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23007         Spelling fix (Bug#21420)
23009 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
23011         Improve the semantic of map-some
23012         Update map-some to return the returned by the predicate, similar to
23013         seq-some.
23014         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
23015           return value of the predicate.
23016         * test/automated/map-tests.el (test-map-some): Update the test to check
23017           for non-nil values only.
23019         Rename map-contains-key-p and map-some-p
23020         Remove the "-p" suffix from both function names.
23021         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
23022           Rename the functions.
23023         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
23024           Update both test functions.
23026         Improve the semantic of seq-some
23027         Update seq-some to return non-nil if the predicate returns non-nil for
23028         any element of the seq, in which case the returned value is the one
23029         returned by the predicate.
23030         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
23031           docstring.
23032         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
23033         * doc/lispref/sequences.texi (Sequence Functions): Update the
23034           documentation for seq-some.
23036         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
23037         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
23038           without the "-p" prefix.
23039         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
23040           the tests accordingly.
23041         * doc/lispref/sequences.texi (Sequence Functions): Update the
23042           documentation for seq.el.
23044 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
23046         text-quoting-style for usage of fn names with ‘’
23047         * lisp/help.el (help--docstring-quote): Don’t assume
23048         text-quoting-style is ‘curve’ when generating usage strings for
23049         functions whose names contain curved quotes.
23051 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23053         Fix fix for describe-function keybinding confusion
23054         This fixes a bug introduced by the previous patch.
23055         * lisp/help-fns.el (help-fns--signature):
23056         Last arg of help-fns--signature is now a buffer, or nil if a
23057         raw signature is wanted.  All callers changed.
23058         (describe-function-1): Use this to do the right thing with signatures.
23060 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
23062         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
23064         Use PAT rather than UPAT in pcase macros
23065         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
23066         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
23067           than UPAT.
23069 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23071         Fix describe-function keybinding confusion
23072         * lisp/help-fns.el (describe-function-1): Compute signature
23073         in the original buffer, not in standard-output, so that
23074         substitute-command-keys uses the proper keybindings.
23075         This fixes Bug#21412, introduced in commit
23076         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
23078 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
23080         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
23082 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
23084         Avoid read error messages from 'inotify'
23085         * src/process.c (wait_reading_process_output): Add a
23086         'tls_available' set and manipulate it instead of 'Available' when
23087         checking TLS inputs.  Assign the value to 'Available' only if we
23088         find any TLS data waiting to be read.  This avoids error messages
23089         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
23091 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
23093         Avoid errors in thing-at-point with 2nd argument non-nil
23094         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
23095         sequences.  (Bug#21391)
23097 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
23099         Fix segfaults due to using a stale face ID
23100         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
23101         (display_echo_area_1, redisplay_internal): Call it to avoid
23102         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
23103         faces, which could case a segfault if the frame's face cache was
23104         freed since the last redisplay.  (Bug#21394)
23105         * src/xfaces.c (free_realized_faces):
23106         Call forget_escape_and_glyphless_faces.
23107         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
23109 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
23111         Fix minor problems with " in manual
23113 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
23115         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
23116         multi-hop files.
23118 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
23120         Support automated ‘make check’ in non-C locale
23121         This lets the builder optionally test Emacs behavior in other locales.
23122         The C locale is still the default for tests.
23123         * test/automated/Makefile.in (TEST_LOCALE): New macro.
23124         (emacs): Use it.
23125         * test/automated/flymake-tests.el (flymake-tests--current-face):
23126         Use C locale for subprocesses so that tests behave as expected.
23127         * test/automated/python-tests.el:
23128         (python-shell-prompt-validate-regexps-1)
23129         (python-shell-prompt-validate-regexps-2)
23130         (python-shell-prompt-validate-regexps-3)
23131         (python-shell-prompt-validate-regexps-4)
23132         (python-shell-prompt-validate-regexps-5)
23133         (python-shell-prompt-validate-regexps-6)
23134         (python-shell-prompt-set-calculated-regexps-1):
23135         Adjust expected output to match locale.
23136         * test/automated/tildify-tests.el (tildify-test--test)
23137         (tildify-space-test--test, tildify-space-undo-test--test):
23138         This test assumes UTF-8 encoding.
23140 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
23142         Fix some more docstring etc. quoting problems
23143         Mostly these fixes prevent the transliteration of apostrophes
23144         that should stay apostrophes.  Also, prefer curved quotes in
23145         Bahá’í proper names, as that’s the preferred Bahá’í style and
23146         these names are chock-full of non-ASCII characters anyway.
23147         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
23148         (eieio-defclass-internal):
23149         * lisp/emacs-lisp/eieio.el (defclass):
23150         * lisp/hi-lock.el (hi-lock-mode):
23151         Don’t transliterate Lisp apostrophes when generating a
23152         doc string or diagnostic.
23153         * lisp/international/mule-diag.el (list-coding-systems-1):
23154         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
23155         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
23156         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
23157         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
23158         Substitute quotes before putting them in the help buffer.
23160 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
23162         Re-add the notion of echo_prompt lost in the translation
23163         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
23164         echo_prompt which contains the actual string.  Update all uses.
23165         * src/keyboard.c (kset_echo_prompt): New function.
23166         (echo_update): Add echo_prompt at the very beginning.
23167         (read_char): Remove workaround for bug#19875, not needed any more.
23168         (read_key_sequence): Set echo_prompt rather than echo_string
23169         (bug#21403).
23170         (mark_kboards): Mark echo_prompt.
23172         Fix disassembly of non-compiled lexical functions (bug#21377)
23173         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
23174         * lisp/emacs-lisp/disass.el: Use lexical-binding.
23175         (disassemble): Recognize `closure's as well.
23176         (disassemble-internal): Use indirect-function and
23177         help-function-arglist, and accept `closure's.
23178         (disassemble-internal): Use interactive-form.
23179         (disassemble-1): Use functionp.
23181         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
23182         Don't compose inside verbatim blocks!
23184 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
23186         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
23187         (bug#19441).
23189         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
23191 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
23193         vc-git-mode-line-string: Explicitly re-apply the face
23194         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
23195         the face (bug#21404).
23197 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
23199         Treat initial-scratch-message as a doc string
23200         * doc/emacs/building.texi (Lisp Interaction):
23201         * doc/lispref/os.texi (Startup Summary):
23202         * etc/NEWS: Document this.
23203         * lisp/startup.el (initial-scratch-message):
23204         Look up find-file’s key rather than hardcoding it.
23205         (command-line-1): Substitute the doc string.
23206         This also substitutes the quotes, which will help test display
23207         quoting at startup.
23209         Fix describe-char bug with glyphs on terminals
23210         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
23211         buffers too, so don’t treat them differently from graphic displays.
23212         Without this fix, describe-char would throw an error on a terminal
23213         if given a glyph with a non-default face.
23215         Follow text-quoting-style in display table init
23216         This attempts to fix a problem reported by Alan Mackenzie in:
23217         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
23218         * doc/lispref/display.texi (Active Display Table):
23219         Mention how text-quoting-style affects it.
23220         * doc/lispref/help.texi (Keys in Documentation):
23221         Say how to set text-quoting-style in ~/.emacs.
23222         * etc/NEWS: Document the change.
23223         * lisp/startup.el (startup--setup-quote-display):
23224         Follow user preference if text-quoting-style is set.
23225         (command-line): Setup quote display again if user expresses
23226         a preference in .emacs.
23228 2015-09-02  K. Handa  <handa@gnu.org>
23230         Fix typo
23231         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
23232         -> OTF_positioning_type_components_mask.
23234         Fix previous change
23235         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
23236         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
23238 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
23240         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
23241         Rename from vc-find-file-hook and make interactive.
23242         (vc-find-file-hook): Redefine as obsolete alias.
23244 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23246         Escape ` and ' in doc
23247         Escape apostrophes and grave accents in docstrings if they are
23248         are supposed to stand for themselves and are not quotes.  Remove
23249         apostrophes from docstring examples like ‘'(calendar-nth-named-day
23250         -1 0 10 year)’ that confuse source code with data.  Do some other
23251         minor docstring fixups as well, e.g., insert a missing close quote.
23253 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
23255         Generalize the prefix-command machinery of C-u
23256         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
23257         (prefix-command-preserve-state-hook): New hooks.
23258         (internal-echo-keystrokes-prefix): New function.
23259         (prefix-command--needs-update, prefix-command--last-echo): New vars.
23260         (prefix-command-update, prefix-command-preserve): New functions.
23261         (reset-this-command-lengths): New compatibility definition.
23262         (universal-argument--mode): Call prefix-command-update.
23263         (universal-argument, universal-argument-more, negative-argument)
23264         (digit-argument): Call prefix-command-preserve-state.
23265         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
23266         the "prefix argument" to echo.
23267         (this_command_key_count_reset, before_command_key_count)
23268         (before_command_echo_length): Delete variables.
23269         (echo_add_key): Always add a space.
23270         (echo_char): Remove.
23271         (echo_dash): Don't give up when this_command_key_count is 0, since that
23272         is now the case after a prefix command.
23273         (echo_update): New function, extracted from echo_now.
23274         (echo_now): Use it.
23275         (add_command_key, read_char, record_menu_key): Remove old disabled code.
23276         (command_loop_1): Don't refrain from pushing an undo boundary when
23277         prefix-arg is set.  Remove other prefix-arg special case, now handled
23278         directly in the prefix commands instead.  But call echo_now if there's
23279         a prefix state to echo.
23280         (read_char, record_menu_key): Use echo_update instead of echo_char.
23281         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
23282         (Freset_this_command_lengths): Delete function.
23283         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
23284         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
23285         * lisp/simple.el: Use those new hooks for C-u.
23286         (universal-argument--description): New function.
23287         (prefix-command-echo-keystrokes-functions): Use it.
23288         (universal-argument--preserve): New function.
23289         (prefix-command-preserve-state-hook): Use it.
23290         (command-execute): Call prefix-command-update if needed.
23291         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
23292         (kmacro-step-edit-prefix-index): Delete variables.
23293         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
23294         support for prefix arg commands.
23295         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
23296         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
23297         (cua--shift-control-prefix): Use prefix-command-preserve-state.
23298         Remove now unused arg `arg'.
23299         (cua--prefix-override-handler, cua--prefix-repeat-handler)
23300         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
23301         Update accordingly.
23302         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
23303         any more.
23304         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
23305         if the mark is not set.
23307 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23309         Rework quoting in Emacs Lisp Introduction
23310         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
23311         (if in more detail, type-of-animal in detail, else): Rework the
23312         early example to use " rather than ' so that we don’t burden
23313         complete novices with the low-priority detail of text quoting style.
23314         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
23315         (kill-new function, kill-ring-yank-pointer)
23316         (Complete forward-sentence, Loading Files)
23317         (Code for current-kill, Code for current-kill, yank):
23318         Resurrect the Emacs 22 versions of the code, which uses grave
23319         quoting style in doc strings.
23320         (Complete zap-to-char): Mention how quoting works in doc strings.
23322         Setup quote display only if interactive
23323         * lisp/startup.el (command-line):
23324         Skip call to startup--setup-quote-display if noninteractive.
23325         Without this change, python-shell-prompt-validate-regexps-1
23326         fails in test/automated/python-tests.el when run in an
23327         en_US.utf8 locale on Fedora.
23329 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
23331         Use defalias at the top level
23332         * lisp/gnus/gnus-util.el (gnus-format-message):
23333         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
23334         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
23336 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23338         terminal-init-w32console mimics command-line
23339         Problem reported by Eli Zaretskii.
23340         * lisp/startup.el (startup--setup-quote-display):
23341         New function, refactored from a part of ‘command-line’.
23342         (command-line): Use it.
23343         * lisp/term/w32console.el (terminal-init-w32console):
23344         Use it, so that this function stays consistent with ‘command-line’.
23346         Display replacement quotes with shadow glyphs
23347         * lisp/startup.el (command-line): When displaying ASCII
23348         replacements for curved quotes, use a shadow glyph instead of a
23349         regular one, to avoid ambiguity.
23351 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
23353         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
23355 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23357         Docstring fixes re quotes in C code
23358         Fix some docstring quoting problems, mostly by escaping apostrophe.
23360 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
23362         Some Tramp password fixes
23363         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
23364         of the hops.
23365         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
23366         at the beginning of the command.  Otherwise, it could be
23367         interpreted as password prompt if the remote host echoes the
23368         command.
23369         (tramp-remote-coding-commands): Add "openssl enc -base64".
23371 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
23373         Make vc-git-working-revision always return the commit hash
23374         * lisp/vc/vc-git.el (vc-git-working-revision):
23375         Return the commit hash (bug#21383).
23376         (vc-git--symbolic-ref): New function, extracted from above.
23377         (vc-git-mode-line-string): Use it.
23379 2015-09-01  K. Handa  <handa@gnu.org>
23381         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
23382         * src/ftfont.c (MFLTGlyphFT): New type.
23383         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
23384         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
23385         elements in the array MFLTGlyphString.glyphs.
23387 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
23389         Improve comments in elisp-mode.el, elisp-mode-tests.el
23390         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
23392         Delete Emacs 25 test in mode-local.el
23393         * lisp/cedet/mode-local.el (describe-mode-local-overload):
23394         Fix missed an edit in previous commit.
23396         Show all known mode-local overrides in *Help*
23397         * lisp/cedet/mode-local.el (describe-mode-local-overload):
23398         Assume Emacs 25. Add all known mode-local overrides.
23400 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
23402         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
23403         Ensure that the article where the search word is found is displayed
23404         and pointed to in the summary buffer.
23406 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
23408         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
23409         When the region is active, but is empty (length 0), act as though
23410         the region was not active; that is, put a comment at the end of
23411         the line.  (Bug#21119)
23413 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
23415         Port tls.el to older Emacs
23416         * lisp/net/tls.el (tls-format-message):
23417         Alias to format-message, or format if not available.
23418         (open-tls-stream): Use it.
23420 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
23422         hideif.el: Recognize .h++ as C++ header
23423         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
23425         isearch: Document character folding mode
23426         * lisp/isearch.el (isearch-forward):
23427         Mention `isearch-toggle-character-fold' in doc string.
23429 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
23431         Quoting fixes in ERC and Eshell
23432         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
23433         * lisp/erc/erc-backend.el (define-erc-response-handler):
23434         * lisp/erc/erc-fill.el (erc-fill-static-center):
23435         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
23436         * lisp/eshell/em-glob.el (eshell-glob-entries):
23437         * lisp/eshell/em-hist.el (eshell-save-some-history):
23438         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
23439         (eshell-shuffle-files):
23440         * lisp/eshell/esh-cmd.el (eshell-do-eval):
23441         * lisp/eshell/esh-proc.el (eshell-process-interact)
23442         (eshell-query-kill-processes):
23443         Respect ‘text-quoting-style’ in diagnostics and doc strings.
23445         Quoting fixes in Gnus
23446         * lisp/gnus/gnus-agent.el:
23447         (gnus-agent-possibly-synchronize-flags-server):
23448         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
23449         * lisp/gnus/gnus-eform.el (gnus-edit-form):
23450         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
23451         (gnus-group-nnimap-edit-acl):
23452         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
23453         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
23454         * lisp/gnus/message.el (message-strip-subject-encoded-words)
23455         (message-check-recipients, message-send-form-letter):
23456         * lisp/gnus/mm-decode.el (mm-display-part):
23457         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
23458         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
23459         (mml-smime-get-ldap-cert):
23460         * lisp/gnus/spam-report.el (spam-report-process-queue):
23461         Respect ‘text-quoting-style’ in diagnostics.
23462         * lisp/gnus/gnus-art.el (article-display-face)
23463         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
23464         Use straight quoting in email.
23465         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
23466         Escape apostrophes in doc strings.
23468         Quoting fixes in lisp mail, mh-e, net, url
23469         * lisp/mail/emacsbug.el (report-emacs-bug)
23470         (report-emacs-bug-hook): Use straight quotes in outgoing email,
23471         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
23472         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
23473         * lisp/mail/rmailout.el (rmail-output-read-file-name):
23474         * lisp/net/imap.el (imap-interactive-login):
23475         * lisp/net/tls.el (open-tls-stream):
23476         * lisp/url/url-auth.el (url-register-auth-scheme):
23477         Respect ‘text-quoting-style’ in diagnostics.
23478         * lisp/mh-e/mh-e.el (mh-sortm-args):
23479         Quote docstring example using text quotes, not as a Lisp quote.
23481 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
23483         Fix some byte-compiler warnings in EDE
23484         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
23485         existing autoloader list, rather than add to it.
23486         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
23487         argument to eieio class constructor.
23488         (ede-show-supported-projects): New.
23489         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
23490         with (oref ... name).
23491         (ede-auto-load-project): Use slot name, not initarg key.
23492         * lisp/cedet/ede/generic.el (ede-generic-load)
23493         (ede-generic-find-matching-target): Use slot name, not initarg key.
23494         (ede-find-target): Use oref-default on class name.
23495         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
23496         class constructor.
23497         (ede-enable-generic-projects): Make project type names unique.
23499 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
23501         Fix directory accessibility tests for w32 network volumes
23502         * src/w32.c (faccessat): Don't fail with network volumes without a
23503         share.
23504         (w32_accessible_directory_p): Handle network volumes without a
23505         share.
23507         Fix handling long file names in readdir on MS-Windows
23508         * src/w32.c (sys_readdir): Append "\*" to the directory after
23509         converting it to UTF-16/ANSI, not before, to avoid overflowing the
23510         260-character limit on file names in filename_to_utf16/ansi.
23512         Make file-accessible-directory-p reliable on MS-Windows
23513         * src/w32.c (w32_accessible_directory_p): New function.
23514         * src/w32.h (w32_accessible_directory_p): Add prototype.
23515         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
23516         w32_accessible_directory_p to test a directory for accessibility
23517         by the current user.  (Bug#21346)
23518         (Ffile_accessible_directory_p): Remove the w32 specific caveat
23519         from the doc string.
23521 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
23523         Don't call do_pending_window_change in signal handlers (Bug#21380)
23524         * src/gtkutil.c (xg_frame_resized):
23525         * src/xterm.c (x_set_window_size):
23526         * src/w32term.c (x_set_window_size): Don't call
23527         do_pending_window_change.
23529 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
23531         Quoting fixes in lisp/org
23532         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
23533         (org-tags-view):
23534         * lisp/org/org-capture.el (org-capture-mode)
23535         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
23536         (org-ctags-ask-append-topic):
23537         * lisp/org/org.el (org-time-string-to-time)
23538         (org-time-string-to-absolute):
23539         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
23540         (org-ctags-ask-append-topic):
23541         * lisp/org/org.el (org-time-string-to-time)
23542         (org-time-string-to-absolute):
23543         Respect ‘text-quoting-style’ in diagnostics.
23544         * lisp/org/org-agenda.el (org-agenda-custom-commands)
23545         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
23546         * lisp/org/org-capture.el (org-capture-fill-template):
23547         Avoid contraction in output file that might be ASCII.
23548         * lisp/org/org-compat.el (format-message):
23549         Define if not already defined, for backward compatibility.
23550         * lisp/org/org-src.el (org-edit-src-save):
23551         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
23552         Escape apostrophes in diagnostics.
23554         Treat “instead” strings as docstrings
23555         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
23556         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
23557         Substitute quotes in instead strings.
23559 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
23561         Better documentation of seq-let
23562         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
23563         documentation of seq-let.
23565 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
23567         * lisp/international/ccl.el: Fix quoting.
23569         Quoting fixes in lisp/international and lisp/leim
23570         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
23571         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
23572         * lisp/international/mule-cmds.el:
23573         (select-safe-coding-system-interactively, leim-list-file-name):
23574         * lisp/international/quail.el (quail-use-package, quail-help):
23575         * lisp/international/titdic-cnv.el (tit-process-header)
23576         (miscdic-convert):
23577         Respect text quoting style in doc strings and diagnostics.
23578         * lisp/international/quail.el (lisp/international/quail.el):
23579         * lisp/leim/quail/ethiopic.el ("ethiopic"):
23580         Escape apostrophes in doc strings.
23582         Make ‘text-quoting-style’ a plain defvar
23583         It doesn’t need customization, as it’s likely useful only by experts.
23584         Suggested by Stefan Monnier in:
23585         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
23586         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
23588         Quoting fixes in lisp/textmodes
23589         * lisp/textmodes/bibtex.el (bibtex-validate)
23590         (bibtex-validate-globally, bibtex-search-entries):
23591         * lisp/textmodes/ispell.el (ispell-command-loop):
23592         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
23593         * lisp/textmodes/texinfmt.el (texinfmt-version)
23594         (texinfo-format-region, texinfo-format-buffer-1):
23595         * lisp/textmodes/two-column.el (2C-split):
23596         Respect text quoting style in doc strings and diagnostics.
23597         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
23598         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
23599         Escape apostrophes in doc strings.
23601         Documentation fixes re quotes
23602         Prefer curved quotes in examples if users will typically see
23603         curved quotes when the examples run.
23604         Mention format-message when appropriate.
23605         Don’t use @code in examples.
23606         Quote an apostrophe with @kbd.
23608         Quoting fixes in lisp/progmodes
23609         * lisp/progmodes/cc-engine.el (c-bos-report-error):
23610         * lisp/progmodes/cpp.el (cpp-edit-reset):
23611         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
23612         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
23613         (etags-tags-apropos, list-tags, tags-apropos):
23614         * lisp/progmodes/executable.el (executable-set-magic):
23615         * lisp/progmodes/octave.el (octave-sync-function-file-names)
23616         (octave-help, octave-find-definition-default-filename)
23617         (octave-find-definition):
23618         Respect text quoting style in doc strings and diagnostics.
23619         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
23620         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
23621         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
23622         Escape apostrophes in doc strings.
23623         * lisp/progmodes/cmacexp.el (c-macro-expansion):
23624         Use straight quoting in ASCII comment.
23625         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
23626         (idlwave-pad-keyword):
23627         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
23628         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
23629         (vhdl-electric-semicolon, vhdl-electric-comma)
23630         (vhdl-electric-period, vhdl-electric-equal):
23631         Use directed quotes in diagnostics and doc strings.
23633 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
23635         Minor documentation and NEWS tweak
23636         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
23637         Add an index entry.
23638         * etc/NEWS: Fix a typo in character-fold-to-regexp.
23640 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
23642         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
23643         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
23644         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
23645         Adapt test.
23647 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
23649         Text quoting fixes in cedet, emulation, emacs-lisp
23650         * lisp/cedet/ede.el (ede-check-project-directory):
23651         * lisp/cedet/semantic/analyze/debug.el
23652         (semantic-analyzer-debug-insert-include-summary):
23653         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
23654         * lisp/cedet/semantic/decorate/include.el
23655         (semantic-decoration-unknown-include-describe)
23656         (semantic-decoration-all-include-summary):
23657         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
23658         * lisp/emulation/edt.el (edt-load-keys):
23659         * lisp/emulation/viper-cmd.el
23660         (viper-display-current-destructive-command)
23661         (viper-query-replace, viper-brac-function):
23662         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
23663         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
23664         Respect text quoting style in doc string or diagnostic.
23665         * lisp/cedet/mode-local.el (describe-mode-local-overload):
23666         Use format-message to avoid overtranslating quotes.
23667         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
23668         Escape an apostrophe in a docstring.
23669         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
23671 2015-08-29  Daniel Colascione  <dancol@dancol.org>
23673         Fix which-func for curly quotes: look for symbol, not message
23674         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
23675         imenu-unavailable error symbol instead of trying to match message
23676         exactly.
23677         * lisp/imenu.el (imenu-unavailable): New error.
23678         (imenu-unavailable-error): New function.
23680 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
23682         Fix Python tests on MS-Windows
23683         * test/automated/python-tests.el
23684         (python-shell-calculate-command-1): Run python-shell-interpreter
23685         through shell-quote-argument before comparing with what
23686         python-shell-calculate-command returns.
23687         (python-shell-calculate-pythonpath-1)
23688         (python-shell-calculate-pythonpath-2)
23689         (python-shell-calculate-process-environment-2): Use path-separator
23690         instead of a literal ':'.
23691         (python-shell-calculate-exec-path-2)
23692         (python-shell-calculate-exec-path-3)
23693         (python-shell-calculate-exec-path-4)
23694         (python-shell-with-environment-1)
23695         (python-shell-with-environment-2): Run "/env/bin" through
23696         expand-file-name before comparing with exec-path.  (Bug#21375)
23698 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
23700         Use Core Text types/functions/variables/enumerators directly
23701         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
23702         (CharacterCollection): Remove typedefs.  All uses replaced with
23703         definitions.
23704         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
23705         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
23706         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
23707         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
23708         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
23709         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
23710         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
23711         definitions.
23712         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
23713         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
23714         (MAC_FONT_FORMAT_BITMAP)
23715         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
23716         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
23717         All uses replaced with definitions.
23718         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
23719         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
23720         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
23721         Add compatibility enumerators for older versions.
23722         (mac_font_descriptor_create_with_attributes)
23723         (mac_font_descriptor_create_matching_font_descriptors)
23724         (mac_font_descriptor_create_matching_font_descriptor)
23725         (mac_font_descriptor_copy_attribute)
23726         (mac_font_descriptor_supports_languages)
23727         (mac_font_create_with_name, mac_font_get_size)
23728         (mac_font_copy_family_name, mac_font_copy_character_set)
23729         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
23730         (mac_font_get_descent, mac_font_get_leading)
23731         (mac_font_get_underline_position)
23732         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
23733         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
23734         replaced with definitions.
23735         (mac_font_create_preferred_family_for_attributes)
23736         (mac_font_get_advance_width_for_glyph)
23737         (mac_font_get_bounding_rect_for_glyph)
23738         (mac_font_create_available_families, mac_font_shape):
23739         Remove macros for renamed functions.
23740         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
23741         * src/macfont.m (mac_font_descriptor_supports_languages):
23742         Rename from mac_ctfont_descriptor_supports_languages.
23743         (mac_font_create_preferred_family_for_attributes): Rename from
23744         mac_ctfont_create_preferred_family_for_attributes.
23745         (mac_font_get_advance_width_for_glyph): Rename from
23746         mac_ctfont_get_advance_width_for_glyph.
23747         Use kCTFontOrientationDefault also for older versions.
23748         (mac_font_get_bounding_rect_for_glyph): Rename from
23749         mac_ctfont_get_bounding_rect_for_glyph.
23750         Use kCTFontOrientationDefault also for older versions.
23751         (mac_font_create_available_families): Rename from
23752         mac_ctfont_create_available_families.
23753         (mac_font_equal_in_postscript_name): Rename from
23754         mac_ctfont_equal_in_postscript_name.  All uses changed.
23755         (mac_font_create_line_with_string_and_font): Rename from
23756         mac_ctfont_create_line_with_string_and_font.  All uses changed.
23757         (mac_font_shape): Rename from mac_ctfont_shape.
23758         (mac_font_family_compare): Remove unused declaration.
23760 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
23762         Fix minor text quoting in calc, calendar, vc
23763         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
23764         * lisp/calc/calc-help.el (calc-j-prefix-help):
23765         * lisp/calc/calc-misc.el (calc-help):
23766         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
23767         Escape an apostrophe in a docstring.
23768         * lisp/calc/calc-forms.el (calc-hms-notation):
23769         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
23770         Escape an apostrophe in a diagnostic.
23771         * lisp/calc/calc-misc.el (calc-help):
23772         * lisp/calendar/diary-lib.el (diary-include-files):
23773         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
23774         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
23775         * lisp/vc/ediff-diff.el (ediff-same-contents):
23776         * lisp/vc/ediff-merg.el (ediff-re-merge):
23777         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
23778         * lisp/vc/ediff-util.el (ediff-test-save-region)
23779         (ediff-status-info):
23780         * lisp/vc/ediff.el (ediff-merge-revisions)
23781         (ediff-merge-revisions-with-ancestor):
23782         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
23783         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
23784         Respect text quoting style in doc string or diagnostic.
23785         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
23786         * lisp/vc/add-log.el (change-log-goto-source):
23787         Avoid double-formatting.
23788         * lisp/vc/ediff-init.el (format-message):
23789         New backward-compatibility alias.
23791 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
23793         Fix minor text quoting problems in lisp top level
23794         * lisp/apropos.el (apropos-describe-plist):
23795         * lisp/cus-theme.el (customize-themes):
23796         * lisp/dired.el (dired-log):
23797         * lisp/help-fns.el (describe-variable):
23798         * lisp/hexl.el (hexl-insert-multibyte-char):
23799         * lisp/info.el (Info-finder-find-node):
23800         * lisp/json.el (json-read-string):
23801         * lisp/novice.el (disabled-command-function)
23802         (disabled-command-function):
23803         * lisp/startup.el (normal-mouse-startup-screen):
23804         * lisp/woman.el (WoMan-log, WoMan-warn):
23805         Respect text quoting style in doc string or diagnostic.
23806         * lisp/replace.el (replace-character-fold):
23807         * src/syntax.c (Fmodify_syntax_entry):
23808         Escape an apostrophe in a docstring.
23809         * lisp/tempo.el (tempo-define-template):
23810         Remove confusing apostrophe from docstring.
23811         * lisp/whitespace.el (whitespace-mark-x):
23812         Use directed quotes in docstring.
23814 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
23816         Fix indentation rule in css-mode
23817         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
23818         brackets in presence of pseudo-selectors.  (Bug#21328)
23820 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
23822         Fix a bug in recording a macro while flyspell-mode is active
23823         * lisp/subr.el (sit-for): Don't call read-event when recording a
23824         macro.  (Bug#21329)
23826 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
23828         Tweak startup screen quoting
23829         * lisp/startup.el (normal-splash-screen): Use standard
23830         "M-" abbrevation rather than a confusingly-different one.
23831         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
23833 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
23835         Add test case for ‘format’ bug and refactor
23836         * src/editfns.c (styled_format): Refactor internally, mostly by
23837         moving declarations closer to uses.  This should not affect behavior.
23838         * test/automated/textprop-tests.el (textprop-tests-format): New test.
23840         Fix ‘format’ bug with property offsets
23841         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
23842         bug in calculating string property offsets (Bug#21351).
23844         Use straight quotes in lib-src diagnostics
23845         These auxiliary programs can’t use Emacs’s text-quoting-style,
23846         and it’s too much trouble to redo that mechanism by hand.
23847         So just use straight quotes for now.
23848         * lib-src/ebrowse.c (main):
23849         * lib-src/emacsclient.c (decode_options, main):
23850         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
23851         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
23852         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
23853         (none_help, print_language_names, print_help, add_regex)
23854         (suggest_asking_for_help):
23855         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
23856         Use straight quotes in diagnostics.
23858         ‘text-quoting-style’ fixes for admin
23859         * admin/admin.el (cusver-scan, cusver-check):
23860         * admin/authors.el (authors-canonical-file-name):
23861         * admin/bzrmerge.el (bzrmerge-missing):
23862         Respect ‘text-quoting-style’ in diagnostics.
23864 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
23866         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
23867         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
23868         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
23869         * doc/lispref/internals.texi (Writing Emacs Primitives):
23870         * etc/NEWS:
23871         Document the change.
23872         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
23873         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
23874         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
23875         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
23876         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
23877         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
23878         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
23879         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
23880         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
23881         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
23882         Remove.  All uses removed.  The code now assumes
23883         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
23884         * src/bytecode.c (relocate_byte_stack):
23885         Rename from unmark_byte_stack, since it now only relocates.
23886         All callers changed.
23887         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
23888         with GCPROs removed.
23889         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
23890         * test/automated/finalizer-tests.el (finalizer-basic)
23891         (finalizer-circular-reference, finalizer-cross-reference)
23892         (finalizer-error):
23893         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
23894         Remove tests, as they depend on gc-precise.
23896 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
23898         Improve seq-concatenate for new sequence types
23899         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
23900         ensure that concatenation happens on sequences only.  This makes it
23901         possible to use `seq-concatenate' for new types of seqs.
23902         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
23903         New function used in `seq-concatenate'.
23904         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
23905         for seq-into-sequence.
23907 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
23909         Add mode local overrides to xref-find-definitions
23910         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
23911         (xref-mode-local-overload): New; add mode local overrides to
23912         xref-find-definitions.
23913         * test/automated/elisp-mode-tests.el: Add mode local override tests.
23914         (xref-elisp-test-run): Handle indented defuns.
23915         (xref-elisp-generic-*): Improve doc strings.
23916         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
23917         (elisp--xref-find-definitions): Use it.
23919         Add mode local overrides to describe-function
23920         * lisp/cedet/mode-local.el (describe-mode-local-overload):
23921         New; add mode local overrides to describe-function.
23922         * etc/NEWS: Document change.
23924 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
23926         Prefer straight quoting in some etc text files
23927         These files are plain text and might be used by non-Emacs apps.
23928         They’re mostly ASCII, so just use straight quotes.
23930         Fix quoting in ‘message_with_string’
23931         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
23932         should work now.
23933         * src/xdisp.c (message_to_stderr): New function, refactored from
23934         part of ‘message3_nolog’.
23935         (message3_nolog): Use it.
23936         (message_with_string): Use it.  Don’t mishandle NUL bytes when
23937         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
23938         Use ‘format-message’, not ‘format’, so that quotes are translated.
23940 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
23942         Mention false positives of file-accessible-directory on w32
23943         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
23944         (Bug#21346)
23946 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
23948         Treat error strings as help
23949         * src/print.c (print_error_message): Translate quotes and command
23950         keys in errmsg so that users see, e.g., "Symbol’s value as
23951         variable is void: foo" when text-quoting-style is curved.
23953 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
23955         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
23957 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
23959         Top-level elisp files respect ‘text-quoting-style’
23960         In top-level elisp files, use format-message in diagnostic formats,
23961         so that they follow user preference as per ‘text-quoting-style’
23962         rather than being hard-coded to quote `like this'.
23963         * lisp/allout.el (allout-get-configvar-values):
23964         * lisp/apropos.el (apropos-symbols-internal):
23965         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
23966         (dired-do-create-files-regexp, dired-create-files-non-directory):
23967         * lisp/dired-x.el (dired-do-run-mail):
23968         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
23969         * lisp/disp-table.el (standard-display-european):
23970         * lisp/find-dired.el (find-dired):
23971         * lisp/forms.el (forms-mode):
23972         * lisp/ido.el (ido-buffer-internal):
23973         * lisp/info.el (Info-index-next):
23974         * lisp/outline.el (outline-invent-heading):
23975         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
23976         * lisp/proced.el (proced-log):
23977         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
23978         * lisp/recentf.el (recentf-open-files, recentf-save-list):
23979         * lisp/savehist.el (savehist-save):
23980         * lisp/server.el (server-ensure-safe-dir):
23981         * lisp/ses.el (ses-rename-cell):
23982         * lisp/simple.el (list-processes--refresh):
23983         * lisp/startup.el (command-line):
23984         * lisp/strokes.el (strokes-unset-last-stroke)
23985         (strokes-execute-stroke):
23986         Use format-message so that quotes are restyled.
23987         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
23988         Don’t quote ‘raised’.
23989         * lisp/descr-text.el (describe-char):
23990         * lisp/dirtrack.el (dirtrack-debug-message):
23991         * lisp/hexl.el (hexl-insert-multibyte-char):
23992         Apply substitute-command-keys to help string.
23993         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
23994         (wdired-do-perm-changes):
23995         Let dired-log do the formatting.
23997 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
23999         Go back to grave quoting in Tramp
24000         * lisp/net/tramp-adb.el:
24001         * lisp/net/tramp-cache.el:
24002         * lisp/net/tramp-compat.el:
24003         * lisp/net/tramp-gvfs.el:
24004         * lisp/net/tramp-gw.el:
24005         * lisp/net/tramp-sh.el:
24006         * lisp/net/tramp-smb.el:
24007         * lisp/net/tramp.el:
24008         Stick with grave quoting in diagnostics strings.  This is more
24009         portable to older Emacs, desirable for Tramp.
24010         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
24011         for diagnostic that needs requoting.
24012         * lisp/net/tramp-compat.el (format-message):
24013         Fall back on simple ‘format’, since that’s good enough now.
24015         Go back to grave quoting in Gnus
24016         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
24017         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
24018         (gnus-agent-fetch-headers):
24019         * lisp/gnus/gnus-int.el (gnus-start-news-server):
24020         * lisp/gnus/gnus-registry.el:
24021         (gnus-registry--split-fancy-with-parent-internal)
24022         (gnus-registry-post-process-groups):
24023         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
24024         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
24025         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
24026         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
24027         * lisp/gnus/spam.el (spam-check-blackholes):
24028         Stick with grave quoting in diagnostics strings.  This is more
24029         portable to older Emacs, desirable for Gnus.
24031         Fix customization of text-quoting-style
24032         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
24033         * lisp/wid-edit.el (widget-docstring):
24034         Get raw docstring here since it’s cooked later and should not be
24035         cooked twice.
24036         * lisp/cus-edit.el (custom-group-value-create):
24037         Cook the docstring before inserting it.
24038         * lisp/cus-start.el (text-quoting-style): Quote the customization
24039         docstrings according to the new rules.  Give curved examples.
24041         format-message now curves ` and '
24042         That way, the caller doesn’t have to use curved quotes to
24043         get diagnostics that match the text-quoting-style preferences.
24044         Suggested by Dmitry Gutov in:
24045         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
24046         This means we no longer need %qs, so remove that format.
24047         While we’re at it, fix an unlikely bug and lessen the pressure
24048         on the garbage collector by processing the string once rather
24049         than twice in the usual case.
24050         * doc/lispref/strings.texi (Formatting Strings):
24051         * etc/NEWS: Document this.
24052         * lisp/subr.el (format-message): Remove; now done in C.
24053         * src/callint.c (Fcall_interactively):
24054         * src/editfns.c (Fmessage, Fmessage_box):
24055         Use Fformat_message instead of Finternal__text_restyle
24056         followed by Fformat.
24057         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
24058         uLSQM and uRSQM.
24059         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
24060         when pure ASCII now suffices.  Fix unlikely bug when parsing
24061         unibyte string containing non-ASCII bytes.  Use inline code
24062         rather than memcpy, as it’s a tiny number of bytes.
24063         (Finternal__text_restyle): Remove; no longer used.
24064         (syms_of_doc): Don’t declare it.
24065         * src/editfns.c (Fformat): Rewrite in terms of new function
24066         ‘styled_format’.
24067         (Fformat_message): New function, moved here from subr.el.
24068         (styled_format): New function, with the old guts of Fformat,
24069         except it now optionally transliterates quotes, and it transliterates
24070         traditional grave accent and apostrophe quoting as well.
24071         Remove recently-added q flag; no longer needed or used.
24072         (syms_of_editfns): Define format-message.
24073         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
24074         Remove; no longer need to be global symbols.
24075         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
24076         so that callers can use `%s'.
24077         * src/image.c (image_size_error, xbm_load_image, xbm_load)
24078         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
24079         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
24080         (svg_load_image, gs_load, x_kill_gs_process):
24081         * src/lread.c (load_warn_old_style_backquotes):
24082         * src/xfaces.c (load_pixmap):
24083         * src/xselect.c (x_clipboard_manager_error_1):
24084         Use `%s' instead of %qs in formats.
24086 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
24088         Minor fixes in doc/emacs/search.texi
24089         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
24090         (Special Isearch): Use @w{} to generate several consecutive spaces
24091         with Texinfo 6.  (Bug#21345)
24093 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
24095         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
24096         (tramp-awk-coding-test): New defconsts.
24097         (tramp-remote-coding-commands): Use them.
24098         (tramp-find-inline-encoding): Check for Perl only if necessary.
24100 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
24102         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
24103         index entries for the special form `quote'.
24105 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
24107         Spelling fixes
24109         Gnus format-message typo fix
24110         * lisp/gnus/gnus-util.el (gnus-format-message):
24111         Fix typo when running in older Emacs.
24113         Prefer directed to neutral quotes in docstings and diagnostics.
24114         In docstrings, escape apostrophes that would otherwise be translated
24115         to curved quotes using the newer, simpler rules.
24116         * admin/unidata/unidata-gen.el (unidata-gen-table):
24117         * lisp/align.el (align-region):
24118         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
24119         * lisp/bookmark.el (bookmark-default-annotation-text):
24120         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
24121         * lisp/calc/calc-lang.el (math-read-giac-subscr)
24122         (math-read-math-subscr):
24123         * lisp/calc/calc-misc.el (report-calc-bug):
24124         * lisp/calc/calc-prog.el (calc-fix-token-name)
24125         (calc-read-parse-table-part):
24126         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
24127         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
24128         * lisp/dabbrev.el (dabbrev-expand):
24129         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
24130         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
24131         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
24132         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
24133         * lisp/erc/erc-button.el (erc-nick-popup):
24134         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
24135         * lisp/eshell/em-dirs.el (eshell/cd):
24136         * lisp/eshell/em-glob.el (eshell-glob-regexp):
24137         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
24138         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
24139         * lisp/eshell/esh-opt.el (eshell-show-usage):
24140         * lisp/files-x.el (modify-file-local-variable):
24141         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
24142         (filesets-update-pre010505):
24143         * lisp/find-cmd.el (find-generic, find-to-string):
24144         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
24145         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
24146         (gnus-agent-fetch-headers):
24147         * lisp/gnus/gnus-int.el (gnus-start-news-server):
24148         * lisp/gnus/gnus-registry.el:
24149         (gnus-registry--split-fancy-with-parent-internal):
24150         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
24151         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
24152         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
24153         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
24154         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
24155         * lisp/gnus/spam.el (spam-check-blackholes):
24156         * lisp/mail/feedmail.el (feedmail-run-the-queue):
24157         * lisp/mpc.el (mpc-playlist-rename):
24158         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
24159         * lisp/net/mairix.el (mairix-widget-create-query):
24160         * lisp/net/tramp-cache.el:
24161         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
24162         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
24163         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
24164         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
24165         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
24166         (org-babel-goto-named-result):
24167         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
24168         * lisp/org/ob-ref.el (org-babel-ref-resolve):
24169         * lisp/org/org-agenda.el (org-agenda-prepare):
24170         * lisp/org/org-bibtex.el (org-bibtex-fields):
24171         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
24172         (org-clock-resolve):
24173         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
24174         * lisp/org/org-habit.el (org-habit-parse-todo):
24175         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
24176         (org-mouse-context-menu):
24177         * lisp/org/org-table.el (org-table-edit-formulas):
24178         * lisp/org/ox.el (org-export-async-start):
24179         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
24180         (dun-rooms, dun-endgame-questions):
24181         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
24182         * lisp/progmodes/ada-xref.el (ada-find-executable):
24183         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
24184         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
24185         (flymake-start-syntax-check-process):
24186         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
24187         * lisp/progmodes/sql.el (sql-comint):
24188         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
24189         * lisp/server.el (server-get-auth-key):
24190         * lisp/subr.el (version-to-list):
24191         * lisp/textmodes/reftex-ref.el (reftex-label):
24192         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
24193         * lisp/vc/ediff-diff.el (ediff-same-contents):
24194         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
24195         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
24196         Use directed rather than neutral quotes in diagnostics.
24198         Treat ' like ’ even when not matching `
24199         This is simpler and easier to explain, and should encourage better
24200         typography.  Do this in Electric Quote mode and when translating
24201         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
24202         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
24203         * doc/emacs/text.texi (Quotation Marks):
24204         * doc/lispref/help.texi (Keys in Documentation):
24205         * etc/NEWS:
24206         Document this.
24207         * lisp/electric.el (electric-quote-post-self-insert-function):
24208         * src/doc.c (Fsubstitute_command_keys):
24209         Always treat ' like ’ even when not matched by an open quote.
24211 2015-08-25  Glenn Morris  <rgm@gnu.org>
24213         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
24214         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
24216 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24218         * src/macfont.m (macfont_create_family_with_symbol):
24219         Accept localized names.
24221 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
24223         Tramp diagnostics as per ‘text-quoting-style’
24224         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
24225         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
24226         (tramp-adb-handle-delete-directory)
24227         (tramp-adb-handle-delete-file)
24228         (tramp-adb-handle-file-local-copy)
24229         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
24230         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
24231         (tramp-adb-maybe-open-connection):
24232         * lisp/net/tramp-cache.el:
24233         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
24234         (tramp-compat-octal-to-decimal)
24235         (tramp-compat-coding-system-change-eol-conversion):
24236         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
24237         (tramp-gvfs-do-copy-or-rename-file)
24238         (tramp-gvfs-handle-delete-directory)
24239         (tramp-gvfs-handle-delete-file)
24240         (tramp-gvfs-handle-expand-file-name)
24241         (tramp-gvfs-handle-file-local-copy)
24242         (tramp-gvfs-handle-file-notify-add-watch)
24243         (tramp-gvfs-handle-make-directory)
24244         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
24245         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
24246         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
24247         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
24248         (tramp-sh-handle-set-visited-file-modtime)
24249         (tramp-sh-handle-set-file-modes)
24250         (tramp-sh-handle-file-name-all-completions)
24251         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
24252         (tramp-do-copy-or-rename-file-directly)
24253         (tramp-do-copy-or-rename-file-out-of-band)
24254         (tramp-sh-handle-make-directory)
24255         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
24256         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
24257         (tramp-sh-handle-start-file-process)
24258         (tramp-sh-handle-file-local-copy)
24259         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
24260         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
24261         (tramp-find-file-exists-command, tramp-open-shell)
24262         (tramp-find-shell)
24263         (tramp-open-connection-setup-interactive-shell)
24264         (tramp-find-inline-encoding, tramp-find-inline-compress)
24265         (tramp-compute-multi-hops, tramp-maybe-open-connection)
24266         (tramp-wait-for-output, tramp-send-command-and-check)
24267         (tramp-send-command-and-read, tramp-get-remote-path)
24268         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
24269         (tramp-get-ls-command-with-quoting-style)
24270         (tramp-get-test-command, tramp-get-remote-ln)
24271         (tramp-get-remote-perl, tramp-get-remote-stat)
24272         (tramp-get-remote-readlink, tramp-get-remote-trash)
24273         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
24274         (tramp-get-remote-inotifywait, tramp-get-remote-id)
24275         (tramp-get-remote-python):
24276         * lisp/net/tramp-smb.el (tramp-smb-errors)
24277         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
24278         (tramp-smb-handle-delete-directory)
24279         (tramp-smb-handle-delete-file)
24280         (tramp-smb-handle-file-local-copy)
24281         (tramp-smb-handle-make-directory)
24282         (tramp-smb-handle-make-directory-internal)
24283         (tramp-smb-handle-make-symbolic-link)
24284         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
24285         (tramp-smb-handle-set-file-modes)
24286         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
24287         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
24288         (tramp-process-actions):
24289         Generate diagnostics according to ‘text-quoting-style’, by
24290         using curved quotes in format strings and ‘format-message’
24291         when appropriate.
24292         * lisp/net/tramp-compat.el (format-message):
24293         Define a replacement, if it’s an older version of Emacs
24294         that doesn’t have it already.
24296         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
24298 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
24300         Fix documentation for `save-excursion'
24301         * doc/lispref/positions.texi (Excursions):
24302         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
24303         (Template for save-excursion, Point and mark): `save-excursion'
24304         does not save&restore the mark any more.
24306 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
24308         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
24309         New defconsts.
24310         (tramp-do-file-attributes-with-stat)
24311         (tramp-do-directory-files-and-attributes-with-stat): Use them.
24312         (tramp-convert-file-attributes): Remove double slashes in symlinks.
24313         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
24314         Handle symlinks with "//" in the file name.
24316         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
24318 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
24320         Fix cl-subseq and cl-concatenate
24321         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
24322         seq functions.
24323         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
24324         seq-concatenate.
24326 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
24328         Fix full-screen code when there is no window manager (Bug#21317)
24329         * src/xterm.h (x_wm_supports): Declare external.
24330         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
24331         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
24332         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
24333         `fullscreen' frame parameter.
24334         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
24335         without a window manager.
24337 2015-08-24  Glenn Morris  <rgm@gnu.org>
24339         * lisp/version.el (emacs-version): No longer include build host.
24340         * doc/lispref/intro.texi (Version Info): Update example.
24342 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
24344         * doc/lispref/elisp.texi: Fix typo in previous change.
24346         More-conservative ‘format’ quote restyling
24347         Instead of restyling curved quotes for every call to ‘format’,
24348         create a new function ‘format-message’ that does the restyling,
24349         and using the new function instead of ‘format’ only in contexts
24350         where this seems appropriate.
24351         Problem reported by Dmitry Gutov and Andreas Schwab in:
24352         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
24353         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
24354         * doc/lispref/commands.texi (Using Interactive):
24355         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
24356         * doc/lispref/display.texi (Displaying Messages, Progress):
24357         * doc/lispref/elisp.texi:
24358         * doc/lispref/help.texi (Keys in Documentation):
24359         * doc/lispref/minibuf.texi (Minibuffer Misc):
24360         * doc/lispref/strings.texi (Formatting Strings):
24361         * etc/NEWS:
24362         Document the changes.
24363         * lisp/abbrev.el (expand-region-abbrevs):
24364         * lisp/apropos.el (apropos-library):
24365         * lisp/calc/calc-ext.el (calc-record-message)
24366         (calc-user-function-list):
24367         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
24368         * lisp/calc/calc-lang.el (math-read-big-balance):
24369         * lisp/calc/calc-store.el (calc-edit-variable):
24370         * lisp/calc/calc-units.el (math-build-units-table-buffer):
24371         * lisp/calc/calc-yank.el (calc-edit-mode):
24372         * lisp/calendar/icalendar.el (icalendar-export-region)
24373         (icalendar--add-diary-entry):
24374         * lisp/cedet/mode-local.el (mode-local-print-binding)
24375         (mode-local-describe-bindings-2):
24376         * lisp/cedet/semantic/complete.el (semantic-completion-message):
24377         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
24378         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
24379         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
24380         * lisp/descr-text.el (describe-text-properties-1, describe-char):
24381         * lisp/dframe.el (dframe-message):
24382         * lisp/dired-aux.el (dired-query):
24383         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
24384         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
24385         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
24386         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
24387         (cconv-analyze-form):
24388         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
24389         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
24390         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
24391         * lisp/emacs-lisp/edebug.el (edebug-format):
24392         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
24393         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
24394         (eldoc-message):
24395         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
24396         * lisp/emacs-lisp/find-func.el (find-function-library):
24397         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
24398         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
24399         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
24400         * lisp/emacs-lisp/package.el (package-compute-transaction)
24401         (package-install-button-action, package-delete-button-action)
24402         (package-menu--list-to-prompt):
24403         * lisp/emacs-lisp/timer.el (timer-event-handler):
24404         * lisp/emacs-lisp/warnings.el (lwarn, warn):
24405         * lisp/emulation/viper-cmd.el:
24406         (viper-toggle-parse-sexp-ignore-comments)
24407         (viper-kill-buffer, viper-brac-function):
24408         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
24409         * lisp/facemenu.el (facemenu-add-new-face):
24410         * lisp/faces.el (face-documentation, read-face-name)
24411         (face-read-string, read-face-font, describe-face):
24412         * lisp/files.el (find-alternate-file, hack-local-variables)
24413         (hack-one-local-variable--obsolete, write-file)
24414         (basic-save-buffer, delete-directory):
24415         * lisp/format.el (format-write-file, format-find-file)
24416         (format-insert-file):
24417         * lisp/help-fns.el (help-fns--key-bindings)
24418         (help-fns--compiler-macro, help-fns--obsolete)
24419         (help-fns--interactive-only, describe-function-1)
24420         (describe-variable):
24421         * lisp/help.el (describe-mode):
24422         * lisp/info-xref.el (info-xref-output):
24423         * lisp/info.el (Info-virtual-index-find-node)
24424         (Info-virtual-index, info-apropos):
24425         * lisp/international/kkc.el (kkc-error):
24426         * lisp/international/mule-cmds.el:
24427         (select-safe-coding-system-interactively)
24428         (select-safe-coding-system, describe-input-method):
24429         * lisp/international/mule-conf.el (code-offset):
24430         * lisp/international/mule-diag.el (describe-character-set)
24431         (list-input-methods-1):
24432         * lisp/international/quail.el (quail-error):
24433         * lisp/minibuffer.el (minibuffer-message):
24434         * lisp/mpc.el (mpc--debug):
24435         * lisp/msb.el (msb--choose-menu):
24436         * lisp/net/ange-ftp.el (ange-ftp-message):
24437         * lisp/net/gnutls.el (gnutls-message-maybe):
24438         * lisp/net/newst-backend.el (newsticker--sentinel-work):
24439         * lisp/net/newst-treeview.el (newsticker--treeview-load):
24440         * lisp/net/nsm.el (nsm-query-user):
24441         * lisp/net/rlogin.el (rlogin):
24442         * lisp/net/soap-client.el (soap-warning):
24443         * lisp/net/tramp.el (tramp-debug-message):
24444         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
24445         * lisp/nxml/nxml-parse.el (nxml-parse-error):
24446         * lisp/nxml/rng-cmpct.el (rng-c-error):
24447         * lisp/nxml/rng-match.el (rng-compile-error):
24448         * lisp/nxml/rng-uri.el (rng-uri-error):
24449         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
24450         * lisp/org/org-ctags.el:
24451         (org-ctags-ask-rebuild-tags-file-then-find-tag):
24452         * lisp/proced.el (proced-log):
24453         * lisp/progmodes/ebnf2ps.el (ebnf-log):
24454         * lisp/progmodes/flymake.el (flymake-log):
24455         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
24456         * lisp/replace.el (occur-1):
24457         * lisp/simple.el (execute-extended-command)
24458         (undo-outer-limit-truncate, define-alternatives):
24459         * lisp/startup.el (command-line):
24460         * lisp/subr.el (error, user-error, add-to-list):
24461         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
24462         (tutorial--find-changed-keys):
24463         * src/callint.c (Fcall_interactively):
24464         * src/editfns.c (Fmessage, Fmessage_box):
24465         Restyle the quotes of format strings intended for use as a
24466         diagnostic, when restyling seems appropriate.
24467         * lisp/subr.el (format-message): New function.
24468         * src/doc.c (Finternal__text_restyle): New function.
24469         (syms_of_doc): Define it.
24471 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
24473         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
24475 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24477         python.el: Fix python-shell-buffer-substring on indented code
24478         (Bug#21086)
24479         * lisp/progmodes/python.el (python-shell-buffer-substring):
24480         Respect current line indentation when calculating string.
24481         * test/automated/python-tests.el
24482         (python-shell-buffer-substring-10)
24483         (python-shell-buffer-substring-11)
24484         (python-shell-buffer-substring-12): New tests.
24486 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
24488         Fix minor glitches from ‘format’ reversion
24489         * doc/lispref/strings.texi (Formatting Strings):
24490         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
24491         Documentation’, not below.
24492         * src/syntax.c (Finternal_describe_syntax_value):
24493         Prefer AUTO_STRING to build_string where either will do, as
24494         AUTO_STRING is a bit faster.
24496 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24498         python.el: Defer shell setup code until first interactive prompt
24499         * lisp/progmodes/python.el
24500         (python-shell-comint-watch-for-first-prompt-output-filter):
24501         New function.
24502         (inferior-python-mode): Use it.
24503         (python-shell-first-prompt-hook): New hook.
24504         (python-shell-send-setup-code)
24505         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
24506         this hook instead of inferior-python-hook.
24508 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
24510         Remove the calls to `seq-into` from `seq-concatenate`
24511         Since most new types of seq would have to be defined as sequences (cons
24512         cells or CL structs, mostly), there is no need to convert the seqs to
24513         sequences (which can be a fairly expensive operation).
24514         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
24515         sequences.
24517 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24519         python.el: Fix completion for pdb interactions
24520         * lisp/progmodes/python.el (python-shell-completion-setup-code):
24521         Simplify.  Toggle print_mode for native wrapped completer.
24522         (python-shell-completion-native-setup): Ensure process buffer.
24523         Add print_mode attribute to completer wrapper to toggle returning
24524         or printing candidates.
24525         (python-shell-completion-native-get-completions): Cleanup.
24526         (python-shell-completion-get-completions): Cleanup.
24527         (python-shell-completion-at-point): Perform prompt checks.
24528         Force fallback completion in pdb interactions.
24530 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
24532         Make seq.el more extensible by using cl-defmethod
24533         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
24534         make it easier to extend seq.el with new "seq types".
24535         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
24536         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
24537         subseq in cl-extra.el, and use it in seq.el.
24539 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24541         python.el: Fix prompt detection with user overridden interpreter
24542         * lisp/progmodes/python.el (python-shell-prompt-detect):
24543         Honor buffer local python-shell-interpreter and
24544         python-shell-interpreter-interactive-arg.
24546 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
24548         Support exec-directory with non-ASCII characters on Windows
24549         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
24550         in the system's ANSI codepage, when it is used for invoking
24551         cmdproxy.
24553 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
24555         Revert "Extend ‘format’ to translate curved quotes"
24556         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
24558         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
24559         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
24561 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
24563         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
24564         Clarify "invisible window".
24566 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
24568         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
24569         magic-fallback-mode-alist.
24571 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24573         python.el: fallback completion, ffap and eldoc setup enhancements
24574         Setup codes are now sent continuously so that the current frame is
24575         always taken into account.  This allows working within debuggers
24576         and always keeping a fresh version of setup codes that will return
24577         proper results.
24578         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
24579         (python-shell-send-setup-code): Send code only when
24580         python-shell-setup-codes is non-nil.
24581         (python-shell-completion-string-code): Cleanup trailing newline.
24582         (python-shell-completion-get-completions): Always use
24583         python-shell-completion-setup-code.
24584         (python-ffap-setup-code): Work with any object, not only modules.
24585         (python-ffap-string-code): Cleanup trailing newline.
24586         (python-ffap-module-path): Always use python-ffap-setup-code.
24587         (python-eldoc-string-code): Cleanup trailing newline.
24588         (python-eldoc--get-doc-at-point): Always use
24589         python-eldoc-setup-code.  Return non-nil only if docstring is
24590         found.
24592         python.el: Increase native completion robustness
24593         * lisp/progmodes/python.el (python-shell-completion-native-setup):
24594         Make completer print real candidates and just return dummy ones to
24595         avoid input modification.
24596         (python-shell-completion-native-get-completions): Set
24597         comint-redirect-insert-matching-regexp to non-nil and make
24598         comint-redirect-finished-regexp match the last dummy candidate.
24599         Use python-shell-accept-process-output to wait for the full list
24600         of candidates.
24602 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
24604         Fix invocation of programs via cmdproxy.exe
24605         * src/w32proc.c (sys_spawnve): Use exec-directory, not
24606         invocation-directory, for finding cmdproxy.exe.  When Emacs is
24607         run from the source tree, look for cmdproxy.exe in the same source
24608         tree.  (Bug#21323)
24610 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
24612         Handle comments inside unquoted URIs in css-mode
24613         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
24614         (css-syntax-propertize-function): New defconst.
24615         (css--font-lock-keywords): Handle parens around unquoted URIs.
24616         (css-mode): Set `syntax-propertize-function'.
24618 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
24620         Support invocation of Hunspell with multiple dictionaries
24621         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
24622         Support lists of dictionaries of the form "DICT1,DICT2,...".
24623         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
24625         Minor formatting changes in ispell.el
24626         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
24627         (ispell-print-if-debug, ispell-aspell-find-dictionary)
24628         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
24629         (ispell-hunspell-dictionary-alist)
24630         (ispell-hunspell-fill-dictionary-entry)
24631         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
24632         (ispell-buffer-with-debug, ispell-complete-word)
24633         (ispell-current-dictionary, ispell-current-personal-dictionary)
24634         (ispell-accept-output, ispell-minor-mode)
24635         (ispell-personal-dictionary, ispell-dictionary-alist)
24636         (ispell-really-aspell, ispell-really-hunspell)
24637         (ispell-encoding8-command, ispell-aspell-supports-utf8)
24638         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
24639         Fix whitespace, inconsistent capitalization, and arguments in doc
24640         strings.
24642 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
24644         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
24645         function refused to resize a size-preserved window.
24647 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
24649         * doc/lispref/windows.texi (Selecting Windows): Improve
24650         documentation and indexing of 'window-use-time'.
24652 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
24654         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
24655         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
24656         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
24657         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
24658         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
24659         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
24660         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
24661         Fix up commenting style.
24663 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
24665         text-quoting-style in emacs-lisp diagnostics
24666         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
24667         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
24668         (ad-disable-advice, ad-remove-advice, ad-set-argument)
24669         (ad-set-arguments):
24670         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
24671         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
24672         (byte-optimize-while, byte-optimize-apply):
24673         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
24674         (byte-compile-log-file, byte-compile-format-warn)
24675         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
24676         (byte-compile-cl-warn)
24677         (byte-compile-warn-about-unresolved-functions)
24678         (byte-compile-file, byte-compile-fix-header)
24679         (byte-compile--declare-var, byte-compile-file-form-defmumble)
24680         (byte-compile-form, byte-compile-normal-call)
24681         (byte-compile-variable-ref, byte-compile-variable-set)
24682         (byte-compile-subr-wrong-args, byte-compile-setq-default)
24683         (byte-compile-negation-optimizer)
24684         (byte-compile-condition-case--old)
24685         (byte-compile-condition-case--new, byte-compile-save-excursion)
24686         (byte-compile-defvar, byte-compile-autoload)
24687         (byte-compile-lambda-form)
24688         (byte-compile-make-variable-buffer-local, display-call-tree)
24689         (batch-byte-compile):
24690         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
24691         (cconv-analyze-form):
24692         * lisp/emacs-lisp/chart.el (chart-space-usage):
24693         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
24694         (check-declare-warn, check-declare-file)
24695         (check-declare-directory):
24696         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
24697         (checkdoc-message-text-engine):
24698         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
24699         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
24700         (cl-symbol-macrolet):
24701         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
24702         * lisp/emacs-lisp/copyright.el (copyright)
24703         (copyright-update-directory):
24704         * lisp/emacs-lisp/edebug.el (edebug-read-list):
24705         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
24706         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
24707         (eieio-oref, eieio-oset-default):
24708         * lisp/emacs-lisp/eieio-speedbar.el:
24709         (eieio-speedbar-child-make-tag-lines)
24710         (eieio-speedbar-child-description):
24711         * lisp/emacs-lisp/eieio.el (defclass, change-class):
24712         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
24713         (elint-init-form, elint-check-defalias-form)
24714         (elint-check-let-form):
24715         * lisp/emacs-lisp/ert.el (ert-get-test):
24716         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
24717         (find-function-library):
24718         * lisp/emacs-lisp/generator.el (iter-yield):
24719         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
24720         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
24721         * lisp/emacs-lisp/package-x.el (package-upload-file):
24722         * lisp/emacs-lisp/package.el (package-version-join)
24723         (package-disabled-p, package-activate-1, package-activate)
24724         (package--download-one-archive)
24725         (package--download-and-read-archives)
24726         (package-compute-transaction, package-install-from-archive)
24727         (package-install, package-install-selected-packages)
24728         (package-delete, package-autoremove)
24729         (package-install-button-action, package-delete-button-action)
24730         (package-menu-hide-package, package-menu--list-to-prompt)
24731         (package-menu--perform-transaction)
24732         (package-menu--find-and-notify-upgrades):
24733         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
24734         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
24735         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
24736         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
24737         * lisp/emacs-lisp/smie.el (smie-config-save):
24738         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
24739         * lisp/emacs-lisp/testcover.el (testcover-1value):
24740         Use curved quotes in diagnostic format strings.
24742 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24744         python.el: Ensure remote process-environment on non-interactive processes
24745         * lisp/progmodes/python.el
24746         (python-shell-tramp-refresh-process-environment): New function.
24747         (python-shell-with-environment): Use it.
24748         * test/automated/python-tests.el (python-shell-with-environment-2):
24749         Update.
24751         python.el: Enhancements to process environment setup.
24752         * lisp/progmodes/python.el (python-shell-process-environment)
24753         (python-shell-extra-pythonpaths, python-shell-exec-path)
24754         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
24755         (python-shell-setup-codes): Remove :safe.
24756         (python-shell-remote-exec-path): New defcustom.
24757         (python-shell--add-to-path-with-priority): New macro.
24758         (python-shell-calculate-pythonpath): Give priority to
24759         python-shell-extra-pythonpaths.  Update docstring.
24760         (python-shell-calculate-process-environment): Give priority to
24761         python-shell-process-environment.  Update docstring.
24762         (python-shell-calculate-exec-path): Give priority to
24763         python-shell-exec-path and calculated virtualenv bin directory.
24764         Update docstring.
24765         (python-shell-tramp-refresh-remote-path): New function.
24766         (python-shell-with-environment): Use it when working remotely and
24767         do not modify tramp-remote-path.  Allow nesting.
24768         (python-shell-calculate-command): Remove useless
24769         python-shell-with-environment call.
24770         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
24771         (python-shell-calculate-pythonpath-2)
24772         (python-shell-calculate-process-environment-6)
24773         (python-shell-calculate-process-environment-7)
24774         (python-shell-calculate-process-environment-8)
24775         (python-shell-calculate-exec-path-3)
24776         (python-shell-calculate-exec-path-4)
24777         (python-shell-calculate-exec-path-5)
24778         (python-shell-calculate-exec-path-6)
24779         (python-shell-with-environment-3): New tests.
24780         (python-shell-calculate-process-environment-2)
24781         (python-shell-calculate-process-environment-3)
24782         (python-shell-calculate-process-environment-4)
24783         (python-shell-calculate-process-environment-5)
24784         (python-shell-calculate-exec-path-1)
24785         (python-shell-calculate-exec-path-2)
24786         (python-shell-with-environment-1)
24787         (python-shell-with-environment-2): Update and simplify.
24789 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
24791         Avoid hard-coding "M-x command" in docstrings
24792         * lisp/calendar/todo-mode.el (todo-mode):
24793         * lisp/desktop.el (desktop-save-mode):
24794         * lisp/edmacro.el (edit-kbd-macro):
24795         * lisp/emacs-lisp/package.el (package-menu-execute):
24796         * lisp/emulation/viper-cmd.el (viper-ask-level):
24797         * lisp/emulation/viper-init.el (viper-expert-level):
24798         * lisp/filesets.el (filesets-add-buffer):
24799         * lisp/follow.el (follow-mode):
24800         * lisp/gnus/auth-source.el (auth-sources):
24801         * lisp/international/ogonek.el (ogonek-informacja)
24802         (ogonek-information):
24803         * lisp/net/tramp.el (tramp-process-actions):
24804         * lisp/org/org-gnus.el (org-gnus-no-new-news):
24805         * lisp/org/org.el (org-ellipsis):
24806         * lisp/progmodes/python.el (python-shell-get-process-or-error):
24807         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
24808         * lisp/server.el (server-start):
24809         * lisp/type-break.el (type-break-noninteractive-query):
24810         * lisp/userlock.el (ask-user-about-supersession-help):
24811         * lisp/whitespace.el (whitespace-report-region):
24812         Prefer (substitute-command-keys "`\\[foo-command]'")
24813         to "`M-x foo-command'" in docstrings and the like.
24815 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
24817         Use add-function for prettify-symbols-compose-predicate
24818         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
24819         prettify-symbols-compose-predicate in terms of add-function.
24820         * etc/NEWS: Mention prettify-symbols-compose-predicate and
24821         prettify-symbols-mode support in tex-mode.
24823 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
24825         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
24826         (smie-indent-exps, smie-indent-keyword): Use it.
24827         * test/indent/css-mode.css: Test alignment with leading comment.
24829 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
24831         Respect text-quoting-style in (*Finder*) menus
24832         * lisp/info.el (info--prettify-description):
24833         Treat description as a docstring, so that it's requoted as
24834         per text-quoting-style.
24836 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
24838         Document `window-use-time' in Elisp manual
24839         * doc/lispref/windows.texi (Selecting Windows): Document
24840         `window-use-time'.
24842 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
24844         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
24845         This is a cleaner fix for Bug#21260 than the previous change.
24847 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
24849         Respect text-quoting-style in calc
24850         In calc, tespect text-quoting-style preference in diagnostic
24851         formats and fix a few similar problems in docstrings.
24852         * lisp/calc/calc-aent.el (math-read-factor):
24853         * lisp/calc/calc-embed.el (calc-do-embedded):
24854         * lisp/calc/calc-ext.el (calc-user-function-list)
24855         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
24856         * lisp/calc/calc-help.el (calc-describe-key)
24857         (calc-describe-thing):
24858         * lisp/calc/calc-lang.el (calc-c-language)
24859         (math-parse-fortran-vector-end, math-parse-tex-sum)
24860         (math-parse-eqn-matrix, math-parse-eqn-prime)
24861         (calc-yacas-language, calc-maxima-language, calc-giac-language)
24862         (math-read-big-rec, math-read-big-balance):
24863         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
24864         (calc-auto-recompute):
24865         * lisp/calc/calc-prog.el (calc-user-define-invocation)
24866         (math-do-arg-check):
24867         * lisp/calc/calc-store.el (calc-edit-variable):
24868         * lisp/calc/calc-units.el (math-build-units-table-buffer):
24869         * lisp/calc/calc-vec.el (math-read-brackets):
24870         * lisp/calc/calc-yank.el (calc-edit-mode):
24871         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
24872         Use curved quotes in diagnostic format strings.
24873         * lisp/calc/calc-help.el (calc-describe-thing):
24874         Format docstrings with substitute-command-keys.
24875         * lisp/calc/calc-help.el (calc-j-prefix-help):
24876         * lisp/calc/calc-misc.el (calc-help):
24877         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
24878         Escape a docstring "`".
24880 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
24882         Fix documentation of 'menu-set-font' and 'set-frame-font'
24883         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
24884         * doc/lispref/frames.texi (Frame Font): Document that
24885         set-frame-font with the last argument 't' will also make the font
24886         the default for the future GUI frames.
24888         Document '--create-frame' option to emacsclient
24889         * doc/emacs/misc.texi (emacsclient Options): Document the
24890         '--create-frame' option.  (Bug#21308)
24892 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
24894         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
24896 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
24898         Document 'get-mru-window' in the ELisp manual
24899         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
24900         'get-mru-window'.  (Bug#21306)
24902         Clarify documentation of 'get-buffer-window-list'
24903         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
24904         current window, if relevant, will be the first in the list
24905         returned by 'get-buffer-window-list'.
24906         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
24908 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
24910         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
24911         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
24912         `switch-to-buffer'.
24914 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
24916         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
24917         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
24918         `display-buffer' instead of `switch-to-buffer'.
24920 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
24922         Follow user preference in calendar diagnostics
24923         Respect text-quoting-style preference in diagnostic formats by
24924         using curved quotes (which are translated as per text-quoting-style)
24925         instead of grave accent and apostrophe (which are not).
24926         * lisp/calendar/appt.el (appt-display-message):
24927         * lisp/calendar/diary-lib.el (diary-check-diary-file)
24928         (diary-mail-entries, diary-from-outlook):
24929         * lisp/calendar/icalendar.el (icalendar-export-region)
24930         (icalendar--convert-float-to-ical)
24931         (icalendar--convert-date-to-ical)
24932         (icalendar--convert-ical-to-diary)
24933         (icalendar--convert-recurring-to-diary)
24934         (icalendar--add-diary-entry):
24935         * lisp/calendar/time-date.el (format-seconds):
24936         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
24937         (timeclock-make-hours-explicit):
24938         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
24939         (todo-item-mark, todo-check-format)
24940         (todo-insert-item--next-param, todo-edit-item--next-key)
24941         (todo-mode):
24942         Use curved quotes in diagnostic format strings.
24943         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
24944         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
24945         Just use straight quoting for simple test case.
24947 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
24949         * src/gfilenotify.c (Fgfile_add_watch):
24950         Handle errors from g_file_monitor.
24952 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
24954         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
24955         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
24956         frame" instead of "non-minibuffer frame".
24958         Fix frame geometry related text
24959         * doc/lispref/frames.texi (Frame Layout):
24960         Rename `x-frame-geometry' to `frame-geometry'.
24961         * doc/lispref/frames.texi (Mouse Position):
24962         * doc/lispref/windows.texi (Coordinates and Windows):
24963         Use `set-mouse-absolute-pixel-position' instead of
24964         `x-set-mouse-absolute-pixel-position'.
24966         Sanitize frame geometry related functions
24967         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
24968         (Fx_frame_edges): Rename to Fns_frame_edges.
24969         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
24970         (Fx_frame_edges): Rename to Fw32_frame_edges.
24971         (Fx_mouse_absolute_pixel_position): Rename to
24972         Fw32_mouse_absolute_pixel_position.
24973         (Fx_set_mouse_absolute_pixel_position): Rename to
24974         Fw32_set_mouse_absolute_pixel_position.
24975         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
24976         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
24977         (ns-frame-edges, w32-mouse-absolute-pixel-position)
24978         (x-mouse-absolute-pixel-position)
24979         (w32-set-mouse-absolute-pixel-position)
24980         (x-set-mouse-absolute-pixel-position): Declare.
24981         (frame-geometry, mouse-absolute-pixel-position)
24982         (set-mouse-absolute-pixel-position): New functions.
24983         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
24985 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
24987         Fix MinGW64 build broken by latest w32uniscribe.c changes
24988         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
24989         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
24990         (Bug#21260)
24992 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
24994         Add TeX defaults for prettify-symbol-mode
24995         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
24996         Rename from tex-prettify-symbols-alist.
24997         (tex--prettify-symbols-compose-p): New function.
24998         (tex-common-initialization): Use them as prettify-symbols-alist
24999         and prettify-symbols-compose-predicate.
25001         Generalize prettify-symbols to arbitrary modes
25002         * lisp/progmodes/prog-mode.el
25003         (prettify-symbols-default-compose-p): New function.
25004         (prettify-symbols-compose-predicate): New variable.
25005         (prettify-symbols--compose-symbol): Use it.
25007 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
25009         Don't quote symbols 'like-this' in docstrings etc.
25010         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
25011         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
25012         * lisp/allout.el (allout-add-resumptions, allout-mode):
25013         * lisp/calculator.el (calculator-operators):
25014         * lisp/cedet/data-debug.el (dd-propertize):
25015         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
25016         * lisp/cedet/semantic/analyze/debug.el:
25017         (semantic-analyzer-debug-global-miss-text):
25018         * lisp/cedet/semantic/lex-spp.el:
25019         (semantic-lex-spp-replace-or-symbol-or-keyword):
25020         * lisp/cedet/semantic/symref.el:
25021         (semantic-symref-cleanup-recent-buffers-fcn):
25022         * lisp/cedet/semantic/tag.el (semantic-tag-class):
25023         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
25024         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
25025         * lisp/gnus/pop3.el (pop3-authentication-scheme):
25026         * lisp/help-fns.el (describe-function-orig-buffer):
25027         * lisp/imenu.el (imenu--history-list):
25028         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
25029         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
25030         (feedmail-queue-default-file-slug)
25031         (feedmail-queue-buffer-file-name):
25032         * lisp/net/mairix.el (mairix-searches-mode-map):
25033         * lisp/net/newst-backend.el (newsticker-retrieval-method)
25034         (newsticker-auto-mark-filter-list):
25035         * lisp/obsolete/vi.el (vi-mode):
25036         * lisp/progmodes/cc-engine.el (c-literal-type):
25037         * lisp/progmodes/cpp.el (cpp-face):
25038         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
25039         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
25040         * lisp/progmodes/pascal.el (pascal-auto-lineup):
25041         * lisp/progmodes/prog-mode.el (prog-widen):
25042         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
25043         (verilog-auto-lineup, verilog-auto-reset-widths)
25044         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
25045         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
25046         (flyspell-maybe-correct-doubling):
25047         * lisp/textmodes/table.el (table-justify, table-justify-cell)
25048         (table-justify-row, table-justify-column, table-insert-sequence)
25049         (table--justify-cell-contents):
25050         * lisp/url/url-auth.el (url-get-authentication):
25051         * lisp/window.el (display-buffer-record-window):
25052         * lisp/xml.el (xml-parse-file, xml-parse-region):
25053         * src/gfilenotify.c (Fgfile_add_watch):
25054         Don't quote symbols with apostrophes in doc strings.
25055         Use asymmetric quotes instead.
25056         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
25057         Likewise for symbol in diagnostic.
25058         * lisp/image.el (image-extension-data):
25059         * lisp/register.el (frame-configuration-to-register):
25060         * src/buffer.c (syms_of_buffer):
25061         Remove bogus apostrophes after symbols.
25062         * lisp/thumbs.el (thumbs-conversion-program):
25063         Quote Lisp string values using double-quotes, not apostrophes.
25065 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
25067         Describe frame geometry and related functions in Elisp manual
25068         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
25069         (Showing Images): Update references.
25070         * doc/lispref/elisp.texi (Top): Update node listing.
25071         * doc/lispref/frames.texi (Frame Geometry): New node.
25072         Move `Size and Position' section here.
25073         (Size Parameters): Update references.
25074         (Mouse Position): Update references and nomenclature.
25075         Describe new functions `x-mouse-absolute-pixel-position' and
25076         `x-set-mouse-absolute-pixel-position'.
25077         * doc/lispref/windows.texi (Window Sizes): Update references.
25078         (Resizing Windows): Update references.  Move description of
25079         `fit-frame-to-buffer' here.
25080         (Coordinates and Windows): Update nomenclature and references.
25081         Describe new arguments of `window-edges'.  Comment out
25082         descriptions of `window-left-column', `window-top-line',
25083         `window-pixel-left' and `window-pixel-top'.  Describe
25084         `window-absolute-pixel-position'.
25086 2015-08-20  Alan Mackenzie  <acm@muc.de>
25088         Handling of `c-parse-state'.  Fix low level bug.
25089         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
25090         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
25092 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
25094         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
25095         window instead of deleting it.
25097 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
25099         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
25100         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
25101         determine whether frame has a titlebar.
25102         Suggested by Eli Zaretskii <eliz@gnu.org>
25104 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
25106         Add a prettify-symbols-alist for (La)TeX
25107         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
25108         New variable holding an alist suitable as prettify-symbols-alist in
25109         (La)TeX modes.
25111 2015-08-19  Alan Mackenzie  <acm@muc.de>
25113         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
25114         Fixes debbugs#21275.
25115         In Emacs >= 25, let electric-pair-mode take precedence over
25116         delete-selection-mode.
25117         * lisp/delsel.el (delete-selection-uses-region-p): New function,
25118         previously a lambda expression in a property value for
25119         `self-insert-command'.
25120         (top-level): Set the `delete-selection' property of
25121         `self-insert-command' to `delete-selection-uses-region-p'.
25122         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
25123         property for c-electric-\(brace\|paren\) the value
25124         `delete-selection-uses-region-p' when the latter function exists.
25126 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25128         Fix key binding quoting in tutorial *Help*
25129         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
25130         When generating help for custom key bindings, use the user-preferred
25131         quoting style rather than hardcoding the grave style.
25133 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
25135         Improve and future-proof OTF fonts support in w32uniscribe.c
25136         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
25137         about the expected results and why the new Uniscribe APIs are not
25138         used in this function.
25139         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
25140         (ScriptGetFontFeatureTags_Proc): New function typedefs.
25141         (uniscribe_new_apis): New static variable.
25142         (uniscribe_check_features): New function, implements OTF features
25143         verification while correctly accounting for features in the list
25144         after the nil member, if any.
25145         (uniscribe_check_otf_1): New function, retrieves the features
25146         supported by the font for the requested script and language using
25147         the Uniscribe APIs available from Windows Vista onwards.
25148         (uniscribe_check_otf): If the new Uniscribe APIs are available,
25149         use them in preference to reading the font data directly.  Call
25150         uniscribe_check_features to verify that the requested features are
25151         supported, replacing the original incomplete code.
25152         (syms_of_w32uniscribe): Initialize function pointers for the new
25153         Uniscribe APIs.  (Bug#21260)
25154         (otf_features): Scan the script, langsys, and feature arrays back
25155         to front, so that the result we return has them in alphabetical
25156         order, like ftfont.c does.
25157         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
25158         New variable for debugging w32uniscribe.c code.
25160 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
25162         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
25163         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
25164         clause of `isearch-search-fun-default'.  That lax variable does not
25165         refer to lax-whitespacing.  Related to (bug#21777).
25166         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
25167         * lisp/character-fold.el (character-fold-search): Set to nil.
25168         Default to nil for now, until someone implements proper
25169         lax-whitespacing with char-fold searching.
25171 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
25173         Fix doc-string of `help-mode-finish'.
25174         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
25176         In nsimage.m include coding.h (Bug#21292)
25177         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
25179         Move window edge functions to Elisp.
25180         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
25181         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
25182         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
25183         Move to window.el.
25184         (calc_absolute_offset): Remove.
25185         * lisp/frame.el (frame-edges): New function.
25186         * lisp/window.el (window-edges, window-pixel-edges)
25187         (window-absolute-pixel-edges): Move here from window.c.
25188         (window-body-edges, window-body-pixel-edges)
25189         (window-absolute-body-pixel-edges): Move here from window.c and
25190         rename "inside" to "body".  Keep old names as aliases.
25191         (window-absolute-pixel-position): New function.
25193 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
25195         [Gnus]: Use overlay functions directly
25196         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
25197         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
25198         (gnus-article-highlight-signature, gnus-article-extend-url-button)
25199         (gnus-article-add-button, gnus-insert-prev-page-button)
25200         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
25201         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
25202         (gnus-cite-add-face):
25203         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
25204         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
25205         (gnus-tree-recenter, gnus-highlight-selected-tree):
25206         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
25207         (gnus-summary-show-thread, gnus-summary-hide-thread)
25208         (gnus-highlight-selected-summary):
25209         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
25210         * lisp/gnus/message.el (message-fix-before-sending)
25211         (message-toggle-image-thumbnails):
25212         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
25213         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
25214         Use overlay functions directly instead of using gnus-overlay-*,
25215         message-overlay-*, and sieve-overlay-*.
25216         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
25217         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
25218         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
25219         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
25220         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
25221         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
25222         (message-overlay-get, message-overlay-put, message-overlays-in):
25223         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
25224         (sieve-overlays-at): Remove.
25226 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
25228         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
25229         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
25230         builds can use the declaration from the system headers.
25231         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
25232         definition of TITLEBAR_INFO.
25233         Suggested by Eli Zaretskii  <eliz@gnu.org>
25235 2015-08-19  Glenn Morris  <rgm@gnu.org>
25237         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
25239 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25241         Use new q ‘format’ flag when fixing quotes in C
25242         * src/image.c (image_size_error): New function.  All uses of
25243         image_error with "Invalid image size ..."  changed to use it.
25244         * src/image.c (image_size_error, xbm_load_image, xbm_load)
25245         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
25246         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
25247         (imagemagick_load, svg_load, svg_load_image, gs_load)
25248         (x_kill_gs_process):
25249         * src/lread.c (load_warn_old_style_backquotes):
25250         * src/xfaces.c (load_pixmap):
25251         * src/xselect.c (x_clipboard_manager_error_1):
25252         Use %qs, not uLSQM and uRSQM.
25253         * src/syntax.c (Finternal_describe_syntax_value):
25254         Prefer Fsubstitute_command_keys to Fformat, as this lets
25255         us use AUTO_STRING.
25256         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
25257         as it's now guaranteed to be ASCII.
25258         * src/xselect.c (x_clipboard_manager_error_2):
25259         Avoid grave accent in low-level stderr diagnostic.
25261 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
25263         New q flag for ‘format’
25264         * doc/lispref/processes.texi (Sentinels):
25265         Don't hardwire grave quoting style in example.
25266         * doc/lispref/strings.texi (Formatting Strings):
25267         * etc/NEWS:
25268         Document new q flag.
25269         * src/editfns.c (Fformat): Implement it.
25271 2015-08-18  Daiki Ueno  <ueno@gnu.org>
25273         pinentry.el: Add debugging support
25274         * lisp/net/pinentry.el (pinentry-debug): New variable.
25275         (pinentry-debug-buffer): New variable.
25276         (pinentry--process-filter): Send input to the debug buffer, if
25277         `pinentry-debug' is set.
25279         pinentry.el: Improve multiline prompt
25280         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
25281         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
25282         command.
25284 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
25286         Fix multibyte confusion in diagnostics
25287         * src/print.c (print_error_message):
25288         Don't assume that the caller's name is unibyte.
25289         * src/xdisp.c (vadd_to_log):
25290         Don't assume that the formatted diagnostic is unibyte.
25292         Fix file name encodings in diagnostics
25293         Also, close some minor races when opening image files, by opening
25294         them once instead of multiple times.
25295         * src/gtkutil.c (xg_get_image_for_pixmap):
25296         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
25297         (svg_load):
25298         * src/nsimage.m (allocInitFromFile:):
25299         * src/xfns.c (xg_set_icon):
25300         Encode file name, since x_find_image_file no longer does that.
25301         * src/image.c (x_find_image_fd): New function.
25302         (x_find_image_file): Use it.  Do not encode resulting file name,
25303         since callers sometimes need it decoded.
25304         (slurp_file): File arg is now a fd, not a file name.
25305         All callers changed.  This saves us having to open the file twice.
25306         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
25307         (svg_load):
25308         Use x_find_image_fd and fdopen to save a file-open.
25309         Report file name that failed.
25310         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
25312 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
25314         Allow blink-matching-paren to jump off screen
25315         * doc/emacs/programs.texi (Matching): Mention the
25316         `blink-matching-paren' value `jump-offscreen'.
25317         * lisp/simple.el (blink-matching-paren): New possible value.
25318         (blink-matching-paren-on-screen): Clarify the docstring.
25319         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
25321         Refine the previous change
25322         * lisp/simple.el (blink-matching-open): Use minibuffer-message
25323         outside of save-excursion (bug#21286).
25325 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
25327         Rewrite and add frame geometry related functions.
25328         * src/frame.c (Fframe_position): New function.
25329         (Fset_frame_position): Rename parameters and rewrite doc-string.
25330         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
25331         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
25332         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
25333         Qtitle_bar_size.
25334         * src/nsfns.m (frame_geometry): New function.
25335         (Fx_frame_geometry): Call frame_geometry.
25336         (Fx_frame_edges): New function.
25337         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
25338         (GetTitleBarInfo_Proc): Define these so we can use the
25339         GetTitleBarInfo API.
25340         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
25341         (Fx_frame_geometry): Rewrite.
25342         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
25343         (Fx_set_mouse_absolute_pixel_position): New functions.
25344         * src/xfns.c (frame_geometry): New function.
25345         (Fx_frame_geometry): Call frame_geometry.
25346         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
25347         (Fx_set_mouse_absolute_pixel_position): New functions.
25349 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
25351         Improve Tramp's compatibility
25352         * lisp/net/tramp.el (tramp-get-method-parameter):
25353         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
25354         (tramp-adb-get-device):
25355         * lisp/net/trampver.el (tramp-repository-get-version):
25356         Use `tramp-compat-replace-regexp-in-string'.
25358 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
25360         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
25361         Encode/decode string.
25363 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
25365         Clarify what happens to match data on failure
25366         Problem reported by Ernesto Alfonso (Bug#21279).
25367         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
25368         Document more carefully what happens to match data after a failed
25369         search.
25370         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
25371         the return value is undefined if the last search failed.
25372         (Fmatch_data): Simplify doc string line 1.
25374 2015-08-18  Daiki Ueno  <ueno@gnu.org>
25376         Revert "pinentry.el: Support external passphrase cache"
25377         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
25378         pinentry.el shouldn't directly interact with the secrets service,
25379         but ask the caller to cache the passphrase.
25381 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
25383         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
25384         Message mode hooks.
25386 2015-08-17  Daiki Ueno  <ueno@gnu.org>
25388         epg.el: Make gpgconf output parsing future proof
25389         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
25390         --list-options" output.
25392         pinentry.el: Support external passphrase cache
25393         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
25394         (pinentry--allow-external-password-cache): New local variable.
25395         (pinentry--key-info): New local variable.
25396         (secrets-enabled, secrets-search-items, secrets-get-secret):
25397         Declare.
25398         (pinentry--send-passphrase): New function, split from
25399         `pinentry--process-filter'.
25400         (pinentry--process-filter): Use secrets.el to retrieve passphrase
25401         from login keyring.
25403         pinentry.el: Popup window for multiline prompt
25404         * lisp/net/pinentry.el (pinentry): New custom group.
25405         (pinentry-popup-prompt-window): New user option.
25406         (pinentry-prompt-window-height): New user option.
25407         (pinentry--prompt-buffer): New variable.
25408         (pinentry-prompt-mode-map): New variable.
25409         (pinentry-prompt-mode): New function.
25410         (pinentry--prompt): New function.
25411         (pinentry--process-filter): Use `pinentry--prompt' instead of
25412         `read-passwd' and `y-or-n-p'.
25414 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
25416         message.el: Silent the byte compiler
25417         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
25418         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
25419         (message-delete-overlay, message-window-inside-pixel-edges):
25420         Declare before using.
25422         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
25423         (message-window-inside-pixel-edges): XEmacs compatible functions.
25425 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
25427         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
25429 2015-08-17  Noah Friedman  <friedman@splode.com>
25431         * lisp/simple.el (blink-matching-open): Restore point before
25432         calling minibuffer-message.
25434 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
25436         * lisp/play/dunnet.el: Update version number in header (now
25437         matches help).
25439 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
25441         Curved quotes in --batch diagnostics in non-UTF-8
25442         When run with --batch, check that curved quotes are compatible with
25443         the system locale before outputting them in diagnostics.
25444         Problem reported by Eli Zaretskii in:
25445         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
25446         * lisp/startup.el (command-line): Set internal--text-quoting-flag
25447         after the standard display table is initialized.
25448         * src/doc.c (default_to_grave_quoting_style): New function.
25449         (text_quoting_style): Use it.
25450         (text_quoting_flag): New static var, visible to Lisp as
25451         internal--text-quoting-flag.
25452         * src/emacs.c: Include <wchar.h> if available.
25453         (using_utf8): New function.
25454         (main): Use it to initialize text_quoting_flag.
25455         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
25456         Don't define, as it's not needed and it clashes with wchar.h.
25458 2015-08-17  Glenn Morris  <rgm@gnu.org>
25460         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
25461         from makeinfo about spurious "Note:" cross-reference, and for grammar.
25463 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
25465         Minor change in variable initialization on MS-Windows
25466         * src/w32fns.c <after_dead_key>: Initialize to -1.
25467         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
25468         non-zero.
25470         Fix a bug with LWindow key remapping on MS-Windows
25471         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
25473 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
25475         Improve fontset support for latest OTF script tags
25476         * lisp/international/fontset.el (otf-script-alist): Add some
25477         missing script tags.
25478         (setup-default-fontset): Include settings for v2 versions of the
25479         script tags used by some modern OTF/TTF fonts.
25481 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
25483         Spelling fixes
25485 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
25487         Use curved quotes in core elisp diagnostics
25488         In the core elisp files, use curved quotes in diagnostic formats,
25489         so that they follow user preference as per ‘text-quoting-style’
25490         rather than being hard-coded to quote `like this'.
25491         * lisp/abbrev.el (expand-region-abbrevs):
25492         * lisp/button.el (button-category-symbol, button-put)
25493         (make-text-button):
25494         * lisp/cus-start.el:
25495         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
25496         (custom--sort-vars-1, load-theme):
25497         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
25498         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
25499         (cl-generic-generalizers):
25500         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
25501         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
25502         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
25503         (advice--make, define-advice):
25504         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
25505         * lisp/emacs-lisp/timer.el (timer-event-handler):
25506         * lisp/env.el (setenv):
25507         * lisp/facemenu.el (facemenu-add-new-face)
25508         (facemenu-add-new-color):
25509         * lisp/faces.el (face-documentation, read-face-name)
25510         (face-read-string, read-face-font, face-spec-set-match-display)
25511         (read-color, x-resolve-font-name):
25512         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
25513         (set-auto-mode, hack-local-variables)
25514         (hack-one-local-variable--obsolete)
25515         (dir-locals-set-directory-class, write-file)
25516         (basic-save-buffer, delete-directory, copy-directory)
25517         (recover-session, recover-session-finish, insert-directory)
25518         (file-modes-char-to-who, file-modes-symbolic-to-number)
25519         (move-file-to-trash):
25520         * lisp/font-lock.el (font-lock-fontify-buffer):
25521         * lisp/format.el (format-write-file, format-find-file)
25522         (format-insert-file):
25523         * lisp/frame.el (get-device-terminal, select-frame-by-name):
25524         * lisp/fringe.el (fringe--check-style):
25525         * lisp/help.el (describe-minor-mode-from-indicator):
25526         * lisp/image.el (image-type):
25527         * lisp/international/fontset.el (x-must-resolve-font-name):
25528         * lisp/international/mule-cmds.el (prefer-coding-system)
25529         (select-safe-coding-system-interactively)
25530         (select-safe-coding-system, activate-input-method)
25531         (toggle-input-method, describe-current-input-method):
25532         * lisp/international/mule-conf.el (code-offset):
25533         * lisp/mouse.el (minor-mode-menu-from-indicator):
25534         * lisp/replace.el (query-replace-read-from)
25535         (occur-after-change-function, occur-1):
25536         * lisp/scroll-bar.el (scroll-bar-columns):
25537         * lisp/simple.el (execute-extended-command)
25538         (undo-outer-limit-truncate, compose-mail, set-variable)
25539         (choose-completion-string, define-alternatives):
25540         * lisp/startup.el (site-run-file, tty-handle-args)
25541         (command-line, command-line-1):
25542         * lisp/subr.el (noreturn, define-error, add-to-list)
25543         (read-char-choice):
25544         * lisp/term/common-win.el (x-handle-xrm-switch)
25545         (x-handle-name-switch, x-handle-args):
25546         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
25547         Use curved quotes in diagnostics.
25548         * lisp/international/mule.el (find-auto-coding):
25549         Use " to quote in a diagnostic, to be consistent with the rest of
25550         this file.
25552         Convert lisp/term/x-win.el to UTF-8
25553         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
25554         runtime behavior, and the file is multilingual so compile-time
25555         appearance shouldn't be an issue.
25556         * admin/notes/unicode: Document this.
25558 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
25560         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
25561         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
25562         issues and comments, bug#943.
25563         (verilog-type-font-keywords): Cycle delay operators like ##1 and
25564         ##[0:$] are now highlighted in their entirety similarly to the #
25565         delay-control operator.  Likewise, the followed-by operators #-#
25566         and #=# are no longer partially highlighed.
25567         (verilog-backward-syntactic-ws-quick)
25568         (verilog-skip-backward-comments): Minor performance improvements
25569         to buffer traversal functions for reduced latency.
25570         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
25571         keyword 'final' follows 'assert/assume/cover', then it is part of
25572         a deferred immediate assertion item and should not be treated as a
25573         final construct for indentation.  Reported by Yuri Sugihara.
25574         (verilog-do-indent): Virtual task/function/class definition lines
25575         should not be considered as declarations.  Reported by Enzo Chi.
25576         (verilog-do-indent): Do not falsely indent to '=' of
25577         property/sequence operators on subsequent lines of a multi-line
25578         statement.
25579         (verilog-assignment-operator-re): Fix '!==' operator and add
25580         support for '<->', ':/', '#-#', and '#=#' operators.
25581         (verilog-calculate-indent, verilog-label-be): Enable
25582         case-sensitive regular expression parsing when looking for
25583         keywords.
25584         (verilog-calc-1): Detect 'pure virtual method' declarations which
25585         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
25586         (verilog-backward-ws&directives): When moving back to the start of
25587         a line and the preceeding line ended with an escaped-newline, then
25588         jump up one line.  This properly consumes a multi-line
25589         pre-processor directive.  Reported by Kaushal Modi.
25590         (verilog-dpi-import-export-re, verilog-extended-complete-re)
25591         (verilog-calc-1): Teach verilog-mode to properly indent after a
25592         DPI import/export statement that resides outside of a module.
25593         Reported by Kaushal Modi.
25594         (verilog-extended-complete-re): Update regexp to match both
25595         "DPI-C" and "DPI".  Reported by Kaushal Modi.
25597 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
25599         substitute-command-keys a few more doc strings
25600         * lisp/allout.el (outlineify-sticky):
25601         * lisp/files.el (hack-one-local-variable--obsolete):
25602         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
25603         Use substitute-command-keys on some doc strings so that
25604         they don't use hard-coded key bindings or quoting styles.
25606         Fix quoting in Fformat calls
25607         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
25608         (xpm_load, xpm_load_image, pbm_load, png_load_body)
25609         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
25610         (imagemagick_load, svg_load, svg_load_image, gs_load)
25611         (x_kill_gs_process):
25612         * src/lread.c (load_warn_old_style_backquotes):
25613         * src/xfaces.c (load_pixmap):
25614         * src/xselect.c (x_clipboard_manager_error_1):
25615         Quote diagnostics according to user preference when calling
25616         Fformat or its derivatives.
25618 2015-08-15  Glenn Morris  <rgm@gnu.org>
25620         * admin/admin.el (set-version, set-copyright): Remove deleted files.
25622 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
25624         Allow describe-function helpers to access buffer-local values
25625         This will be used by cedet/mode-local.el `describe-mode-local-override'
25626         on `help-fns-describe-function-functions' in upstream CEDET.
25627         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
25628         `describe-function'.
25629         (describe-function): Bind it, save it on the help xref stack.
25631         Handle pulse-background being nil
25632         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
25633         pulse-background, handle it being nil.
25635 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
25637         Fix "\`" confusion in Lisp strings
25638         * admin/authors.el (authors-canonical-author-name):
25639         Fix typo by using "\\`" not "\`" in string RE.
25640         * lisp/obsolete/complete.el (PC-complete-as-file-name):
25641         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
25642         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
25643         Use plain "`", not the equivalent-but-confusing "\`", in strings.
25644         * lisp/textmodes/texinfmt.el: Fix comment likewise.
25646 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
25648         * nt/zipdist.bat: Remove -- no longer used.
25650 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
25652         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
25653         rather than "getenforce".
25654         (tramp-sh-handle-set-file-selinux-context): Do not
25655         cache SELinux context if not all context components are given.
25657 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
25659         Add doc strings to 2 help-mode.el functions
25660         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
25661         strings.  (Bug#21263)
25663         Remove files used by the old MS-Windows specific build procedure
25664         * admin/unidata/makefile.w32-in:
25665         * doc/emacs/makefile.w32-in:
25666         * doc/lispintro/makefile.w32-in:
25667         * doc/lispref/makefile.w32-in:
25668         * doc/misc/makefile.w32-in:
25669         * leim/makefile.w32-in:
25670         * lib-src/makefile.w32-in:
25671         * lib/makefile.w32-in:
25672         * lisp/makefile.w32-in:
25673         * nt/INSTALL.OLD:
25674         * nt/config.nt:
25675         * nt/emacs-src.tags:
25676         * nt/envadd.bat:
25677         * nt/gmake.defs:
25678         * nt/makefile.w32-in:
25679         * nt/multi-install-info.bat:
25680         * nt/nmake.defs:
25681         * nt/paths.h:
25682         * src/makefile.w32-in: Files deleted.
25683         * nt/configure.bat: Remove everything except the blurb about the
25684         new build procedure.
25685         * make-dist: Remove references to makefile.w32-in in various
25686         directories, and to files in nt/ that were deleted.
25687         * etc/NEWS: Mention the fact that the files were dropped.
25689 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
25691         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
25692         (Bug#21248)
25694 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
25696         Default to inotify instead of gfile
25697         * configure.ac (with_file_notification): Fix typo that
25698         prevented suppression of file notification if HAVE_NS.
25699         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
25700         with_file_notification is 'yes' (Bug#21241).
25701         * etc/NEWS: Mention this.
25703         Fix broken URLs for ISO-IR
25704         * doc/emacs/mule.texi (Charsets):
25705         * lisp/international/mule-conf.el:
25706         Fix broken URL (Bug#21248).
25708         Low-level diagnostics now use ‘text-quoting-style’
25709         * src/doprnt.c (doprnt):
25710         Format ` and ' as per ‘text-quoting-style’.
25711         * src/xdisp.c (vmessage, message): Mention that the format should
25712         not contain ` or '.
25714         Prefer ‘format’ to ‘substitute-command-keys’
25715         * src/character.h (uLSQM, uRSQM): Move here ...
25716         * src/doc.c (uLSQM, uRSQM): ... from here.
25717         * src/doc.c (Fsubstitute_command_keys):
25718         * src/syntax.c (Finternal_describe_syntax_value):
25719         * lisp/cedet/mode-local.el (mode-local-print-binding)
25720         (mode-local-describe-bindings-2):
25721         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
25722         * lisp/cus-theme.el (describe-theme-1):
25723         * lisp/descr-text.el (describe-text-properties-1, describe-char):
25724         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
25725         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
25726         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
25727         * lisp/emacs-lisp/package.el (describe-package-1):
25728         * lisp/faces.el (describe-face):
25729         * lisp/help-fns.el (help-fns--key-bindings)
25730         (help-fns--compiler-macro, help-fns--parent-mode)
25731         (help-fns--obsolete, help-fns--interactive-only)
25732         (describe-function-1, describe-variable):
25733         * lisp/help.el (describe-mode):
25734         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
25735         to implement quoting style.  This generally makes the code simpler.
25737         Extend ‘format’ to translate curved quotes
25738         This is a followup to the recent doc string change, and deals with
25739         diagnostics and the like.  This patch is more conservative than
25740         the doc string change, in that the behavior of ‘format’ changes
25741         only if its first arg contains curved quotes and the user prefers
25742         straight or grave quotes.  (Come to think of it, perhaps we should
25743         be similarly conservative with doc strings too, but that can wait.)
25744         The upside of this conservatism is that existing usage is almost
25745         surely unaffected.  The downside is that we'll eventually have to
25746         change Emacs's format strings to use curved quotes in places where
25747         the user might want curved quotes, but that's a simple and
25748         mechanical translation that I'm willing to do later.  (Bug#21222)
25749         * doc/lispref/help.texi (Keys in Documentation):
25750         Move description of text-quoting-style from here ...
25751         * doc/lispref/strings.texi (Formatting Strings):
25752         ... to here, and describe new behavior of ‘format’.
25753         * etc/NEWS: Describe new behavior.
25754         * lisp/calc/calc-help.el (calc-describe-thing):
25755         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
25756         * lisp/info.el (Info-find-index-name):
25757         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
25758         of recently-added curved quotes.
25759         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
25760         Move from here ...
25761         * src/lisp.h: ... to here.
25762         * src/doc.c (text_quoting_style): New function.
25763         (Fsubstitute_command_keys): Use it.
25764         * src/editfns.c (Fformat): Implement new behavior.
25765         * src/lisp.h (enum text_quoting_style): New enum.
25767 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
25769         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
25770         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
25772 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
25774         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
25775         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
25777 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
25779         Flush file properties in Tramp
25780         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
25781         (tramp-sh-handle-set-file-times):
25782         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
25783         (tramp-adb-handle-set-file-times): Flush the file properties of
25784         the directory.
25786 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
25788         * doc/emacs/misc.texi (Amusements): Fixed typo.
25790 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
25792         Don't miss warnings about removing string text properties while dumping
25793         * src/alloc.c (purecopy): Warn about removing a string's text
25794         properties even when the same string was already pure-copied
25795         earlier.
25796         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
25797         (elisp--xref-format-extra): Fix the commentary.
25799 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
25801         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
25803 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
25805         * lisp/progmodes/compile.el: Use lexical-binding.
25806         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
25808 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
25810         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
25811         * lisp/uniquify.el: Remove redundant `:group's.
25813 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
25815         * lisp/net/tramp-adb.el
25816         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
25817         result to prevent modification of the tramp-cache by side effects.
25818         Use the correct cache key.
25820 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
25822         Make add_to_log varargs
25823         * src/alloc.c (run_finalizer_handler):
25824         * src/charset.c (load_charset_map_from_vector):
25825         * src/nsimage.m (ns_load_image):
25826         * src/xfaces.c (load_pixmap, load_color2):
25827         Simplify, now that add_to_log has a variable number of args.
25828         * src/image.c (image_error): Take a variable number of args.
25829         Callers simplified.
25830         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
25831         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
25832         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
25833         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
25835         Optional args for holiday-greek-orthodox-easter
25836         * etc/NEWS: Document this.
25837         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
25838         Add optional args N and STRING, mimicking the API and code of
25839         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
25841 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
25843         xref-find-definitions: Exclude more generic function items.
25844         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
25845         Add doc string.
25846         (cl--generic-find-defgeneric-regexp): New.
25847         (find-function-regexp-alist): Add it.
25848         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
25849         elisp-mode.el, change to search for ";;; Code:"
25850         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
25851         (find-function-regexp-alist): Add them.
25852         * lisp/progmodes/elisp-mode.el:
25853         (elisp--xref-format, elisp--xref-format-extra): Change back to
25854         defvar due to bug#21237.
25855         (elisp--xref-find-definitions): Exclude co-located default methods for
25856         generic functions.  Also exclude implicitly declared defgeneric.
25857         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
25858         mode variables defined by 'define-minor-mode'.
25859         * test/automated/elisp-mode-tests.el: Declare generic functions, add
25860         tests for them.
25861         (xref-elisp-test-run): Fix bug.
25862         (emacs-test-dir): Improve initial value.
25863         (find-defs-defun-defvar-el): Don't expect defvar.
25864         (find-defs-feature-el): Match change to find-feature-regexp.
25866 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
25868         Improve warning about purecopy of strings with properties
25869         * src/alloc.c (purecopy): Show the offending string with the
25870         warning about removing its text properties.
25872 2015-08-12  Alan Mackenzie  <acm@muc.de>
25874         Introduce new macros to cover Emacs's new names in cl-lib.el
25875         This also eliminates `mapcan' warnings in XEmacs.
25876         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
25877         characterise [X]Emacs versions.
25878         (top-level): Require either 'cl or 'cl-lib, depending on
25879         c--mapcan-status.
25880         Change this back to cc-external-require from an eval-when-compile
25881         require.
25882         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
25883         (c--delete-duplicates): New macros which expand into either old or new
25884         names.
25885         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
25886         rather than the old names.
25887         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
25888         rather than mapcan.
25889         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
25890         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
25891         depending on c--mapcan-status.
25892         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
25893         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
25894         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
25895         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
25896         (c-decl-block-key, c-keywords, c-keywords-obarray)
25897         (c-regular-keywords-regexp, c-primary-expr-regexp)
25898         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
25899         (c-known-type-key, c-nonlabel-token-key)
25900         (c-make-init-lang-vars-fun): Use the new macros rather than the old
25901         names.
25903 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
25905         loadhist.el (read-feature): Conform to completing-read
25906         * lisp/loadhist.el (read-feature): According to `completing-read'
25907         documentation, if collection is a list, then it must be a list of
25908         strings, not a list of symbols like before.
25910 2015-08-12  David Kastrup  <dak@gnu.org>
25912         Deal gracefully with up-events (Bug#19746)
25913         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
25914         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
25915         those may easily be injected by user-level Lisp code.
25916         (read_key_sequence): Discard unbound up-events like unbound
25917         down-events: they are even more likely only relevant for special
25918         purposes.
25919         While Emacs will not produce up-events on its own currently (those are
25920         converted to drag or click events before being converted to
25921         Lisp-readable structures), the input queue can be made to contain them
25922         by synthesizing events to `unread-command-events'.  Emacs should deal
25923         consistently with such events.
25925 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
25927         Fix display of thin lines whose newline has line-height property of t
25928         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
25929         and descent values of non-empty glyph rows, since they could have
25930         forced low values deliberately.  (Bug#21243)
25932 2015-08-12  Richard Stallman  <rms@gnu.org>
25934         Offer to combine multiple To or CC fields.
25935         * lisp/mail/sendmail.el (mail-combine-fields): New function.
25936         (mail-send): Call 'mail-combine-fields'.
25938         Don't decrypt encrypted files.
25939         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
25941         Handle encrypted mbox files.
25942         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
25943         the mbox file if necessary.
25945         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
25946         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
25947         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
25948         In a mime message, reenable Mime and show the parts that
25949         were shown before.
25950         Add keyword "decrypt" if anything decrypted.
25952         epa-inhibit inhibits auto-recognition of .gpg files
25953         * lisp/epa-file.el (epa-inhibit): New variable.
25954         (epa-file-handler): Check epa-inhibit.
25956 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
25958         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
25960 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25962         Respect python.el imenu when semantic-mode is off
25963         Fixes bug#21220
25964         * lisp/cedet/semantic/wisent/python.el: Do not force
25965         wisent-python-default-setup on python-mode-hook.
25967 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
25969         Give names to Unicode code points in C code
25970         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
25971         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
25972         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
25973         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
25974         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
25975         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
25976         (OBJECT_REPLACEMENT_CHARACTER):
25977         New named constants for Unicode code points.
25978         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
25979         * src/composite.c (char_composable_p):
25980         * src/lread.c (readevalloop, read1):
25981         * src/xdisp.c (get_next_display_element):
25982         Use them.
25983         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
25984         Remove; now in character.h.
25986 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
25988         elisp--xref-find-definitions handle cl-defstuct default constructor
25989         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
25990         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
25991         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
25992         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
25993         from xref-elisp-test for ease of debugging.
25994         (xref-elisp-deftest): Rename from xref-elisp-test.
25995         (find-defs-constructor): New test.
25996         (find-defs-defgeneric-el): Match batch test config.
25997         (compile): Required for find-defs compilation-minor-mode test.
25998         (find-defs-defvar-el): Match code change.
25999         (find-defs-face-el): Match code change.
26000         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
26001         Improve doc string.
26003 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
26005         * lisp/replace.el (perform-replace): Document `replacements'.
26006         (perform-replace): Move the description of the format of `replacements'
26007         from the body's comment to the doc string.
26009 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
26011         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
26012         sequence.  Recent adb version send initial escape sequences, even
26013         when terminal type is set to TERM=dumb.
26015 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
26017         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
26018         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
26019         Function deleted.
26020         (elisp--xref-format-cl-defmethod): New defconst.
26021         (find-feature-regexp, find-alias-regexp): New defcustoms.
26022         (elisp--xref-make-xref): New function.
26023         (elisp--xref-find-definitions): Rewrite using the above, handle many
26024         more cases.  Always output all available definitions.
26025         (xref-location-marker): No need for special cases.
26026         * test/automated/elisp-mode-tests.el: Add more tests of
26027         elisp--xref-find-definitions, improve current tests.
26029 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
26031         Fix recording of events pushed onto unread-command-events
26032         * src/keyboard.c (read_char): Make sure events read from
26033         unread-command-events and unread-post-input-method-events are
26034         always recorded by record_char.  Reported by David Kastrup
26035         <dak@gnu.org>, see
26036         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
26038 2015-08-10  Samer Masterson  <samer@samertm.com>
26040         Set file buffer as current for "--file"
26041         * lisp/startup.el (command-line-1): Set file buffer as current before
26042         it is displayed so it can be used with options like "--eval".
26043         (Bug#21095)
26045 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
26047         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
26048         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
26049         after setting LC_ALL to the desired locale, to avoid affecting how
26050         numbers are read and printed.  (Bug#21223)
26052 2015-08-10  Alan Mackenzie  <acm@muc.de>
26054         Fix "Invalid search bound (wrong side of point)" in fontification
26055         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
26056         an initialization expression, check point is not beyond the
26057         fontification limit.
26059 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26061         Fix DPI calculation when Xft/DPI is default
26062         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
26063         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
26064         Remove unnecessary cast while we're in the neighborhood.
26066 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
26068         Add project-vc-search-path and project-vc-ignores
26069         * lisp/progmodes/project.el (project-vc): New group.
26070         (project-vc-search-path, project-vc-ignores): New variables.
26071         (project--value-in-dir): Utility function.
26072         (project-search-path, project-ignores): Use them.
26073         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
26074         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
26076 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26078         Fix some minor quoting issues with grave accent
26079         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
26080         Remove redundant quotes.
26081         * src/doc.c (uLSQM, uRSQM): New macros.
26082         * src/doc.c (Fsubstitute_command_keys):
26083         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
26084         preference for quotes rather than hardcoding the ‘grave’ style.
26085         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
26086         (re_match_2_internal) [DEBUG]: In debugging output, quote C
26087         strings with "...", not `...'.
26089         ChangeLog.2 ignores remote-tracking merges
26090         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
26091         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
26092         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
26094 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
26096         Use kpsewhich in ffap-latex-mode, if available
26097         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
26098         (ffap-latex-mode): Use kpsewhich if available.
26100         ffap: disallow braces in filenames for tex modes
26101         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
26102         braces in tex-related modes.
26104         Remove useless backslashes from ffap-string-at-point-mode-alist
26105         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
26106         misleading backslashes from default value.
26108         Augment docstring of ffap-string-at-point-mode-alist
26109         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
26110         and END are handled.
26112 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26114         * lisp/org/org-src.el (org-edit-src-code)
26115         (org-edit-fixed-width-region):
26116         * lisp/simple.el (completion-setup-function):
26117         Remove calls to substitute-command-keys that always just return
26118         their argument.
26120 2015-08-09  Daiki Ueno  <ueno@gnu.org>
26122         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
26123         (Bug#21210)
26125 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
26127         Fix link to source code in help window
26128         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
26129         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
26130         'No longer include timestamp in header of .elc files'.  Add code
26131         that will return .el source file in load-path.
26133 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
26135         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
26136         Respect `isearch-lax-whitespace' when searching through
26137         `isearch-word'.
26139 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
26141         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
26143         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
26144         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
26145         (org-set-regexps-and-options, org-assign-fast-keys)
26146         (org-contextualize-keys, org-contextualize-validate-key)
26147         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
26148         (org-find-olp, org-find-exact-heading-in-directory)
26149         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
26150         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
26151         (org-replace-escapes): Use dolist.
26152         (org-mode): Optimize away XEmacs-only code.
26153         (org-refile-get-targets): Remove unused var `f'.
26154         (org-fast-todo-selection): Remove unused var `e'.
26155         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
26156         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
26157         (org-format-latex): Use dolist.  Remove unused var `e'.
26158         (org-toggle-heading): Access vars lexically rather than dynamically.
26159         (org-backward-sentence, org-forward-sentence, org-meta-return)
26160         (org-kill-line): Mark arg as unused.
26161         (org-submit-bug-report): Silence compiler warning.
26162         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
26163         (org-get-cursor-date): Remove unused var `tm'.
26164         (org-comment-or-uncomment-region): Use standard name `_'.
26165         (reftex-docstruct-symbol, reftex-cite-format): Declare to
26166         silence byte-compiler.
26167         (org-reftex-citation): Add `org--' prefix to dynamically scoped
26168         `rds' var.
26170 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
26172         Electric quote if coding is undecided or no conv
26173         * lisp/electric.el (electric--insertable-p): Also say that a
26174         string is insertable if the buffer file coding system is undecided
26175         or uses no conversion, as curved quotes will work in either case.
26177         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
26179 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
26181         Fix overlay string display regressions introduced in Emacs 24.5
26182         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
26183         buffer position, if we move the iterator to a new position as
26184         result of jumping over text covered by a "replacing" display
26185         property.
26186         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
26188         Support recovery from C stack overflow on MS-Windows
26189         * src/w32fns.c (w32_reset_stack_overflow_guard)
26190         (stack_overflow_handler): New functions for handling C stack
26191         overflow exceptions.
26192         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
26193         specially, and zero out except_addr if we do.
26194         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
26195         mode.
26196         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
26197         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
26198         the MinGW build, but the code guarded by that is for Posix hosts.
26199         * src/keyboard.c (command_loop) [WINDOWSNT]:
26200         Call w32_reset_stack_overflow_guard.
26201         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
26202         (sigsetjmp): New macro.
26203         (w32_reset_stack_overflow_guard): Declare the prototype.
26204         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
26206 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
26208         Improve error signalling for seq-subseq
26209         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
26210         when indexes are too large, but to silently ignore numbers which
26211         are too negative for lists.  String and vector handling errors in
26212         both cases.  This has been regularized.  Error signaling behavior
26213         has been explicitly added to the doc string.
26215         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
26216         therefore also impacted by this change.  Update the doc string
26217         to reflect this.
26219         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
26220         added for these exceptional cases, as well as one non exceptional
26221         base case.
26223 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
26225         Improve error checking in tramp-adb.el
26226         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
26227         Improve error checking.  "ls -l" on Android in Enforcing mode can
26228         print "lstat './FILENAME failed: Permission denied".
26230 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
26232         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
26233         non-struct vectors.
26235 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
26237         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
26238         * lisp/window.el: Fix typo that broke build.
26239         (display-buffer--action-function-custom-type):
26240         Add `display-buffer-use-some-frame'.
26241         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
26243         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
26244         * lisp/window.el (display-buffer-use-some-frame): Add support for
26245         'inhibit-same-window in alist.
26246         * doc/lispref/windows.texi (display-buffer-use-some-frame):
26247         Doc support for 'inhibit-same-window in alist.
26249 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
26251         Avoid infinite loop in display of invisible text in strings
26252         * src/xdisp.c (handle_invisible_prop): If the next change of
26253         invisibility spec does not mean the beginning of a visible text,
26254         update the string position from which to start the search for the
26255         next invisibility change.  This avoids an infinite loop when we
26256         have more than one invisibility spec that are made inactive by
26257         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
26258         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
26259         for the situation that caused bug #21200.
26261 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
26263         * lisp/emacs-lisp/package.el: Simplify describe-package-1
26264         (package-help-section-name-face): New face.
26265         (package--print-help-section): New function.
26266         (describe-package-1): Refactor section printing.
26267         (package-make-button): Use face instead of font-lock-face, which
26268         doesn't work on buttons.
26270         * lisp/emacs-lisp/package.el: Define custom faces
26271         (package-name-face, package-description-face)
26272         (package-status-built-in-face, package-status-external-face)
26273         (package-status-available-face, package-status-new-face)
26274         (package-status-held-face, package-status-disabled-face)
26275         (package-status-installed-face, package-status-dependency-face)
26276         (package-status-unsigned-face, package-status-incompat-face)
26277         (package-status-avail-obso-face): New faces.
26278         (package-menu--print-info-simple): Use them.
26280 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
26282         Fix some confusion with ‘format’
26283         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
26284         (allout-graphics-modification-handler):
26285         Protect arbitrary string in a format context with "%s" format.
26286         * lisp/avoid.el:
26287         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
26288         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
26289         * lisp/erc/erc-button.el (erc-button-beats-to-time):
26290         * lisp/gnus/message.el (message-send-form-letter):
26291         * lisp/org/ob-core.el (org-babel-check-evaluate)
26292         (org-babel-confirm-evaluate):
26293         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
26294         * lisp/org/ox-latex.el (org-latex-compile):
26295         * lisp/org/ox-man.el (org-man-compile):
26296         * lisp/org/ox-odt.el (org-odt-template):
26297         * lisp/org/ox-texinfo.el (org-texinfo-compile):
26298         * lisp/progmodes/prolog.el (prolog-help-info)
26299         (prolog-view-predspec):
26300         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
26301         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
26302         * lisp/textmodes/rst.el (rst-replace-lines):
26303         Change (message (format ...)) to (message ...), and likewise
26304         for ‘error’.  This lessens the probability of confusion when the
26305         output of ‘format’ contains ‘%’.
26307 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
26309         * lisp/replace.el (replace-character-fold): Default to nil.
26311         * lisp/character-fold.el: Fix lax whitespace.
26312         (character-fold-table): Don't make space match other whitespace chars.
26313         (character-fold-to-regexp): Simplify lax behavior.
26315 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
26317         Preserve window point in xref-find-definitions-other-window
26318         Fix the problem reported by Ingo Logmar in
26319         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
26320         * lisp/progmodes/xref.el (xref--goto-char): Extract from
26321         xref--goto-location.
26322         (xref--pop-to-location): Use it.  Replace xref--goto-location with
26323         a direct xref-location-marker call.
26324         (xref--show-location): Likewise.
26325         (xref--display-position): Use xref--goto-char.
26327         * lisp/progmodes/project.el: Add a paragraph to the front matter.
26329 2015-08-04  David Kastrup  <dak@gnu.org>
26331         * lisp/vc/emerge.el (emerge-show-file-name):
26332         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
26333         (vhdl-comment-insert, vhdl-hooked-abbrev):
26334         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
26335         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
26336         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
26337         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
26338         * lisp/obsolete/vip.el (vip-escape-to-emacs)
26339         (vip-prefix-arg-value, vip-prefix-arg-com):
26340         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
26341         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
26342         (quail-tibkey-update-translation):
26343         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
26344         * lisp/leim/quail/lao.el (quail-lao-update-translation):
26345         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
26346         (quail-japanese-self-insert-and-switch-to-alpha):
26347         * lisp/leim/quail/hangul.el (hangul2-input-method)
26348         (hangul3-input-method, hangul390-input-method):
26349         * lisp/language/hanja-util.el (hangul-to-hanja-char):
26350         * lisp/international/robin.el (robin-input-method):
26351         * lisp/international/quail.el (quail-start-translation)
26352         (quail-start-conversion):
26353         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
26354         (gnus-article-describe-key-briefly):
26355         * lisp/eshell/em-hist.el (eshell-list-history):
26356         * lisp/term.el (term-dynamic-list-input-ring)
26357         (term-dynamic-list-completions):
26358         * lisp/subr.el (momentary-string-display):
26359         * lisp/simple.el (read-quoted-char):
26360         * lisp/pcomplete.el (pcomplete-show-completions):
26361         * lisp/kmacro.el (kmacro-repeat-on-last-key):
26362         * lisp/info.el (Info-summary):
26363         * lisp/ehelp.el (electric-help-command-loop):
26364         * lisp/ebuff-menu.el (electric-buffer-list)
26365         (Electric-buffer-menu-exit):
26366         * lisp/double.el (double-translate-key):
26367         * lisp/comint.el (comint-dynamic-list-input-ring)
26368         (comint-dynamic-list-completions): Do not overwrite preexisting
26369         contents of `unread-command-events' when putting new events into it.
26371 2015-08-04  Daniel Colascione  <dancol@dancol.org>
26373         Improve ansi-color filtering of unrecognized escape sequences
26374         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
26375         escape sequences.
26376         (ansi-color-filter-apply, ansi-color-apply): Filter out
26377         unrecognized escape sequences.
26379 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
26381         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
26382         definitions to `easy-menu-define', improve a couple to account for
26383         async, and add a couple of new commands.
26385 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
26387         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
26389 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
26391         Add new 'calendar-weekend-days' option
26392         Make the days receiving the 'calendar-weekend-header' face freely
26393         customizable, as they differ by region/culture.
26394         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
26395         new variable.
26396         * lisp/calendar/calendar.el (calendar-generate-month): New variable
26397         calendar-weekend-days to customize day header fontification.
26399 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
26401         Redo text-quoting-style variable
26402         Rename help-quote-translation to text-quoting-style,
26403         and use symbols rather than characters as values.
26404         This follows suggestions along these lines by Alan Mackenzie in:
26405         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
26406         and by Drew Adams in:
26407         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
26408         * doc/lispref/help.texi (Keys in Documentation)
26409         * etc/NEWS:
26410         * lisp/cus-start.el (standard):
26411         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
26412         Document and/or implement the new behavior instead of the old.
26413         (syms_of_doc): New symbols 'grave' and 'straight'.
26415 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
26417         nnimap.el: Use IMAP MOVE extension if available
26418         * lisp/gnus/nnimap.el (nnimap-request-move-article)
26419         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
26420         Use MOVE extension if available.
26422         nnimap.el: Explicitly ask for server capabilities
26423         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
26424         capabilities will be returned in the login-result.
26426 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
26428         Treat help strings like other doc strings
26429         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
26430         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
26431         substitute-command-keys.
26432         * src/keyboard.c (show_help_echo, parse_menu_item): Call
26433         substitute-command-keys on the help string before displaying it.
26435         Also mention "curly quotes"
26436         See Drew Adams's email in:
26437         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
26438         * doc/lispref/help.texi (Keys in Documentation):
26439         Add index entry "curly quotes".
26440         * etc/NEWS: Use the phrase "curly quotes" too.
26442         ede-proj-target-makefile docstring tweaks
26443         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
26444         Consistently use "all:" to describe the all: target,
26445         replacing three different and confusingly-quoted usages.
26447 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
26449         Don't abort emacsclientw when -a was specified
26450         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
26451         out if we are in emacsclientw and -a was specified.
26453 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
26455         Fix handling of 1st keystroke on MS-Windows
26456         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
26457         This is needed to correctly handle the session's first keystroke,
26458         if it has any modifiers.  (Bug#19994)
26460 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
26462         Substitute some customization etc. doc strings
26463         These changes apply substitute-command-keys to some
26464         doc strings that were going through untranslated
26465         when creating customization or other widgets.
26466         * lisp/cus-edit.el (custom-group-value-create):
26467         * lisp/wid-edit.el (widget-default-create):
26468         (widget-push-button-value-create):
26469         Treat the widget tag as a doc string.
26470         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
26471         Treat the :documentation value as a doc string.
26472         * lisp/wid-edit.el (widget-choose):
26473         Treat the choice names as doc strings.
26474         (widget-default-create): Treat the :doc value as a doc string.
26475         (widget-toggle-value-create): Treat the :on and :off values
26476         as doc strings.
26477         (widget-documentation-string-value-create):
26478         Substitute the doc string.
26480 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
26482         Add a second argument to project-ignores
26483         * lisp/progmodes/project.el (project-ignores): Add a second
26484         argument DIR.
26485         * lisp/progmodes/project.el (project-ignores): Only include the VC
26486         ignores if DIR is the VC root.
26487         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
26489 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
26491         Prevent incorrect display when 'line-spacing' variable is set
26492         * src/xdisp.c (try_window_id): Give up this optimization if the
26493         buffer has its 'line-spacing' variable set non-nil.
26495 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
26497         Don't pass NOVISIT to find-file
26498         * lisp/progmodes/etags.el (next-file):
26499         Don't pass NOVISIT to find-file (bug#21175).
26501         Ignore buffer restriction for tags-loop-eval
26502         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
26503         restriction (bug#21167).
26505 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
26507         Fix a thinko in 'ffap-gopher-at-point'
26508         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
26510         Honor 'line-spacing' for empty lines
26511         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
26512         property and 'line-spacing' frame parameter or variable or
26513         property for empty lines, by doing the same processing as in
26514         x_produce_glyph for newline characters.  (Bug#21165)
26516 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
26518         Simplify by assuming C99 integer division
26519         * src/floatfns.c (ceiling2, floor2, truncate2):
26520         Assume C99 (i.e., Fortran) semantics for integer division.
26521         This simplifies the code.
26523 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
26525         Don't overflow if computing approximate percentage
26526         * lisp/align.el (align-region):
26527         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
26528         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
26529         * lisp/cus-edit.el (custom-buffer-create-internal):
26530         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
26531         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
26532         (checkdoc-next-message-error):
26533         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
26534         * lisp/epa.el (epa-progress-callback-function):
26535         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
26536         * lisp/ffap.el (ffap-menu-rescan):
26537         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
26538         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
26539         * lisp/gnus/nneething.el (nneething-retrieve-headers):
26540         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
26541         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
26542         * lisp/gnus/nnml.el (nnml-retrieve-headers):
26543         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
26544         * lisp/gnus/nntp.el (nntp-retrieve-headers)
26545         (nntp-retrieve-articles):
26546         * lisp/imenu.el (imenu--relative-position):
26547         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
26548         (skkdic-convert-okuri-nasi):
26549         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
26550         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
26551         * lisp/org/org-list.el (org-update-checkbox-count):
26552         * lisp/org/org.el (org-table-map-tables)
26553         (org-update-parent-todo-statistics):
26554         * lisp/play/decipher.el (decipher-insert-frequency-counts)
26555         (decipher-analyze-buffer):
26556         * lisp/profiler.el (profiler-format-percent):
26557         * lisp/progmodes/cc-cmds.el (c-progress-update):
26558         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
26559         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
26560         (idlwave-list-load-path-shadows):
26561         * lisp/progmodes/opascal.el (opascal-step-progress):
26562         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
26563         (vhdl-scan-directory-contents):
26564         * lisp/textmodes/bibtex.el (bibtex-progress-message):
26565         * lisp/textmodes/flyspell.el (flyspell-small-region)
26566         (flyspell-external-point-words):
26567         * lisp/textmodes/table.el (table-recognize):
26568         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
26569         progress-report percentages and the like.  This avoids problems
26570         if (* 100 NUMERATOR) would overflow.
26571         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
26572         * lisp/gnus/registry.el (registry-reindex):
26573         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
26574         * lisp/descr-text.el (describe-char):
26575         * lisp/org/org-colview.el (org-nofm-to-completion):
26576         * lisp/ps-print.el (ps-plot):
26577         * lisp/simple.el (what-cursor-position):
26578         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
26579         more-complicated and less-accurate approximation.
26581         Fix some int overflows in profiler.c
26582         * src/profiler.c (make_log): Make args EMACS_INT, not int,
26583         to avoid unwanted behavior on 'int' overflow.
26584         (make_log, evict_lower_half, record_backtrace):
26585         Use ptrdiff_t, not int, for object indexes.
26587         Port to pedantic memcpy
26588         * src/keyboard.c (menu_bar_items, tool_bar_items):
26589         * src/xrdb.c (magic_db):
26590         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
26592         Merge from gnulib
26593         This incorporates:
26594         2015-07-29 time_rz: port to pedantic memcpy
26595         * lib/time_rz.c: Copy from gnulib.
26597 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
26599         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
26600         When updating the very last entry, tabulated-list-print would
26601         erase it and then try to look at the next one (which obviously
26602         isn't there).
26604 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
26606         Allow to use the old key processing code on MS-Windows
26607         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
26608         New variable.
26609         (w32_wnd_proc): Use it to invoke the old code that processed
26610         character keys, as fallback, when this variable is non-nil.
26611         Fix typos in comments.  (Bug#19994)
26613 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
26615         Improve handling of Unicode keyboard input on MS-Windows
26616         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
26617         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
26618         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
26619         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
26620         successful, don't call TranslateMessage.  (Bug#19994)
26622 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
26624         Fix default-directory in changeset diffs after vc-print-log
26625         * lisp/vc/log-view.el (log-view-diff-common): Move the
26626         revision-granularity check back into log-view-diff-changeset.
26627         (log-view-diff-changeset): Bind default-directory to the current
26628         VC root.
26630         Rename project-directories to project-roots
26631         * lisp/progmodes/project.el (project-search-path-function)
26632         (project-search-path): Update the docstring.
26633         (project-directories): Rename to `project-roots', update all
26634         callers and implementations accordingly.
26635         (project-root): Remove.
26636         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
26637         as the default file mask.
26639 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
26641         Support long URLs in w32-shell-execute
26642         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
26643         and filename_to_ansi to convert the DOCUMENT argument, as it could
26644         be a URL that is not limited to MAX_PATH characters.  Instead, use
26645         MultiByteToWideChar directly, and allocate heap storage as
26646         required to accommodate the converted string.  Likewise with
26647         non-Unicode operation.  Ensure OPERATION is null-terminated, even
26648         if it is longer than 32K bytes.  (Bug#21158)
26650 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
26652         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
26654 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
26656         Add docs for display-buffer action display-buffer-use-some-frame
26657         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
26658         * doc/lispref/windows.texi (Display Action Functions):
26659         Add display-buffer-use-some-frame.
26660         * etc/NEWS: Mention display-buffer-use-some-frame.
26662         Add display-buffer action display-buffer-use-some-frame
26663         * lisp/window.el (display-buffer-use-some-frame): New.
26665         Handle vc-mtn error more gently
26666         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
26667         branch is nil.
26669 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
26671         Fix Tramp problems with multihops, and nc
26672         * lisp/net/tramp-cache.el (tramp-get-file-property)
26673         (tramp-set-file-property, tramp-flush-file-property)
26674         (tramp-get-connection-property, tramp-set-connection-property)
26675         (tramp-flush-connection-property): Remove hop from vector.
26676         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
26677         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
26678         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
26679         netstat to 60".
26680         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
26681         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
26682         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
26683         Keep hop in result.
26684         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
26685         Add hop tests.
26687 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
26689         Resurrect highlighting of repeated words by Flyspell Mode
26690         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
26691         characters between point and the doublon candidate, so that
26692         flyspell-word-search-backward finds it.  (Bug#21157)
26694         Fix redisplay of large images on expose events
26695         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
26696         between signed negative values and unsigned values.  This
26697         prevented redisplay on expose events when the window showed a very
26698         large image.
26700 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
26702         Remove unnecessary stack overflow dependency
26703         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
26704         Don't worry about $ac_cv_header_sys_resource_h and
26705         $ac_cv_func_getrlimit, as they're no longer needed for this.
26706         Problem reported by Eli Zaretskii in:
26707         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
26709 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
26711         Pacify compilation -Wincompatible-pointer-types warnings
26712         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
26713         warning.
26714         (CompareStringW_Proc): New typedef.
26715         (w32_compare_strings): Use it, to pacify compiler warnings under
26716         "-Wincompatible-pointer-types".
26717         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
26718         (GetDiskFreeSpaceExA_Proc): New typedefs.
26719         (Ffile_system_info): Use them, to pacify compiler warnings under
26720         "-Wincompatible-pointer-types".
26722 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
26724         Fix subscript error in calculate_direct_scrolling
26725         Use slightly-longer cost vectors.  Without this change,
26726         calculate_direct_scrolling can have a subscript violation when
26727         FRAME_LINES (frame) <= delta.
26728         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
26729         (line_ins_del, do_line_insertion_deletion_costs):
26730         Allocate and use slightly-larger cost vectors, ones based on
26731         FRAME_TOTAL_LINES instead of FRAME_LINES.
26733         Fix uninitalized value in encode_coding_object
26734         * src/coding.c (encode_coding_object): Also initialize
26735         coding->src_pos and coding->src_pos_byte when NILP (src_object).
26736         This avoids later use of uninitialized storage.
26738 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
26740         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
26741         (Bug#21141)
26743 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
26745         Merge from gnulib
26746         This incorporates:
26747         2015-07-27 time_rz: port better to MinGW
26748         2015-07-27 time: port __need_time_t to MinGW
26749         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
26750         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
26751         * lib/time-internal.h: New file, from gnulib.
26753 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
26755         Handle NULL pointers in w32heap.c allocation routines
26756         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
26757         freeable".
26758         (realloc_after_dump, realloc_before_dump, free_before_dump):
26759         Handle NULL pointers gracefully, as Emacs now seems to expect that.
26761         Fix Cairo build without PNG
26762         * src/image.c: Define PNG function when USE_CAIRO is defined, even
26763         if HAVE_PNG is not.  (Bug#21133)
26765         MS-Windows follow-up for recent TZ-related changes
26766         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
26767         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
26768         picking up 'struct timespec' from pthread.h, if it is installed on
26769         the user's system.  We want either the definitions from MinGW
26770         system headers, if available, or the Gnulib replacements if not.
26771         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
26772         lib/time.h.
26773         * lib/time.in.h: Don't let __need_* symbols affect what happens on
26774         MinGW.  These symbols are defined by MinGW system headers, but we
26775         don't want that to affect whether Gnulib portions of the header
26776         are or aren't used.
26778 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
26780         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
26782         New optional ZONE arg for format-time-string etc.
26783         This simplifies time conversions in other time zones.
26784         It also prevents display-time-world tampering with TZ (Bug#21020).
26785         * admin/admin.el (add-release-logs):
26786         Use improved add-log-time-format API.
26787         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
26788         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
26789         * configure.ac (tzalloc): Remove test for this, since
26790         Emacs no longer uses HAVE_TZALLOC directly.
26791         * doc/lispref/os.texi (Time of Day, Time Conversion)
26792         (Time Parsing):
26793         * etc/NEWS: Document the new behavior.
26794         Merge from gnulib, incorporating:
26795         2015-07-25 strftime: fix newly-introduced bug on Solaris
26796         2015-07-23 fprintftime, strftime: use timezone_t args
26797         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
26798         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
26799         * m4/time_h.m4:
26800         Update from gnulib.
26801         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
26802         New files from gnulib.
26803         * lisp/time-stamp.el (time-stamp-string):
26804         * lisp/time.el (display-time-world-list)
26805         (display-time-world-display):
26806         Use new API, with time zone arg.
26807         * lisp/time.el (display-time-world-display):
26808         Fix race when current-time advances while we're running.
26809         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
26810         (add-log-iso8601-time-string): Accept optional time zone arg.
26811         * lisp/vc/add-log.el (add-change-log-entry):
26812         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
26813         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
26814         Add rules for the time module, since they're now needed
26815         for tzalloc etc.
26816         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
26817         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
26818         * src/editfns.c: Include errno.h.
26819         (set_time_zone_rule): Omit unnecessary forward decl.
26820         (initial_tz): Remove, replacing with ...
26821         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
26822         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
26823         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
26824         (tzlookup): New static functions.
26825         (init_editfns): New arg DUMPING.  All uses changed.
26826         (init_editfns): Omit most initialization if dumping, not if
26827         !initialized.  Initialize wall_clock_tz and local_tz.
26828         (emacs_nmemftime, format_time_string): Time zone argument can now
26829         be any time zone, not just a boolean for UTC or local time.  All
26830         callers changed.
26831         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
26832         (Fcurrent_time_zone): New optional arg ZONE.
26833         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
26834         the same form as with the other new additions.
26835         (decode_time_zone): Remove; no longer needed.
26836         (tzvalbuf): Now file-scope.
26837         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
26838         (syms_of_editfns): Define Qwall.
26839         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
26840         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
26841         [!HAVE_TZALLOC]:
26842         Remove; now supplied by gnulib.
26843         * src/emacs.c (main):
26844         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
26846 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
26848         Fix infinite loop in delete-consecutive-dups
26849         * lisp/subr.el (delete-consecutive-dups): Work even if the last
26850         element is nil (Bug#20588).  Avoid rescan of a circular list in
26851         deletion of last element.
26853 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
26855         Have `x-frame-geometry' return nil for terminal and initial
26856         frames (Bug#21132)
26857         * src/nsfns.m (Fx_frame_geometry):
26858         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
26859         terminal frames.
26860         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
26861         (Fx_frame_geometry): Return nil for terminal frames
26863 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
26865         * etc/tutorials/TUTORIAL.ja: Improve translation.
26867 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
26869         Avoid crashes when w32 GUI functions are called in -batch
26870         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
26871         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
26872         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
26874         Fix flyspell-check-previous-highlighted-word
26875         * lisp/textmodes/flyspell.el
26876         (flyspell-check-previous-highlighted-word): Really accept a
26877         numeric argument, as the doc string describes.  Fix an off-by-one
26878         error in looking up overlays, so invocation with point immediately
26879         after a word would check that word.  Clarify the doc string as
26880         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
26882 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
26884         Minor cleanup in tramp-tests.el
26885         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
26886         Implement using the documented interface
26887         `tramp-connection-properties', rather than with internal functions.
26889 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
26891         Pass lambdas to `skeleton-read'
26892         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
26893         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
26894         lambdas to `skeleton-read' (bug#20386).
26896 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
26898         * INSTALL (DETAILED BUILDING AND INSTALLATION):
26899         Mention --without-imagemagick.
26901         Don't require GUI frames and mouse for Flyspell menus
26902         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
26903         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
26904         support, since pop-up menus work with text terminals and can be
26905         controlled via the keyboard.
26907         Improve documentation of Flyspell commands
26908         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
26909         can be invoked via the keyboard.  Mention those commands by name
26910         and add them to the fn index.  (Bug#21125)
26912 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
26914         Fix some Tramp problems with HP-UX
26915         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
26916         Add "tab0" to stty call.
26917         * test/automated/tramp-tests.el (tramp-persistency-file-name):
26918         Set to nil.
26919         (tramp--test-hpux-p): New defun.
26920         (tramp--test-utf8): Use it.
26922 2015-07-22  Glenn Morris  <rgm@gnu.org>
26924         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
26926 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
26928         Fix point positioning in ffap-next-guess
26929         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
26930         as our callers expect.  This was clobbered as part of fixing
26931         bug#5673.  (Bug#21107)
26932         (ffap-gopher-at-point): Set ffap-string-at-point-region.
26934 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
26936         * lisp/window.el (even-window-sizes): Fix customization type.
26938         Optionally even widths of `display-buffer' windows.  (Bug#21100)
26939         * lisp/window.el (quit-restore-window): Restore width if
26940         requested.
26941         (display-buffer-record-window): Record width when window is
26942         reused and horizontally combined.
26943         (even-window-sizes): New option to allow evening window widths.
26944         (even-window-heights): Defalias to `even-window-sizes'.
26945         (window--even-window-heights): Rename to
26946         `window--even-window-sizes'.  Handle side-by-side windows.
26947         (display-buffer-use-some-window): Call `window--even-window-sizes'
26948         instead of `window--even-window-heights'.
26949         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
26950         * doc/lispref/windows.texi (Choosing Window Options): Describe
26951         `even-window-sizes'.
26952         (Coordinates and Windows): Fix typo.
26954 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
26956         Add file name to autoload error messages
26957         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
26958         Add condition-case to add file name to error message.
26960 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
26962         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
26963         Use 0.0.0.1 as test host.
26965 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
26967         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
26968         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
26969         Fix inf-loop (bug#21083).
26971 2015-07-21  Glenn Morris  <rgm@gnu.org>
26973         * test/automated/package-test.el (package-test-signed):
26974         Update for recent changes.
26976         * test/automated/elisp-mode-tests.el
26977         (elisp-xref-finds-both-function-and-variable)
26978         (elisp-xref-finds-only-function-for-minor-mode):
26979         Update for recent xref name changes.
26981 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
26983         Make eldoc timer non-repeatable
26984         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
26985         non-repeatable.  Since it's on post-command hook, that just wasted
26986         CPU cycles.
26988 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
26990         Mention `tramp-connection-properties' in NEWS
26992         Sync with Tramp repository
26993         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
26994         required prior changing its configuration.
26995         (Connection caching, Predefined connection information)
26996         (Remote shell setup): Fix typos.
26997         (Predefined connection information): Describe, how to overwrite
26998         parameters of `tramp-methods'.
26999         (Remote programs, Remote processes, Traces and Profiles):
27000         Simplify example.
27001         (Remote programs): Remove superfluous comment.
27002         * doc/misc/trampver.texi: Update release number.
27003         * lisp/net/tramp-cache.el (tramp-connection-properties):
27004         Adapt docstring.
27005         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
27006         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
27007         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
27008         "gvfs-mkdir -p ..." does not work robust.
27009         (tramp-gvfs-maybe-open-connection):
27010         Adapt `tramp-get-method-parameter' call.
27011         * lisp/net/tramp-sh.el (tramp-methods):
27012         Add `tramp-remote-shell-login' parameter where it fits.
27013         (tramp-get-remote-path): Use it.
27014         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
27015         (all): Adapt `tramp-get-method-parameter' calls.
27016         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
27017         (tramp-get-method-parameter): Replace argument METHOD by VEC.
27018         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
27019         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
27020         (all): Adapt `tramp-get-method-parameter' calls.
27021         * lisp/net/trampver.el: Update release number.
27022         * test/automated/tramp-tests.el (tramp--instrument-test-case):
27023         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
27024         (tramp-test13-make-directory, tramp--test-adb-p)
27025         (tramp--test-smb-or-windows-nt-p): Simplify.
27026         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
27027         (tramp--test-special-characters): Fix docstring.  Add gvfs and
27028         ftp tests.
27029         (tramp--test-utf8): Fix docstring.
27031 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
27033         Add new xref-query-replace command
27034         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
27035         New function, extracted from xref-pulse-momentarily.
27036         (xref-query-replace): New command.
27037         (xref--query-replace-1): New helper function.
27038         (xref--xref-buffer-mode-map): Add `r' binding.
27040 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
27042         Simplify icalendar decoding of Z dates
27043         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
27044         Simplify calculation of time strings with trailing "Z".
27046 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
27048         Do not corrupt grep-find-ignored-files
27049         * lisp/progmodes/project.el (project-ignores): Change the order of
27050         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
27052         Add xref-match-item, and use it
27053         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
27054         (xref-file-location): Add reader for the column slot.
27055         (xref-match-item): New class.
27056         (xref-match-bounds): A method implementation for it.
27057         (xref-make-match): New constructor function.
27058         (xref--current-item): New private variable.
27059         (xref-pulse-momentarily): Use it.
27060         (xref--pop-to-location): Change the first argument to an xref
27061         item, instead of location, bind xref--current-item.
27062         Update all callers.
27063         (xref-next-line, xref-prev-line, xref--next-error-function)
27064         (xref--mouse-2): Look for the property `xref-item',
27065         instead of `xref-location'.
27066         (xref--item-at-point): Likewise.  This function replaces
27067         `xref-location-at-point'.  Update all callers.
27068         (xref--insert-xrefs): Add the `xref-item' text property, instead
27069         of `xref-location'.
27070         (xref--collect-match): Use xref-make-match.
27072         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
27073         Update all references.
27075         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
27076         slot to `summary'.
27078         vc-hg: Perform the print-log call asynchronously
27079         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
27080         asynchronously (bug#21067).
27082         Add xref-after-jump-hook and xref-after-return-hook
27083         * lisp/progmodes/xref.el (xref-after-jump-hook)
27084         (xref-after-return-hook): New hooks.
27085         (xref-pulse-on-jump): Remove, in favor of the above.
27086         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
27087         (xref--pop-to-location, xref--display-position)
27088         (xref-pop-marker-stack): Use the new hooks, as requested in
27089         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
27091 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
27093         * lisp/progmodes/js.el (js-mode): Correct the lighter.
27095 2015-07-19  Leo Liu  <sdl.web@gmail.com>
27097         Fix a bug in cfengine3-mode
27098         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
27099         eldoc-documentation-function.
27101 2015-07-18  Julien Danjou  <julien@danjou.info>
27103         sieve-mode: support "body" test command
27104         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
27105         Add missing "body" test command.
27107 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
27109         Fix info-apropos when the default encoding is Latin-N
27110         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
27111         'undecided', so that it is set to the encoding of the Info file we
27112         are about to insert.  Otherwise, 'info-apropos' will fail to find
27113         some index nodes in some UTF-8 encoded files, if the buffer's
27114         previous encoding is Latin-N or some such.
27116 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
27118         * lisp/epg.el (epg--start): Check that gpgconf can be found
27119         before calling it.
27121         Expose more file types to OS X that Emacs understands
27122         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
27123         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
27125 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
27127         Fix visual-order cursor movement when lines are truncated
27128         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
27129         simulate display in a window of infinite width, to allow move_it_*
27130         functions reach positions outside of normal window dimensions.
27131         Remove code that tried to handle a subset of these situations by
27132         manual iteration of buffer text.  (Bug#17777)
27134         Fix following Info cross-references to anchors
27135         * lisp/info.el (Info-read-subfile): Add to the returned value the
27136         length of subfile preamble, after converting it to file's byte
27137         offset, as expected by the caller.  Use bufferpos-to-filepos.
27138         (Info-find-node-2): If searching for a node with a
27139         1000-character slop fails, try again with a 10000-character slop,
27140         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
27141         * lisp/international/mule-util.el (bufferpos-to-filepos): New
27142         function.
27143         * etc/NEWS: Mention bufferpos-to-filepos.
27145         Fix scrolling backwards on TTY frames under scroll-conservatively
27146         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
27147         in moving backwards on TTY frames.  (Bug#21080)
27149 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
27151         Consider a jsdoc tag to be a beginning of a paragraph as well
27152         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
27153         consider a jsdoc tag to be a beginning of a paragraph as well.
27155 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27157         * lisp/emacs-lisp/package.el: Fix warnings.
27159         * lisp/emacs-lisp/package.el (package-buffer-info):
27160         Add author and maintainers to `package-buffer-info'.
27162         * lisp/emacs-lisp/package.el: Many small changes.
27163         Replace all instances of 'face with 'font-lock-face.
27164         (describe-package-1): Improve some strings and move the summary
27165         up the list.
27166         (package-install-file): Update docstring.
27167         (package-menu-hide-package): Bind to `H'.
27169         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
27170         Fix error handling.
27172 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
27174         Fix hang with large yanks This should fix the bug fixed by Mike
27175         Crowe's patch in:
27176         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
27177         A problem in this area has been reported by several users; see
27178         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
27179         This fix differs from Mike Crowe's patch in that it should avoid a
27180         race condition that could lose SIGIO signals.  ignore_sigio dates
27181         back to the 1980s when some platforms couldn't block signals, and
27182         could only ignore them, which led to races when signals arrived
27183         while being ignored.  We shouldn't have to worry about those old
27184         platforms now.
27185         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
27186         * src/emacs.c (shut_down_emacs):
27187         Don't call ignore_sigio; unrequest_sigio should suffice.
27188         * src/keyboard.c (kbd_buffer_store_buffered_event):
27189         Use unrequest_sigio, not ignore_sigio.
27190         (kbd_buffer_get_event):
27191         Call request_sigio when getting the ball rolling again.
27193 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27195         * lisp/obsolete/longlines.el (longlines-search-function):
27196         Fallback on `isearch-search-fun-default'.
27198 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
27200         Support @-mentions
27201         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
27202         of mentions/messages with @nick instead of just nick.
27204 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
27206         Fix bug#20943
27207         * lisp/autorevert.el (auto-revert-handler): Do not check for
27208         `buffer-modified-p'.
27209         * lisp/files.el (buffer-stale--default-function): Check for
27210         `buffer-modified-p'.
27211         * test/automated/auto-revert-tests.el
27212         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
27214 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
27216         Fix delete-dups bug on long lists
27217         * lisp/subr.el (delete-dups):
27218         Don't mistakenly keep some dups when applied to long lists.
27220 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
27222         Better heuristic for C stack overflow
27223         Improve the heuristic for distinguishing stack overflows from
27224         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
27225         the getrlimit method wasn't portable to Cygwin; see:
27226         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
27227         Corinna suggested pthread_getattr_np but this also has problems.
27228         Instead, replace the low-level system stuff with a simple
27229         heuristic based on known good stack addresses.
27230         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
27231         * src/sysdep.c: Don't include <sys/resource.h>.
27232         (stack_direction): Remove.  All uses removed.
27233         (stack_overflow): New function.
27234         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
27235         Make SEGV fatal in non-main threads.
27237 2015-07-16  Daiki Ueno  <ueno@gnu.org>
27239         epg: Automatically start pinentry server
27240         * lisp/epg-config.el (epg-gpgconf-program): New variable.
27241         * lisp/epg.el (epg--start): Call `pinentry-start' if
27242         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
27244 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
27246         * lisp/gnus/nnimap.el: Fix my last bogus change.
27247         Reinstall Stefan Monnier's change that was made in
27248         <83d824bc4041332f338ad7e5e830f443535aa300>.
27250 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
27252         Merge from gnulib
27253         This incorporates:
27254         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
27255         2015-07-05 acl-permissions: Fix on FreeBSD
27256         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
27257         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
27258         * lib/set-permissions.c: Copy from gnulib.
27260         Port to stricter C99
27261         * src/keyboard.h (kbd_buffer_store_event_hold):
27262         Don't return a void expression.
27264 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
27266         * doc/emacs/frames.texi (Creating Frames):
27267         Fix the command `C-x 5 m' runs.
27269 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
27271         New autorevert tests
27272         * test/automated/auto-revert-tests.el: New file.
27274 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
27276         Clear gcprolist etc. after stack overflow
27277         After stack overflow, command_loop calls init_eval, and this needs to
27278         clear gcprolist and byte_stack_list (Bug#20996).
27279         * src/alloc.c (init_alloc):
27280         Move gcprolist and byte_stack_list initialization from here ...
27281         * src/eval.c (init_eval): ... to here.
27283 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
27285         * doc/emacs/windows.texi (Pop Up Window): Fix the description
27286         of `C-x 4 m'.
27288 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
27290         Avoid deprecated enums in mac-ct font backend driver
27291         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
27292         (mac_ctfont_get_advance_width_for_glyph)
27293         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
27295         Cache font family in mac-ct font backend driver
27296         * src/macfont.m (macfont_family_cache): New variable.
27297         (syms_of_macfont): Initialize it.
27298         (macfont_available_families_cache): New variable.
27299         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
27300         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
27301         (macfont_handle_font_change_notification)
27302         (macfont_init_font_change_handler)
27303         (macfont_copy_available_families_cache): New functions.
27304         (macfont_create_family_with_symbol): Use font family caches.
27305         (macfont_list, macfont_list_family):
27306         Use macfont_copy_available_families_cache instead of
27307         mac_font_create_available_families.
27309 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
27311         Show the default value in the prompt
27312         * lisp/progmodes/xref.el: Add `M-?' binding for
27313         xref-find-references.  Declare functions `grep-read-files' and
27314         `grep-expand-template'.
27315         (xref--read-identifier): Show the default value in the prompt.
27317         * lisp/progmodes/xref.el (xref-find-regexp): When called with
27318         prefix argument, ask for file patterns to search as well.  When
27319         prompting for the directory, require an existing one.
27320         (xref-collect-matches): Add a new argument, FILES.  Use it in the
27321         above function.
27323         Add `project-ignores'
27324         * lisp/progmodes/project.el (project-ignores): New generic
27325         function, and an implementation for the VC project type.
27326         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
27327         variant of rgrep-default-command that handles a generic list of
27328         ignores.
27329         (xref-collect-matches): Use it, and pass through to it the value
27330         of the newly added argument.
27331         (xref-find-regexp): Handle ignored paths within the project.
27332         Remove outdated comment.
27333         * lisp/vc/vc.el (vc-default-ignore-completion-table):
27334         Skip the comments and the empty lines.
27336 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
27338         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
27340 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
27342         gnus-registry.el: Correct function argument order
27343         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
27344         Reverse the order of function arguments.
27346 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
27348         Bind grep-highlight-matches to nil
27349         * lisp/progmodes/xref.el (xref-collect-matches):
27350         Bind grep-highlight-matches to nil (bug#20728).
27352 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
27354         nnimap.el: Fix IMAP message size parsing
27355         * lisp/gnus/nnimap.el (nnimap-transform-headers):
27356         Don't assume that UID comes before RFC822.SIZE.
27358 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
27360         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
27361         (auth-source-creation-prompts): Declare.
27362         (nnimap-retrieve-headers, nnimap-status-message)
27363         (nnimap-request-create-group, nnimap-request-delete-group)
27364         (nnimap-close-group, nnimap-request-move-article)
27365         (nnimap-request-accept-article, nnimap-request-newgroups)
27366         (nnimap-request-post, nnimap-dummy-active-number)
27367         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
27368         (nnimap-parse-flags): Remove unused var `p'.
27369         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
27370         (nnimap-flags-to-marks): Remove unused var `totalp'.
27372 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
27374         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
27376 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
27378         * src/macfont.m (macfont_list): Ignore font families lacking
27379         font descriptors.
27381 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
27383         Don't check the exit status, it can be misleading
27384         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
27385         exit status, it can be misleading.
27387         Introduce a Project API
27388         * lisp/progmodes/project.el: New file.
27389         * lisp/cedet/ede.el (project-try-ede): New function.
27390         (project-root): New implementation.
27391         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
27392         Set project-search-path-function.
27393         (elisp--xref-find-references): Delegate some logic to
27394         project-search-path.
27395         (elisp-search-path): New function.
27396         (elisp-xref-find): Don't implement `matches' anymore.
27397         * lisp/progmodes/etags.el: Don't implement `matches'.
27398         Delegate some logic to project-search-path.
27399         (etags-search-path): New function.
27400         * lisp/progmodes/xref.el (xref-find-function):
27401         Remove `matches' from the API.
27402         (xref-find-regexp): Move whatever common logic was in elisp and
27403         etags implementations, and search the directories returned by
27404         project-directories and project-search-path.
27406 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
27408         * test/automated/map-tests.el (test-map-delete-return-value):
27409         Uncomment test.
27411         Add support for gv.el in map.el
27412         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
27413         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
27414         * test/automated/map-tests.el: Update tests to work with the new
27415         implementations of map-elt and map-put.
27417 2015-07-09  Glenn Morris  <rgm@gnu.org>
27419         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
27421 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
27423         Syntax-propertize until the end of the line first
27424         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
27425         until the end of the line first.
27427 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
27429         * doc/emacs/files.texi (File Archives): Add a cross reference.
27431 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
27433         nnimap.el: Handle plain value for nnimap-stream
27434         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
27435         capabilities, so that a 'plain value for the `nnimap-stream' server
27436         variable is handled correctly.
27437         * doc/misc/gnus.texi (Customizing the IMAP Connection):
27438         Document the 'plain option.
27440 2015-07-08  Leo Liu  <sdl.web@gmail.com>
27442         Fix bug in thing-at-point--bounds-of-well-formed-url
27443         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
27444         sure boundary contains current point.
27446 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
27448         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
27449         in the end.
27451         Declare whitespace-line-column a safe file-local
27452         * lisp/whitespace.el (whitespace-line-column): Declare to be a
27453         safe file-local when the value is an integer.
27455 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
27457         gnus-group.el: Check if group names are already strings
27458         * lisp/gnus/gnus-group.el (gnus-group-group-name):
27459         The group name may already be a string.
27460         Specifically, in the group list reached from the *Server* buffer,
27461         the 'gnus-group text property returns a string.  Everywhere else
27462         it returns a symbol.
27464         nnimap.el: Remove unused let variables
27465         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
27467 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
27469         Support "maximized" property of runemacs's shortcut
27470         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
27471         the '--maximized' switch to Emacs.
27473         Support "minimized" property of runemacs's shortcut
27474         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
27475         pass the '--iconic' switch to Emacs.  (Bug#20991)
27477 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
27479         Doc fixes
27480         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
27481         C-w' in Diff mode.
27482         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
27483         Add a cross reference.
27485 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
27487         * lisp/obsolete/landmark.el: Add Obsolete-since header.
27489 2015-07-07  Glenn Morris  <rgm@gnu.org>
27491         * test/automated/ert-tests.el (ert-test-deftest):
27492         Update for recent changes.
27494 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
27496         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
27497         * lisp/emacs-lisp/gv.el (gv-setter): New function.
27498         (gv-invalid-place): New error.
27499         (gv-get): Use them.
27500         (gv-synthetic-place, gv-delay-error): New places.
27501         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
27502         (cl-defgeneric, cl-defmethod): Use gv-setter.
27504 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
27506         Make vc-tests work with MSYS svn program
27507         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
27508         svn is an MSYS program.
27510 2015-07-07  Ken Brown  <kbrown@cornell.edu>
27512         Improve recent change to emacsclient on Cygwin
27513         * lisp/server.el (server-process-filter): Remove redundant check
27514         that 'cygwin-convert-file-name-from-windows' is defined as a
27515         function on Cygwin.  Don't call that function unless its argument
27516         starts with a drive letter.
27518 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
27520         * lisp/emacs-lisp/package.el (package-compute-transaction):
27521         Fix void variable due to `found-something' being in the wrong `let'.
27523 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
27525         * lisp/play/landmark.el: Move to lisp/obsolete/.
27527 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
27529         Have `x-show-tip' handle `right' and `bottom' frame parameters
27530         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
27531         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
27532         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
27533         tooltips also via `right' and `bottom' frame parameters.
27535 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
27537         Add online-help support to describe types
27538         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
27539         (describe-symbol): Improve the selection of default.
27540         * lisp/help-mode.el: Require cl-lib.
27541         (describe-symbol-backends): Move from help-fns.el.
27542         (help-make-xrefs): Use it.
27543         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
27544         for types.
27545         (cl--typedef-regexp): New const.
27546         (find-function-regexp-alist): Add entry for types.
27547         (cl-help-type, cl-type-definition): New buttons.
27548         (cl-find-class): New function.
27549         (cl-describe-type): New command.
27550         (cl--describe-class, cl--describe-class-slot)
27551         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
27552         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
27553         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
27554         New functions.  Moved from eieio-opt.el.
27555         (cl--generic-class-parents): New function, extracted from
27556         cl--generic-struct-specializers.
27557         (cl--generic-struct-specializers): Use it.
27558         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
27559         Improve constructor's docstrings.
27560         (cl-struct-unknown-slot): New error.
27561         (cl-struct-slot-offset): Use it.
27562         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
27563         definition in current-load-list.
27564         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
27565         (eieio--add-new-slot): Set it.
27566         (eieio-defclass-internal): Use new name for current-load-list.
27567         (eieio-oref): Add compiler-macro to warn about unknown slots.
27568         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
27569         as compile-time as well.  Improve constructor docstrings.
27570         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
27571         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
27572         (eieio-class-def): Remove button.
27573         (eieio-help-constructor): Use new name for load-history element.
27574         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
27575         (eieio-method-documentation): Move to cl-generic.el.
27576         (eieio-display-method-list): Use new names.
27577         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
27578         Add "define-linline".
27579         (lisp-fdefs): Remove "defsubst".
27580         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
27581         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
27582         (macroexp--warn-and-return): Use it to avoid inf-loops.
27583         Add `compile-only' argument.
27585 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27587         python.el: Fix local/remote shell environment setup
27588         * lisp/progmodes/python.el (python-shell-with-environment):
27589         Fix remote/local environment setup.
27590         * test/automated/python-tests.el (python-shell-with-environment-1)
27591         (python-shell-with-environment-2): New tests.
27593 2015-07-06  Glenn Morris  <rgm@gnu.org>
27595         * lisp/simple.el (set-variable): Tweak recent doc fix.
27597 2015-07-06  Ken Brown  <kbrown@cornell.edu>
27599         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
27601 2015-07-06  Glenn Morris  <rgm@gnu.org>
27603         * lisp/simple.el (set-variable): Use user-error for type mismatch.
27605 2015-07-06  Ken Brown  <kbrown@cornell.edu>
27607         * src/emacs.c (main): Don't increase the stack size on Cygwin.
27609 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
27611         (describe-symbol): Rewrite describe-function-or-variable
27612         * lisp/help-fns.el (describe-symbol-backends): New var.
27613         (help-xref-stack-item): Declare.
27614         (describe-symbol): Rename from describe-function-or-variable.
27615         Rewrite using describe-symbol-backends instead of help-xref-interned.
27616         * lisp/help.el (help-map): Use it.
27617         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
27618         (help-xref-interned): Make it into an obsolete alias.
27620         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
27621         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
27622         and cl-letf.
27624 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
27626         Fix parsing glitches in dired-mark-sexp (bug#13575)
27627         * lisp/dired-x.el (dired-x--string-to-number): New function.
27628         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
27629         of directory-listing-before-filename-regexp.  Consider
27630         forward-word harmful and replace it.  Add more verbiage in
27631         comments and doc string.
27633 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27635         python.el: Respect process environment for remote shells
27636         * lisp/progmodes/python.el
27637         (python-shell-calculate-process-environment): Calculate
27638         process-environment or tramp-remote-process-environment depending
27639         whether current file is remote.
27640         (python-shell-calculate-exec-path): Calculate exec-path or
27641         tramp-remote-path depending whether current file is remote.
27642         (python-shell-with-environment): New macro.
27643         (python-shell-prompt-detect, python-shell-calculate-command)
27644         (python-shell-make-comint, python-check): Use it.
27646         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
27647         * lisp/progmodes/python.el (python-shell--interpreter)
27648         (python-shell--interpreter-args): New vars.
27649         (inferior-python-mode, python-shell-make-comint): Use them.
27651         python.el: Fixes for IPython 3.x  (Bug#20580)
27652         * lisp/progmodes/python.el:
27653         (python-shell-completion-native-setup): Fix IPython 3.x setup.
27654         (python-shell-completion-native-get-completions): Fix timeout
27655         logic.
27657         python.el: Fix mark-defun behavior  (Bug#19665)
27658         * lisp/progmodes/python.el (python-mark-defun): New function.
27659         * test/automated/python-tests.el (python-mark-defun-1)
27660         (python-mark-defun-2, python-mark-defun-3): New tests.
27662 2015-07-05  Glenn Morris  <rgm@gnu.org>
27664         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
27665         such as "extends(parent), private".  (Bug#20969)
27666         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
27667         New tests.
27669 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
27671         Avoid duplicate calls to current_timespec
27672         * src/process.c (wait_reading_process_output):
27673         Cache current_timespec results as long as we're not waiting.
27675 2015-07-05  Ian Kelling  <ian@iankelling.org>
27677         Avoid returning early reading process output due to SIGIO
27678         * src/process.c (wait_reading_process_output): Extend the behavior of
27679         not breaking due to not finding output when a timer has lowered the
27680         timeout to include when SIGIO lowers the timeout.
27682         Don't return as fast reading any process output
27683         * src/process.c (wait_reading_process_output):
27684         The patch for Bug#17647 returns too fast sometimes when reading
27685         from any processes.  Revert part of it, and limit the timeout more
27686         sensibly (Bug#20978).
27688         Refactor timeouts in wait_reading_process_output
27689         * src/process.c (wait_reading_process_output):
27690         Simplify timeouts with an enum.  Remove a redundant condition.
27691         (Bug#20978)
27693         Remove ADAPTIVE_READ_BUFFERING ifdef
27694         * src/process.c (make-process, make-pipe-process, deactivate_process)
27695         (wait_reading_process_output, read_process_output, send_process)
27696         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
27697         added in case there was an operating system in which it was not
27698         useful.  That was 11 years ago and it hasn't happened.  Make
27699         development easier by not considering the effect of changes on a
27700         theoretical OS where this is disabled (Bug#20978).
27702 2015-07-05  Glenn Morris  <rgm@gnu.org>
27704         * lisp/simple.el (set-variable): Doc fix.
27706         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
27708 2015-07-05  Ian Kelling  <ian@iankelling.org>
27710         accept-process-output fix
27711         This is a followon to the fix for bug#17647 (Bug#20976).
27712         * src/process.c (status_notify): Fix too high return in some cases.
27714 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
27716         * lisp/character-fold.el (character-fold-table):
27717         Only fold decompositions if at least one character is non-spacing.
27718         (Bug#20975)
27720 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
27722         Merge from gnulib
27723         This incorporates:
27724         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
27725         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
27726         2015-07-02 update-copyright: fix test failure with perl >= 5.22
27727         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
27728         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
27729         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
27730         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
27732 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
27734         Respect `prog-indentation-context' in python.el
27735         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
27736         (python-indent-context, python-indent--calculate-indentation)
27737         (python-info-current-defun)
27738         (python-info-dedenter-opening-block-message)
27739         (python-info-line-ends-backslash-p)
27740         (python-info-beginning-of-backslash)
27741         (python-info-continuation-line-p): Use `prog-widen'.
27742         (python-indent--calculate-indentation)
27743         (python-indent--calculate-levels)
27744         (python-indent-calculate-indentation): Use `prog-first-column'.
27745         (python-indent--calculate-levels): Simplify.
27746         Ignore also initial empty lines for syntax calculation.
27747         * lisp/progmodes/python.el (python-indent-context): Return
27748         :no-indent for first non-empty line, not just in line 1.
27749         * test/automated/python-tests.el (python-indent-base-case)
27750         (python-indent-inside-paren-1, python-indent-inside-paren-2)
27751         (python-indent-inside-paren-3, python-indent-inside-paren-4)
27752         (python-indent-inside-paren-5, python-indent-inside-paren-6)
27753         (python-indent-after-backslash-1)
27754         (python-indent-after-backslash-2)
27755         (python-indent-after-backslash-3)
27756         (python-indent-after-backslash-4, python-indent-inside-string-1):
27757         Expect :no-indent for first non-empty line.
27759 2015-07-04  Daniel Colascione  <dancol@dancol.org>
27761         Factor isearch word description into new function
27762         * lisp/isearch.el (isearch--describe-word-mode): New function.
27763         (isearch-message-prefix, isearch-query-replace): Use it.
27765 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
27767         Fix mouse pointer on w32 when a menu is active
27768         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
27769         shape while a menu is in use.  This started happening since we now
27770         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
27772 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
27774         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
27775         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
27776         parameter.  (Bug#17344)
27778         Have `compilation-set-window' use right window for getting fringes
27779         (Bug#20829)
27780         * lisp/progmodes/compile.el (compilation-set-window):
27781         Take `window-fringes' from argument window.
27783 2015-07-03  Glenn Morris  <rgm@gnu.org>
27785         Update eieio tests for recent eieio-core change.
27786         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
27787         * test/automated/eieio-tests.el
27788         (eieio-test-32-slot-attribute-override-2):
27789         Replace the deleted eieio--class-v with cl--find-class.
27791 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
27793         Fix some issues with `window-divider-mode'
27794         * lisp/frame.el (window-divider-default-places): New option.
27795         (window-divider-mode): Remove option.
27796         (window-divider-mode): Make it a "regular" minor mode.
27797         (window-divider-width-valid-p): Drop frame- prefix.
27798         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
27799         prefix.  Handle `window-divider-default-places'.
27800         (frame--window-divider-mode-set-and-apply): Remove.
27801         (window-divider-default-bottom-width)
27802         (window-divider-default-right-width): Drop :group entries.
27803         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
27804         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
27805         (menu-bar-no-window-divider): Set `window-divider-default-places'
27806         and call `window-divider-mode'.
27807         * doc/emacs/frames.texi (Window Dividers): Document
27808         `window-divider-default-places'.
27810 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
27812         * doc/emacs/display.texi (Displaying Boundaries):
27813         * doc/emacs/search.texi (Word Search): Add cross references.
27815 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
27817         -batch should not affect ‘’ -> `' display
27818         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
27819         -batch (Bug#20926).
27821 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
27823         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
27824         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
27825         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
27826         Use cl--find-class instead.
27828         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
27830 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
27832         Some further fixes in Change Window node (Bug#20183)
27833         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
27834         by "resizing" in section title.  Add some concept indices.
27835         Suggested by N. Jackson (Bug#20183).
27837         * doc/emacs/windows.texi (Change Window): Reference window
27838         dividers.
27840         Document new `window-divider-mode'.
27841         * lisp/frame.el (window-divider-mode): Fix doc-string.
27842         * doc/emacs/frames.texi (Window Dividers): New section.
27844         Improve accessibility of window dividers (Bug#20183)
27845         * lisp/faces.el (window-divider)
27846         (window-divider-first-pixel, window-divider-last-pixel): Change
27847         membership from `frames' to `window-divider' customization group.
27848         * lisp/frame.el (window-divider): New customization group.
27849         (window-divider-mode): New minor mode.
27850         (window-divider-default-bottom-width)
27851         (window-divider-default-right-width): New options.
27852         (frame--window-divider-previous-mode): New variable.
27853         (frame-window-divider-width-valid-p)
27854         (frame--window-divider-mode-apply)
27855         (frame--window-divider-mode-set-and-apply): New functions.
27856         * lisp/menu-bar.el (menu-bar-options-save): Save
27857         window-divider-mode settings.
27858         (menu-bar-window-divider-customize)
27859         (menu-bar-bottom-and-right-window-divider)
27860         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
27861         (menu-bar-no-window-divider): New functions.
27862         (menu-bar-showhide-window-divider-menu): New variable.
27863         (menu-bar-showhide-menu): Show/hide window divider menu.
27864         * lisp/mouse.el (mouse-split-window-vertically)
27865         (mouse-split-window-horizontally): Replace `error' by
27866         `user-error'.  Bind `window-combination-resize' to nil.
27867         (top-level): Add/reorder mouse key bindings on mode- and
27868         vertical-line.
27870 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
27872         Don't display ‘’ as `' under X in en_GB
27873         The curved quote setup code invokes (char-displayable-p ?‘),
27874         but this isn’t reliable until after the X frame replaces the
27875         terminal frame (Bug#20926).
27876         * lisp/international/mule-cmds.el (set-locale-environment):
27877         Move curved quote setup code from here ...
27878         * lisp/startup.el (command-line): ... to here, after creating
27879         the X frame.
27881 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
27883         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
27885         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
27886         to reverse the meaning (Bug#15631).
27888 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
27890         Be more tolerant to fonts named "Foobar-12"
27891         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
27892         don't barf; instead, request a new fontset to be generated.  This
27893         avoids unnecessarily rejecting fonts named against XLFD rules.  See
27894         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
27895         for the description of the original problem.
27896         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
27897         by a hyphen in a font's name.
27899         Fix value of posn-at-pont in R2L lines
27900         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
27901         coordinate of -1, for a newline in a right-to-left line that
27902         overflowed into the left fringe.
27904 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
27906         (cl--copy-slot-descriptor): Copy the `props' alist as well
27907         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
27908         Rename from cl--copy-slot-descriptor.
27909         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
27911 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
27913         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
27914         (xterm-query-timeout): New var.
27915         (xterm--query): Use it.  Fallback on async method if we timeout before
27916         getting the first byte of the reply (bug#12354).
27918 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
27920         Spelling fixes
27921         * lisp/character-fold.el (character-fold-search):
27922         * lisp/emacs-lisp/package.el (package-hidden-regexps):
27923         Fix typos.
27925 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
27927         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
27929 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
27931         In strings, prefer plain ` and ' to \` and \'
27932         * lisp/allout.el (allout-insert-listified):
27933         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
27934         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
27935         (ls-lisp-string-lessp):
27936         * lisp/menu-bar.el (menu-bar-open):
27937         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
27938         * lisp/progmodes/compile.el (compile):
27939         * lisp/progmodes/etags.el (tags-loop-scan):
27940         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
27941         * lisp/subr.el (posn-actual-col-row):
27942         * lisp/term/pc-win.el (x-list-fonts):
27943         * lisp/textmodes/texinfmt.el (texinfmt-version):
27944         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
27945         * lisp/time.el (display-time-world-list):
27946         * lisp/tmm.el (tmm-menubar):
27947         * src/buffer.c (syms_of_buffer):
27948         * src/fileio.c (syms_of_fileio):
27949         Omit unnecessary and confusing backslash before quote.
27950         * lisp/erc/erc.el (erc-cmd-LASTLOG):
27951         * lisp/progmodes/flymake.el (flymake-fix-file-name):
27952         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
27953         Fix string that was intended to escape a backslash and not a quote.
27955 2015-06-30  Glenn Morris  <rgm@gnu.org>
27957         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
27959         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
27960         Replace hard-coded lists with wildcard + filter-out.
27962         * configure.ac (system-configuration-features): Add X11, NS.
27964         Improve reproducibility of generated loaddefs file
27965         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
27966         Make the return value the modtime of the input file (if no autoloads).
27967         (update-directory-autoloads): In the "no autoloads" section,
27968         use "most recent modtime" rather than "current time".
27970 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
27972         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
27973         (Bug#20930)
27975 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
27977         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
27979         Add seq-min and seq-max
27980         Bump version number.
27981         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
27982         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
27984 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
27986         Make sure sleep-for always delays for as long as it's told
27987         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
27988         a loop, to ensure we always wait exactly the required amount of
27989         time.  (Bug#15990)
27991 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
27993         Fix pointer signedness glitch
27994         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
27996 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
27998         Don't block changes in mouse pointer inside 'track-mouse'
27999         * etc/NEWS:
28000         * doc/lispref/frames.texi (Mouse Tracking): Document the special
28001         effect of setting 'track-mouse' to 'dragging'.
28002         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
28003         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
28004         * lisp/mouse-drag.el (mouse-drag-throw):
28005         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
28006         to avoid changes in the shape of the mouse pointer.
28007         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
28008         pointer shape when do_mouse_tracking has the value of 'dragging',
28009         not just any non-nil value.  (Bug#20934)
28010         (syms_of_xdisp): DEFSYM 'dragging'.
28012 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
28014         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
28016         * lisp/emacs-lisp/package.el (package-compute-transaction):
28017         Don't assume version sorting.
28019         * lisp/emacs-lisp/package.el (package--save-selected-packages):
28020         Don't save before init time, to avoid overwriting configurations.
28021         (Bug#20855)
28023 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
28025         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
28026         references.
28028 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
28030         Update for the upcoming CFEngine 3.7 release: support macros and
28031         quoted context strings; reformat JSON; indent promise attributes 2
28032         units by default; give function parameter descriptions in the eldoc
28033         glue.
28034         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
28035         Autoload `json-pretty-print'.  Support new features in 3.7.
28036         (cfengine-parameters-indent): Set default promise attribute indent to
28037         2 more than the promise itself.
28038         (cfengine3-macro-regex): New variable to match the new macro syntax.
28039         (cfengine3-font-lock-keywords): Use it to highlight macros.
28040         (cfengine3-indent-line): Use it to indent macros to column 0.
28041         (cfengine3-class-selector-regex): Update for the new quoted strings
28042         format.
28043         (cfengine3-reformat-json-string): New function to reformat a JSON
28044         string using `json-pretty-print'.
28045         (cfengine3-format-function-docstring): Use function parameter
28046         description if it's provided by the cf-promises syntax dump.
28048 2015-06-29  Michael R. Mauger  <michael@mauger.com>
28050         Cygwin emacsclient handles w32 file names
28051         * lisp/server.el (server-process-filter): Allow Cygwin's
28052         emacsclient to be used as a file handler on MS-Windows.
28054 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
28056         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
28057         (bug#20925).
28059 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
28061         * doc/lispref/text.texi (Sticky Properties): Improve wording.
28062         (Bug#20924)
28064         Allow font names that end in "-NN", where NN is a number
28065         * src/font.c (font_load_for_lface): If the font-spec didn't match
28066         any available fonts, try again without interpreting trailing "-NN"
28067         as the font size.  For the description of the original problem, see
28068         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
28070         .gdbinit followup to changes in !USE_LSB_TAG
28071         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
28072         !USE_LSB_TAG, as Emacs no longer does.
28074 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
28076         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
28077         Otherwise `s p' of f and F will stomp on each other's value.
28078         (Bug#20916)
28080 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
28082         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
28083         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
28085 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
28087         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
28088         as additional guess.
28090         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
28091         to a string.
28093 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
28095         apropos-library quoting fix
28096         * lisp/apropos.el (apropos-library): Quote library consistently
28097         with the rest of the quoting used by apropos.
28099         Clarify interpreter-mode-alist doc
28100         * lisp/files.el (interpreter-mode-alist):
28101         Reword to avoid confusing quoting that wasn't working anyway.
28103 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
28105         Sync with Tramp 2.2.12
28106         * doc/misc/trampver.texi:
28107         * lisp/net/trampver.el: Update release number.
28108         * test/automated/tramp-tests.el (tramp-test13-make-directory):
28109         Fix cleanup.
28111 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
28113         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
28115 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
28117         Bind grep-highlight-matches around the rgrep call
28118         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
28119         around the rgrep call (bug#20728).
28121         Put "--color" before the other options in grep-command
28122         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
28123         before the other options in grep-command (bug#20912).
28125         Add --color Grep option to the command dynamically
28126         * lisp/progmodes/grep.el (grep-template, grep-find-template):
28127         Update the description for <C>.  (Bug#20728)
28128         (grep-compute-defaults): Don't add the --color option to
28129         grep-options.  Only add it to grep-command.
28130         (grep-expand-keywords): Expand the env value opts into <C>.
28131         (grep-expand-template): Replace cf in the env with the opts list,
28132         that can include -i and --color.
28133         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
28134         "--color=always" from the template, because we don't have to.
28136 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
28138         cl-extra fixes for most-negative-fixnum
28139         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
28140         Don't mishandle an argument equal to most-negative-fixnum,
28141         whose absolute value equals itself.
28142         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
28144         Initialize cl--gensym-counter to 0
28145         Previously it was initialized to a random value, which made it
28146         harder to reproduce earlier Emacs runs.  The need for a random
28147         value went away when Emacs introduced and used the #: syntax for
28148         uninterned symbols (Bug#20862).
28149         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
28150         Document that cl--gensym-counter now starts with 0.
28151         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
28152         (cl--random-time): Move to near only remaining use.
28153         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
28155         Improve docstring for macroexp-let2
28156         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
28157         Improve as per suggestion by RMS in:
28158         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
28159         Also, rename args to match new doc string.
28161 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
28163         Fix VC test suite on MS-Windows
28164         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
28165         always starts with 3 slashes after the colon.
28166         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
28167         'w32-application-type' to invoke CVS on MS-Windows with properly
28168         formatted CVSROOT directory name.
28170         Add a new function w32-application-type
28171         * src/w32proc.c (Fw32_application_type): New function.
28173         Avoid error in TLS connections due to incorrect format
28174         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
28175         the call to 'error', instead of the unsupported %u.  Reported by
28176         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
28178 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
28180         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
28182 2015-06-26  Leo Liu  <sdl.web@gmail.com>
28184         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
28185         `with-output-to-string' in elisp.
28187         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
28188         with-output-to-string".
28189         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
28191 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
28193         Minor corrections in ELisp manual
28194         * doc/lispref/nonascii.texi (Character Properties): Correct
28195         inaccuracies in description of values of the Unicode properties.
28197         Fix invisible mouse pointers on Windows.
28198         * src/w32fns.c: Include windowsx.h.
28199         (w32_wnd_proc): If the mouse moved and the mouse pointer is
28200         invisible, make it visible again even when the main (Lisp)
28201         thread is busy.
28202         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
28203         garbaging the frame have the input thread call SetCursor.
28205 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
28207         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
28208         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
28209         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
28210         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
28211         (w32_toggle_invisible_pointer): New function.
28212         (w32_create_terminal): Add w32_toggle_invisible_pointer as
28213         toggle_invisible_pointer_hook for this terminal.
28215 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
28217         Doc fix for deletion commands
28218         'delete-char' does not respect the value of 'delete-active-region'.
28219         * doc/emacs/killing.texi (Deletion):
28220         Fix documentation for some single-char deletion commands.
28222         * doc/emacs/help.texi (Apropos):
28223         Improve documentation of 'apropos-do-all'.
28225         * doc/emacs/help.texi (Help Summary):
28226         Improve documentation of 'describe-mode'.
28228 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
28230         Fix submake dependency bug with .h files
28231         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
28232         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
28233         before the submake in $(libsrc) would spin off a subsubmake
28234         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
28236 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
28238         * lisp/character-fold.el (character-fold-table): Reuse `table'.
28240 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
28242         Translate undisplayable ‘ to `
28243         * doc/lispref/help.texi (Keys in Documentation):
28244         * lisp/international/mule-cmds.el (set-locale-environment):
28245         * lisp/term/w32console.el (terminal-init-w32console):
28246         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
28247         If ‘ is not displayable, transliterate it to `, not to '.  See:
28248         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
28250         Fix C99 incompatibilities in Cairo code
28251         * src/image.c (xpm_load) [USE_CAIRO]:
28252         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
28253         Fix pointer signedness problem.
28255 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
28257         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
28258         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
28259         `with-output-to-string' should have the same indent as `progn'.
28260         This is in line with the declaration of `with-output-to-string'.
28262 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
28264         Get ‘./configure; make -C src emacs’ to work
28265         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
28266         * lib-src/Makefile.in (../lib/libgnu.a):
28267         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
28269 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
28271         Fix GC bugs --with-wide-int and Qnil == 0
28272         Use the same alignment for the !USE_LSB_TAG case as for the
28273         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
28274         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
28275         once we changed the representation of symbols so that Qnil == 0.
28276         Problem reported by Eli Zaretskii (Bug#20862).
28277         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
28278         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
28279         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
28280         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
28281         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
28282         This optimization in the !USE_LSB_TAG case is no longer valid when
28283         symbols are represented via offsets.  Change the only use to
28284         assume that pointers might hide in objects.
28285         * src/lisp.h (alignas) [!USE_LSB_TAG]:
28286         Require support in this case, too.
28287         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
28288         This is OK, because the !USE_LSB_TAG case now applies only when
28289         Lisp_Object is wider than void *, so there's no longer any need
28290         to shift the offset.  Not shifting the offset means that
28291         symbol representations have the same alignment as pointers,
28292         which the GC assumes.
28294 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
28296         * doc/lispintro/emacs-lisp-intro.texi (Data types):
28297         Improve documentation of 'substring'.
28299 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
28301         * lisp/character-fold.el (character-fold-table): Fix table generation.
28303 2015-06-24  Glenn Morris  <rgm@gnu.org>
28305         * nextstep/Makefile.in (all): Make it the first target.
28306         (../src/emacs${EXEEXT}): Add rule for making it.
28308 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
28310         * etc/NEWS: Fix mention to old function name.
28312         * lisp/character-fold.el: New file (Bug#20887)
28313         (character-fold-to-regexp): New function.
28314         * lisp/replace.el (replace-search): Check value of
28315         `character-fold-search'.
28316         * lisp/isearch.el: Move character-folding code to
28317         character-fold.el
28318         (isearch-toggle-character-fold): New command.
28319         (isearch-mode-map): Bind it to "\M-sf".
28320         (isearch-mode): Check value of `character-fold-search'.
28322 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
28324         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
28325         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
28326         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
28328         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
28329         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
28331 2015-06-24  Glenn Morris  <rgm@gnu.org>
28333         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
28335 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
28337         lisp/gnus/nnmaildir.el: Silence lexical warnings
28338         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
28339         functional style.
28340         (nnmaildir--update-nov): Remove unused var `numdir'.
28341         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
28342         (nnmaildir-request-group, nnmaildir-request-create-group)
28343         (nnmaildir-request-post, nnmaildir-request-move-article)
28344         (nnmaildir-request-accept-article, nnmaildir-active-number):
28345         Mark unused args.
28346         (nnmaildir-get-new-mail, nnmaildir-group-alist)
28347         (nnmaildir-active-file): Declare.
28348         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
28349         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
28350         `mark', `end', `new-mark', and `mark-sym'.
28351         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
28352         `nlist2'.
28353         (nnmaildir-request-expire-articles):
28354         Remove unused vars `article', `stop' and `nlist2'.
28355         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
28356         `end'.  Use nnmaildir--article when dyn-binding is needed.
28357         Give the value directly in the `let' for `del-mark', `del-action',
28358         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
28359         (nnmaildir-close-server): Declare those local vars that need to be
28360         dyn-bound.
28362 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
28364         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
28366         Port selection info fix to clang
28367         * src/keyboard.h (kbd_buffer_store_event_hold):
28368         Don't assume C11 semantics for alignof (Bug#20756).
28370         Fix bug that munged selection info
28371         On some optimizing C compilers, copying a structure did not
28372         copy the padding bytes between elements, and the type punning
28373         between struct input_data and struct selection_input_data did
28374         not work.  Change the C code to use a proper union type instead.
28375         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
28376         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
28377         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
28378         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
28379         (mark_kboards):
28380         Use union buffered_input_event, not struct input_event.
28381         (clear_event, deliver_input_available_signal, process_special_events):
28382         Remove unnecessary forward decls.
28383         (kbd_buffer_store_buffered_event): New function, mostly just the
28384         old kbd_buffer_store_event_hold, except its argument is of type
28385         union buffered_input_event, not struct input_event.
28386         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
28387         not needed otherwise.  Argument is now of type
28388         struct selection_input_event *, not struct input_event *.
28389         All callers changed.
28390         (clear_event): Arg is now of type union buffered_input_event *,
28391         not struct input_event *.  All callers changed.
28392         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
28393         (union buffered_input_event): New type.
28394         (kbd_buffer_store_event_hold): Now an inline function,
28395         defined here.
28396         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
28397         (struct input_event): Use it.
28398         * src/xselect.c (struct selection_event_queue):
28399         Make elements be of type struct selection_input_event,
28400         not struct input_event.
28401         (selection_input_event_equal): New static function.
28402         (x_queue_event): Use it.
28403         (x_queue_event, x_decline_selection_request)
28404         (x_selection_current_request, x_reply_selection_request)
28405         (x_handle_selection_request, x_handle_selection_clear)
28406         (x_handle_selection_event): Use struct selection_input_event,
28407         not struct input_event.  All callers changed.
28408         (x_convert_selection): Omit unused first arg.  All callers changed.
28409         (Fx_disown_selection_internal): Omit unnecessary union.
28410         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
28411         rather than rolling our own equivalent.  Prefer sie.kind when
28412         setting up that kind of structure.
28413         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
28414         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
28415         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
28416         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
28417         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
28418         (SELECTION_EVENT_TIME, x_handle_selection_event):
28419         Arg is now of type struct selection_input_event *)
28420         not struct input_event *.  All callers changed.
28422 2015-06-23  Glenn Morris  <rgm@gnu.org>
28424         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
28426 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
28428         * lisp/isearch.el: Fold many unicode characters to ASCII.
28429         (isearch-character-fold-search, isearch--character-fold-extras)
28430         (isearch--character-fold-table): New variable.
28431         (isearch--character-folded-regexp): New function.
28432         (isearch-search-fun-default): Use them.
28433         * lisp/replace.el (replace-character-fold): New variable.
28434         (replace-search): Use it.
28435         * etc/NEWS: Document it.
28437 2015-06-23  Glenn Morris  <rgm@gnu.org>
28439         Check for an input event before showing a dialog box.  (Bug#20813)
28440         * lisp/subr.el (y-or-n-p):
28441         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
28442         as last-nonmenu-event.
28444 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
28446         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
28447         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
28448         (switch-to-prev-buffer, switch-to-next-buffer): Respect
28449         switch-to-visible-buffer independent of the windows history.
28451 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
28453         * src/keyboard.c (last_timer_event): Remove unused var.
28455 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
28457         * test/automated/package-test.el (package-test-update-listing):
28458         Fix test.
28460 2015-06-23  Glenn Morris  <rgm@gnu.org>
28462         Revert 2014-06-25 nextstep/Makefile change.
28463         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
28464         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
28465         not as an order-only prerequisite.
28467         * configure.ac (--with-ns): Enable by default on OS X.
28469 2015-06-23  Leo Liu  <sdl.web@gmail.com>
28471         Fix shell-for/backward-command to exclude spaces
28472         * lisp/shell.el (shell-forward-command, shell-backward-command):
28473           Handle the 'move case from re-search-forward/backward.
28474           fixes debbugs:20873
28476 2015-06-22  Juri Linkov  <juri@linkov.net>
28478         * lisp/replace.el (query-replace-read-from): Add separator to
28479         the local binding of text-property-default-nonsticky.  (Bug#20690)
28481         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
28482         (Bug#20785)
28484 2015-06-22  Ken Brown  <kbrown@cornell.edu>
28486         Enable CPU profiling on Cygwin
28487         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
28488         change that undefined this.
28489         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
28490         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
28491           Cygwin.
28493         Improve diagnostics of profiler-cpu-start
28494         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
28495         return -1 if the sampling interval is invalid.
28496         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
28497         fails.  (Bug#20843)
28499 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
28501         * lisp/emacs-lisp/package.el: Exclude packages by name.
28502         (package-hidden-regexps): New variable.
28503         (package-menu--refresh): Use it.
28504         (package-menu-hide-package): New command.
28506         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
28508 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
28510         Fix debug-timer-check on systems without HAVE_TIMERFD
28511         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
28512         the expired timers, since wait_reading_process_output doesn't.
28513         (debug_timer_callback): Enlarge the tolerance to 20 msec.
28515         Fix RCS crashes in vc-test
28516         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
28517         ports of 'ci' on MS-Windows by always passing the -t- switch.
28519 2015-06-22  Glenn Morris  <rgm@gnu.org>
28521         * doc/emacs/package.texi (Packages):
28522         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
28524         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
28526 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
28528         Port tests to help-quote-translation
28529         * test/automated/ert-x-tests.el (ert-test-describe-test):
28530         * test/automated/package-test.el (package-test-describe-package)
28531         (package-test-signed): Allow straight quotes, too.
28533 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
28535         Make find-function-on-key use the current window
28536         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
28537         Extract from `find-function-on-key', add a second argument.
28538         (find-function-on-key): Use it (bug#19679).
28539         (find-function-on-key-other-window)
28540         (find-function-on-key-other-frame): New commands.
28542 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
28544         Revert "Define `map-elt' as a generalized variable"
28545         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
28547 2015-06-21  Ken Brown  <kbrown@cornell.edu>
28549         Drop support for CPU profiling on Cygwin
28550         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
28551         (Bug#20843)
28553 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
28555         Fix some “nested” quoting confusion in doc strings
28556         * lisp/emacs-lisp/advice.el (ad-map-arglists):
28557         * lisp/kermit.el (kermit-clean-on):
28558         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
28559         * src/keyboard.c (Frecursive_edit):
28560         Use curved quotes when quoting text containing apostrophe,
28561         so that the apostrophe isn't curved in the output.
28563 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
28565         Define `map-elt' as a generalized variable
28566         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
28567         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
28568         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
28569         `setf' with `map-elt'.
28570         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
28572 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
28574         Improve error handling in tramp-adb.el
28575         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
28576         Improve error handling.
28578 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
28580         Reuse `alist-get' in map.el
28581         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
28582         elements.
28584 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
28586         Fix bytecomp-tests--warnings when $TMPDIR has a long name
28587         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
28588         Allow the warning to begin on the 3rd, not only 2nd line, which
28589         happens if temporary-file-directory has a very long name.
28591         Expect 2 icalendar tests to fail on MS-Windows
28592         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
28593         (icalendar-real-world): Make them expected failures on MS-Windows.
28595 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
28597         Improve port of settings UI to older displays
28598         * lisp/cus-start.el (standard): Don't assume curved quotes are
28599         easily distinguishable when users are tinkering with a setting
28600         that affects how curved quotes are generated.
28602         Fix quoting in electric-quote-mode doc string
28603         * lisp/electric.el (electric-quote-mode): Fix quoting.
28604         This is a fallout from the recent change introducing
28605         ‘help-quote-translation’.
28607         Spelling fix
28609         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
28611         * src/doc.c (syms_of_doc): Remove unused symbols.
28613 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
28615         * lisp/window.el (window-state-put): Undedicate target window
28616         before putting STATE into it.  (Bug#20848)
28618 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
28620         Merge from origin/emacs-24
28621         a5e6f33 Fixes: debbugs:20832
28622         b9f02cf Fixes: debbugs:20832
28624 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
28626         Fix file-in-directory-p when the directory is UNC
28627         * lisp/files.el (file-in-directory-p): Support files and
28628         directories that begin with "//".  (Bug#20844)
28630 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
28632         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
28633         in the minibuffer.  (Bug#20832)
28635 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
28637         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
28638         for adding new todo file is empty but modified.  (Bug#20832)
28640 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
28642         (filepos-to-bufferpos): Further tweaks to the utf-16 code
28643         * lisp/international/mule-util.el (filepos-to-bufferpos):
28644         Fix typo.  Move non-exact check to the utf-16 branch (the only one
28645         affected).  Don't use byte-to-position for the utf-16 case.
28647 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
28649         Minor fixes in filepos-to-bufferpos
28650         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
28651         test for utf-8-emacs.  Exempt single-byte encodings from the
28652         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
28653         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
28654         UTF-16 encoded files for CR-LF EOLs.
28656 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
28658         Improve the optional translation of quotes
28659         Fix several problems with the recently-added custom variable
28660         help-quote-translation where the code would quote inconsistently
28661         in help buffers.  Add support for quoting 'like this', which
28662         is common in other GNU programs in ASCII environments.  Change
28663         help-quote-translation to use more mnemonic values: values are now the
28664         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
28665         traditional Emacs help-buffer quoting style `like this'.  Change the
28666         default behavior of substitute-command-keys to match what's done in
28667         set-locale-environment, i.e., quote ‘like this’ if displayable,
28668         'like this' otherwise.
28669         * doc/lispref/help.texi (Keys in Documentation): Document
28670         new behavior of substitute-command-keys, and document
28671         help-quote-translation.
28672         * doc/lispref/tips.texi (Documentation Tips):
28673         Mention the effect of help-quote-translation.
28674         * etc/NEWS: Mention new behavior of substitute-command-keys,
28675         and merge help-quote-translation news into it.
28676         When talking about doc strings, mention new ways to type quotes.
28677         * lisp/cedet/mode-local.el (overload-docstring-extension):
28678         Revert my recent change to this function, which shouldn't be
28679         needed as the result is a doc string.
28680         * lisp/cedet/mode-local.el (mode-local-print-binding)
28681         (mode-local-describe-bindings-2):
28682         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
28683         * lisp/cus-theme.el (describe-theme-1):
28684         * lisp/descr-text.el (describe-text-properties-1, describe-char):
28685         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
28686         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
28687         (eieio-help-constructor):
28688         * lisp/emacs-lisp/package.el (describe-package-1):
28689         * lisp/faces.el (describe-face):
28690         * lisp/help-fns.el (help-fns--key-bindings)
28691         (help-fns--compiler-macro, help-fns--parent-mode)
28692         (help-fns--obsolete, help-fns--interactive-only)
28693         (describe-function-1, describe-variable):
28694         * lisp/help.el (describe-mode):
28695         Use substitute-command-keys to ensure a more-consistent quoting
28696         style in help buffers.
28697         * lisp/cus-start.el (standard):
28698         Document new help-quote-translation behavior.
28699         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
28700         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
28701         (help-xref-url-regexp):
28702         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
28703         * lisp/wid-edit.el (widget-documentation-link-regexp):
28704         Also match 'foo', in case we're in a help buffer generated when
28705         help-quote-translation is ?'.
28706         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
28707         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
28708         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
28709         (Fsubstitute_command_keys): Document and implement new behavior.
28710         (Vhelp_quote_translation): Document new behavior.
28712 2015-06-18  Glenn Morris  <rgm@gnu.org>
28714         * lisp/cus-start.el (help-quote-translation): Add :version.
28716         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
28718 2015-06-18  Alan Mackenzie  <acm@muc.de>
28720         Make translation of quotes to curly in doc strings optional.
28721         * src/doc.c (traditional, prefer-unicode): New symbols.
28722         (help-quote-translation): New variable.
28723         (Fsubstitute_command_keys): Make translation of quotes dependent on
28724         `help-quote-translation'; also translate curly quotes back to ASCII
28725         ones.
28726         * lisp/cus-start.el (top-level): Add a customization entry for
28727         `help-quote-translation'.
28729 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
28731         * lisp/emacs-lisp/package.el: Don't always propagate async errors
28732         (package--with-work-buffer-async): Only propagate the error if the
28733         callback returns non-nil.
28734         (package--download-one-archive): Return nil on the signature
28735         checking callback if we accept unsigned.
28736         (package--download-and-read-archives): Return non-nil on the
28737         archive download callback.
28739 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
28741         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
28742         * src/nsfns.m (Fx_create_frame):
28743         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
28744         image_cache_refcount before first x_default_parameter call.
28746 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
28748         Improve and extend filepos-to-bufferpos
28749         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
28750         Don't barf if F returns nil for some argument.
28751         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
28752         that every encoding of type 'charset' is single-byte.
28754 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
28756         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
28757         Properly delete packages.  (Bug#20836)
28759 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
28761         Update data files from just-released Unicode 8.0
28762         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
28763         status.
28764         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
28765         * admin/unidata/BidiMirroring.txt:
28766         * admin/unidata/BidiBrackets.txt:
28767         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
28769 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
28771         Document curved quotes a bit better
28772         * doc/emacs/basic.texi (Inserting Text):
28773         Mention C-x 8.  Change example to use curved quote rather
28774         than infinity, as this lets us give more ways to do it.
28775         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
28776         and quotation marks.
28777         * doc/emacs/text.texi (Quotation Marks):
28778         * doc/lispref/tips.texi (Documentation Tips):
28779         Add "curly quotes" and "curved quotes" to the index.
28780         * doc/emacs/text.texi (Quotation Marks):
28781         Give the C-x 8 shorthands for curved quotes.
28782         Cross-reference to "Quotation Marks".
28784 2015-06-17  Daiki Ueno  <ueno@gnu.org>
28786         Add pinentry.el for better GnuPG integration
28787         * lisp/pinentry.el: New file.
28788         * etc/NEWS: Add entry about pinentry.el.
28789         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
28790         (Bug#20550)
28792 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
28794         * lisp/emacs-lisp/package.el: Slightly better error reporting.
28796 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
28798         (define-minor-mode): Use setq-default for :global minor modes
28799         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
28800         Use setq-default for :global minor modes (bug#20712).
28802 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
28804         Avoid infloop in redisplay with tall images
28805         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
28806         down near ZV.  (Bug#20808)
28807         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
28808         instead of CHARPOS.
28810 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
28812         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
28813         Fix error reporting.
28815         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
28817         * lisp/emacs-lisp/package.el: Revert buffer after any operation
28818         Call `package-menu--post-refresh' after any operation that changes
28819         the package database (`package-install' and `package-delete').  To
28820         avoid performance issues in large transactions, these functions
28821         add `post-refresh' to `post-command-hook' instead of calling it
28822         immediately.
28823         (package-menu--mark-or-notify-upgrades): New function.
28824         (list-packages): Add it to `package--post-download-archives-hook'.
28825         (package-menu--post-refresh): Lose the upgrade-checking code, add
28826         code to remove itself from `post-command-hook'.
28827         (package-install, package-delete): Add it to `post-command-hook'.
28828         (package-menu-execute): Don't call `package-menu--post-refresh'.
28830 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
28832         Add missing function xref-location-group for elisp-mode.
28833         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
28835 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
28837         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
28838         The behavior now matches the description in the manual.  (Bug#20783)
28840 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
28842         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
28844 2015-06-17  Glenn Morris  <rgm@gnu.org>
28846         Generate char-script-table from Unicode source.  (Bug#20789)
28847         * admin/unidata/Makefile.in (AWK): New, set by configure.
28848         (all): Add charscript.el.
28849         (blocks): New variable.
28850         (charscript.el, ${unidir}/charscript.el): New targets.
28851         (extraclean): Also remove generated charscript.el.
28852         * admin/unidata/blocks.awk: New script.
28853         * admin/unidata/Blocks.txt: New data file, from unicode.org.
28854         * lisp/international/characters.el: Load charscript.
28855         * src/Makefile.in (charscript): New variable.
28856         (${charscript}): New target.
28857         (${lispintdir}/characters.elc): Depend on charscript.elc.
28858         (temacs$(EXEEXT)): Depend on charscript.
28860         * lisp/international/characters.el (char-script-table): Tweak
28861         some ranges to better match the source.  (Bug#20789#17)
28863         Remove "no-byte-compile: t" from a few files.
28864         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
28865         * lisp/obsolete/patcomp.el: No reason not to compile these.
28867 2015-06-16  Glenn Morris  <rgm@gnu.org>
28869         Fix some typos in copied Unicode data.  (Bug#20789)
28870         * lisp/international/characters.el (char-script-table):
28871         * lisp/international/fontset.el (script-representative-chars)
28872         (setup-default-fontset): Fix typos.
28874         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
28875         Don't print filename twice (it's in the prefix now).
28877         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
28878         No longer needed.
28880         Address a compilation warning.
28881         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
28882         Replace 't' with '_' in pcase.
28884         Address some check-declare warnings.
28885         * lisp/simple.el (tabulated-list-print):
28886         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
28887         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
28888         (ns-get-selection): Update declarations.
28890         Address some compilation warnings.
28891         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
28892         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
28893         Replace 't' with '_' in pcase.
28895         Address some compilation warnings.
28896         * lisp/face-remap.el (text-scale-adjust):
28897         * lisp/menu-bar.el (popup-menu-normalize-position):
28898         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
28899         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
28900         * lisp/emacs-lisp/generator.el (cps--transform-1):
28901         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
28902         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
28903         * lisp/progmodes/octave.el (octave-goto-function-definition)
28904         (octave-find-definition-default-filename):
28905         Replace 't' with '_' in pcase.
28907         * lisp/emacs-lisp/pcase.el (pcase--u1):
28908         Paper-over today's bootstrap failure.
28910 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
28912         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
28914         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
28916         Better confirmation message in `find-alternate-file' (Bug#20830)
28917         * lisp/files.el (find-alternate-file'): Improve the confirmation
28918         message to show the buffer name.
28920         Better docstring for null.  (Bug#20815)
28921         * src/data.c (null): Improves the docstring, saying what null returns
28922         when OBJECT is non-nil.
28924 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
28926         * lisp/net/newst-treeview.el: Use lexical-binding.
28928         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
28929         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
28930         New auxiliary function, extracted from filepos-to-bufferpos.
28931         Make sure it terminates.
28932         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
28933         Add support for the `exact' quality.
28935 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
28937         Identify feeds in newsticker treeview with :nt-feed property
28938         * lisp/net/newst-treeview.el:
28939         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
28941 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
28943         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
28944         (pcase--self-quoting-p): Floats aren't self-quoting.
28945         (pcase): Tweak docstring.
28946         (pcase--u1): Deprecate the t pattern.  Improve error detection for
28947         the nil pattern.
28948         (\`): Tweak docstring.  Signal an error for unrecognized cases.
28949         (bug#20784)
28951 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
28953         Fix infloop in filepos-to-bufferpos
28954         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
28955         offset calculation, and make it conditional on the eol-type of the
28956         file's encoding.  (Bug#20825)
28958 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
28960         Fix handling of image cache refcounts.  (Bug#20802)
28961         This backports Eli Zaretskii's solution of this problem for W32
28962         to X and NS.
28963         * src/nsfns.m (image_cache_refcount): Define unconditionally.
28964         (unwind_create_frame): If the image cache's reference count
28965         hasn't been updated yet, do that now.
28966         (Fx_create_frame): Set image_cache_refcount unconditionally.
28967         * src/xfns.c (image_cache_refcount): Define unconditionally.
28968         (unwind_create_frame): If the image cache's reference count
28969         hasn't been updated yet, do that now.
28970         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
28971         unconditionally.
28972         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
28973         X and NS.
28975 2015-06-16  Nils Ackermann  <nils@ackermath.info>
28977         Improve reftex-label-regexps default value
28978         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
28979         keyvals label regexp more strict to better cope with unbalanced
28980         brackets common in math documents.
28982 2015-06-16  Glenn Morris  <rgm@gnu.org>
28984         * doc/emacs/calendar.texi (Format of Diary File):
28985         Move "nonmarking" from here...
28986         (Displaying the Diary): ... to here.
28988         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
28989         Swap the order of these nodes.
28990         * doc/emacs/emacs.texi: Update detailed menu for the above change.
28992         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
28993         Update date of examples.
28994         (Diary, Format of Diary File): Move example from former to latter.
28995         Reduce duplication.
28997         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
28998         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
28999         Don't set no-byte-compile in the outputs.
29000         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
29002 2015-06-15  Glenn Morris  <rgm@gnu.org>
29004         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
29005         * doc/emacs/calendar.texi (Diary, Format of Diary File):
29006         Update for above diary-file change.
29008         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
29009         (apply-macro-to-region-lines): Use user-error.
29011         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
29012         (pages-directory-for-addresses): Doc fixes.
29014 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
29016         * lisp/info.el: Cleanup bytepos/charpos issues
29017         * lisp/international/mule-util.el: Use lexical-binding.
29018         (filepos-to-bufferpos): New function.
29019         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
29020         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
29021         (Info-read-subfile, Info-search): Use 0-based file positions.
29023         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
29024         (perl--syntax-exp-intro-keywords): New var.
29025         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
29026         (bug#20800).
29028 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
29030         Fix quoting when making derived mode docstring
29031         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
29032         Nest regexp-quote inside format, not the reverse.
29033         Problem reported by Artur Malabarba in:
29034         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
29036 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
29038         Fix current-iso639-language on MS-Windows
29039         * lisp/international/mule-cmds.el (set-locale-environment):
29040         Downcase the locale name before interning it.  This is so the
29041         'current-iso639-language' on MS-Windows matches the ':lang'
29042         property of font-spec objects.
29044         Limit Symbola usage some more
29045         * lisp/international/fontset.el (setup-default-fontset): Limit
29046         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
29047         (Bug#20727)
29049 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
29051         * lisp/emacs-lisp/map.el (map-let): Better docstring.
29053 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
29055         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
29056         (help-fns-test-funny-names): Spelling fixes.
29058 2015-06-14  Glenn Morris  <rgm@gnu.org>
29060         * lisp/version.el (emacs-repository-version-git): Demote errors.
29061         Check result is a hash.
29063 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
29065         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
29066         Catch errors that happen before going async.  (Bug#20809)
29068 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
29070         Another improvement of documentation of set-fontset-font
29071         * doc/lispref/display.texi (Fontsets): Say explicitly that
29072         CHARACTER can be a single codepoint.
29073         * src/fontset.c (Fset_fontset_font): Doc fix.
29075         Another improvement for symbol and punctuation characters
29076         * lisp/international/fontset.el (setup-default-fontset): Exclude
29077         from Symbola character ranges for symbols and punctuation covered
29078         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
29079         installed and where its coverage of symbols and punctuation is
29080         known to be good.  (Bug#20727)
29082 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
29084         Some generic support for multi-mode indentation.
29085         * lisp/progmodes/prog-mode.el (prog-indentation-context):
29086         New variable.
29087         (prog-first-column, prog-widen): New convenience functions.
29089 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
29091         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
29092         Don't assume that `tabulated-list-printer' will leave point at the
29093         end of the buffer.  (Bug#20810)
29095 2015-06-13  Glenn Morris  <rgm@gnu.org>
29097         Tweaks for getting repository version; a bit more like it was for bzr
29098         * lisp/version.el (emacs-repository-version-git)
29099         (emacs-repository--version-git-1): New functions,
29100         split from emacs-repository-get-version.
29101         (emacs-repository-get-version): Make the second argument meaningful.
29103         * lisp/startup.el (command-line-1): Inform if skipping relative
29104         file names due to deleted PWD.
29106         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
29107         when starup directory is missing.  (Bug#18851)
29108         (errno.h): Include it.
29110 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
29112         Better fix for documenting `X as "`X"
29113         Fix suggested by Stefan Monnier.
29114         * lisp/help-fns.el (help-fns--signature):
29115         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
29116         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
29117         Don't treat `X specially, as help-fns--signature now handles this.
29119 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
29121         Improve the default fontset when Symbola is not installed
29122         * lisp/international/fontset.el (setup-default-fontset): Only
29123         prepend Symbola and FreeMono font specs for symbols and
29124         punctuation; do not replace the default spec for them.  This
29125         should have better results when Symbola/FreeMono are not
29126         installed.  (Bug#20727)
29128         Improve documentation of ':lang' in font specs
29129         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
29130         use of the ':lang' property of the font spec.
29131         * doc/emacs/frames.texi (Fonts): Document the language names that
29132         can be in the STYLE part of XLFD.
29133         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
29134         property.
29136         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
29138         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
29140         Revert last change in fontset.el
29141         * lisp/international/fontset.el (setup-default-fontset): Revert
29142         the change "Configure Symbola font only if installed", since font
29143         search is evidently not yet set up when this function is called.
29144         (Bug#20727)
29146 2015-06-12  Glenn Morris  <rgm@gnu.org>
29148         Ensure early startup warnings are visible at the end.  (Bug#20792)
29149         * lisp/emacs-lisp/warnings.el (display-warning):
29150         If startup isn't complete, delay the warning.
29151         * lisp/startup.el (normal-top-level, command-line):
29152         Let display-warning automatically handle the needed delays.
29153         Run delayed-warnings-hook.
29155         * lisp/version.el (emacs-repository-get-version):
29156         Avoid calling external executable if possible.  (Bug#20799)
29158 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29160         Document `X as "`X", not as "(` X)"
29161         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
29162         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
29164         * src/print.c (print_object): Minor simplification.
29166 2015-06-12  Glenn Morris  <rgm@gnu.org>
29168         * src/buffer.c (init_buffer): Add final newline to message.
29170 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29172         Configure Symbola font only if installed
29173         * lisp/international/fontset.el (setup-default-fontset):
29174         Don't specify the Symbola font if it's not installed.
29175         Likewise for FreeMono.  (Bug#20727)
29177 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
29179         Configure Symbola font only for symbols and punctuation
29180         * lisp/international/fontset.el (setup-default-fontset): Leave
29181         only symbols and punctuation in the fontset setup for Symbola
29182         font; remove "Greek and Coptic" and "Cyrillic Supplement".
29183         (Bug#20798)
29185 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
29187         Fix crash in fontset-info
29188         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
29189         non-nil.
29191 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29193         Port to Solaris 10 sparc + Sun C 5.13
29194         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
29195         Adjust to process.c change.
29196         * src/process.c (create_process): Declare volatile variables at
29197         top level of this function, so that they're less likely to be
29198         reused later in the function in the code executed by the vforked
29199         child.  Do not declare locals used only in the vforked child, as
29200         they might share memory with locals still live in the parent.
29201         Instead, use the same variables in the child as in the parent.
29202         This works around a subtle bug that causes a garbage collector
29203         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
29205 2015-06-12  Glenn Morris  <rgm@gnu.org>
29207         * lisp/startup.el (normal-top-level): Don't let *Messages* get
29208         a nil default-directory.
29210 2015-06-11  Glenn Morris  <rgm@gnu.org>
29212         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
29214         Some progress towards starting with PWD deleted.  (Bug#18851)
29215         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
29216         * lisp/startup.el (normal-top-level, command-line-1):
29217         * lisp/minibuffer.el (read-file-name-default):
29218         Handle default-directory being nil.
29220 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
29222         Fix "not a tty" bug on Solaris 10
29223         * configure.ac (PTY_OPEN): Define to plain 'open'
29224         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
29225         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
29226         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
29227         hosts that call grantpt which does its work via a setuid subcommand
29228         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
29229         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
29230         seems relevant in that case too.
29232 2015-06-11  Juri Linkov  <juri@linkov.net>
29234         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
29235         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
29236         (Bug#20785)
29238 2015-06-11  Glenn Morris  <rgm@gnu.org>
29240         * lisp/international/characters.el (char-script-table): Fix typo.
29242 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
29244         Fix quoting of help for functions with odd names
29245         While investigating Bug#20759, I discovered other quoting problems:
29246         C-h f mishandled characters like backslash and quote in function names.
29247         This fix changes the behavior so that 'C-h f pcase RET' now
29248         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
29249         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
29250         in src/lread.c's read1 function says that the backslash will be
29251         needed starting in Emacs 25, which implies that 'format' is
29252         correct and the old pcase documention was wrong to omit the backslash.
29253         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
29254         * lisp/help-fns.el (help-fns--signature):
29255         * lisp/help.el (help-add-fundoc-usage):
29256         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
29257         Use help--make-usage-docstring rather than formatting
29258         help-make-usage.
29259         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
29260         Return raw docstring.
29261         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
29262         raw docstring.  Take more care to distinguish raw from cooked dstrings.
29263         (describe-function-1): Let help-fns--signature substitute
29264         command keys.
29265         * lisp/help.el (help--docstring-quote): New function.
29266         (help-split-fundoc): Use it, to quote funny characters more
29267         systematically.
29268         (help--make-usage): Rename from help-make-usage, since this
29269         should be private.  Leave an obsolete alias for the old name.
29270         (help--make-usage-docstring): New function.
29271         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
29273 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
29275         * lisp/thingatpt.el (in-string-p): Revert last change,
29276         since in-string-p is not used in thingatpt.el but only from outside.
29277         Also, use lexical binding.
29279 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
29281         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
29282         * test/automated/let-alist.el (let-alist-cons): Test it.
29284 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
29286         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
29288 2015-06-10  Glenn Morris  <rgm@gnu.org>
29290         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
29292         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
29293         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
29294         * admin/gitmerge.el (gitmerge-commit-message):
29295         Exclude "skipped" messages from ChangeLog once again.
29297         Slight namespace cleanup for thingatpt.el.
29298         * lisp/thingatpt.el (thing-at-point--in-string-p)
29299         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
29300         (thing-at-point--read-from-whole-string): Rename from
29301         old versions without "thing-at-point--" prefix.
29302         Keep old versions as obsolete aliases.  Update all uses.
29304         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
29305         Move requiring of finder from here...
29306         (checkdoc-package-keywords): ... to here.
29308         Use 'user-error' in a few calendar files.
29309         * lisp/calendar/appt.el (appt-add):
29310         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
29311         (calendar-generate):
29312         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
29313         Replace 'error' with 'user-error'.
29315         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
29317         * lisp/files-x.el (add-file-local-variable):
29318         Special-case 'lexical-binding'.  (Bug#20641)
29320         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
29321         No longer autoload.
29322         * doc/misc/autotype.texi (Executables):
29323         Undocument executable-self-display.
29325         * lisp/progmodes/executable.el (executable-self-display):
29326         Use non-obsolete tail syntax.  (Bug#20779)
29327         (executable-self-display): Doc update.
29329 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
29331         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
29332         (finder-known-keywords): Silence byte-compiler.
29334 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
29336         * lisp/simple.el (eval-expression): Macroexpand before evaluating
29337         (bug#20730).
29339         * lisp/progmodes/sh-script.el: Better handle nested quotes.
29340         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
29341         (sh-font-lock-quoted-subshell): Make sure double quotes within single
29342         quotes don't mistakenly end prematurely the surrounding string.
29344         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
29346 2015-06-09  Glenn Morris  <rgm@gnu.org>
29348         * test/automated/Makefile.in (ELFILES): Sort.
29350         * Makefile.in (SUBDIR_MAKEFILES):
29351         * lwlib/Makefile.in (WARN_CFLAGS):
29352         Use built-in Make functions rather than echo+sed.
29354 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
29356         Update char-script-table
29357         * lisp/international/characters.el (char-script-table): Update
29358         from Unicode 8.0 Draft.
29360         Improve font selection for punctuation and other symbols
29361         * src/fontset.c (face_for_char): If the character's script is
29362         'symbol', and the font used for ASCII face has a glyph for it, use
29363         the font for the ASCII face instead of searching the fontsets.
29364         This comes instead of NS-specific code that used the current
29365         face's font instead, which is now disabled due to undesirable
29366         consequences.  (Bug#20727)
29368 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
29370         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
29371         Skip past `#' to find BEG (bug#20771).
29372         * test/automated/elisp-mode-tests.el
29373         (elisp-completes-functions-after-hash-quote): New test.
29375 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
29377         Fix compilation warning/error in --without-x builds
29378         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
29379         code on HAVE_WINDOW_SYSTEM.
29381         Improve the default fontset wrt symbols
29382         * lisp/international/fontset.el (setup-default-fontset): Better
29383         setup of fontset-default for symbols: use Symbola and FreeMono.
29384         (Bug#20727)
29386 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
29388         Add new command checkdoc-package-keywords
29389         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
29390         New defcustom.
29391         (checkdoc-list-of-strings-p): Add doc.
29392         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
29393         non-nil, call `checkdoc-package-keywords'.
29394         (checkdoc-get-keywords): New defun.
29395         (checkdoc-package-keywords): New command.  Warns if the current file
29396         has package.el-style keywords that aren't in `finder-known-keywords'.
29397         * etc/NEWS: Add entry.
29399 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
29401         Avoid crashes when key-binding is called from a timer
29402         * src/keymap.c (Fkey_binding): Don't segfault if called with an
29403         empty vector as KEY.  (Bug#20705)
29405         Fix a thinko in arc-mode.el
29406         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
29407         non-Zip64 case.  (Bug#20769)
29409 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
29411         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
29413 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
29415         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
29416         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
29417         "*warn*", print the warning to the standard output.  (bug#20754)
29419 2015-06-07  Glenn Morris  <rgm@gnu.org>
29421         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
29423         * src/font.c (syms_of_font) <font-log>: Doc fix.
29425         Remove the obsolete leading "*" from some C doc strings.
29426         * src/coding.c (syms_of_coding):
29427         * src/font.c (syms_of_font): Remove leading "*" from docs.
29428         * lisp/cus-start.el (enable-character-translation): Add it.
29430 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
29432         Move gen_origin from program to data
29433         That way, 'make change-history' needs to change only ChangeLog.2,
29434         instead of having to change two files.
29435         * ChangeLog.2: Add commit info for range that this file covers.
29436         * Makefile.in (new_commit_regexp): New macro.
29437         (change-history-nocommit): Simplify, by putting what used to be
29438         the gen_origin value into the data (ChangeLog.2) rather than
29439         into the program (gitlog-to-emacslog).
29440         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
29441         the input file (e.g., ChangeLog.2) rather than by having a
29442         constant in the program.  Substitute it into the output.
29444 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
29446         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
29447         function name (bug#20759).
29449 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
29451         Adapt 'struct timespec' to next release of MinGW runtime
29452         * nt/inc/ms-w32.h (struct timespec): Don't declare if
29453         __struct_timespec_defined is defined.
29455 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
29457         Merge from gnulib
29458         This incorporates:
29459         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
29460         2015-06-05 stdio: Don't redefine gets when using C++
29461         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
29462         2015-06-02 file-has-acl: fix build on Mac OS X 10
29463         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
29464         2015-06-01 pthread_sigmask: discount system version if a simple macro
29465         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
29466         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
29467         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
29468         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
29469         * lib/gnulib.mk: Regenerate.
29471 2015-06-06  Juri Linkov  <juri@linkov.net>
29473         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
29474         before calling grep-compute-defaults because now it affects the
29475         command lines computed in grep-compute-defaults.  (Bug#20728)
29477 2015-06-06  Glenn Morris  <rgm@gnu.org>
29479         Address some compilation warnings.
29480         * lisp/international/mule-cmds.el (w32-get-console-codepage)
29481         (w32-get-console-output-codepage):
29482         * lisp/progmodes/elisp-mode.el (xref-collect-references):
29483         * lisp/version.el (cairo-version-string): Declare.
29484         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
29486 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
29488         Fix display when a font claims large values of ascent and descent
29489         This fixes bug#20628.
29490         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
29491         coordinate of a hollow cursor glyph when the original glyph's
29492         ascent is too small.
29493         (get_font_ascent_descent, normal_char_ascent_descent)
29494         (normal_char_height): New functions.
29495         (handle_single_display_spec, append_space_for_newline)
29496         (calc_pixel_width_or_height, produce_stretch_glyph)
29497         (calc_line_height_property): Use normal_char_ascent_descent and
29498         normal_char_height.
29499         (x_produce_glyphs): When font-global values of ascent and descent
29500         are too large, use per-character glyph metrics instead, if
29501         possible.  But don't allow the glyph row's ascent and descent
29502         values become smaller than the values from the metrics of the
29503         font's "normal" character.
29504         * src/xftfont.c (xftfont_draw):
29505         * src/w32font.c (w32font_draw): Correct the values of ascent and
29506         descent used to draw glyphless characters' hex code in a box.
29507         * src/xterm.c (x_draw_glyph_string_background):
29508         * src/xdisp.c (x_produce_glyphs):
29509         * src/w32term.c (x_draw_glyph_string_background):
29510         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
29511         to detect fonts whose global ascent and descent values are too
29512         large to be used in layout decision, and redraw the background
29513         when that happens.
29514         * src/dispextern.h (FONT_TOO_HIGH): New macro.
29515         (get_font_ascent_descent): Add prototype.
29516         * src/xterm.c (x_new_font):
29517         * src/w32term.c (x_new_font):
29518         * src/nsterm.m (x_new_font):
29519         * src/font.c (font_open_entity):
29520         * src/composite.c (composition_gstring_width):
29521         Use get_font_ascent_descent to obtain reasonable values for ascent
29522         and descent of a font.
29524 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
29526         Add assertion in adjust_point_for_property
29527         * src/keyboard.c (adjust_point_for_property): Add eassert for
29528         current buffer being shown in selected window.
29530 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
29532         Replace uses of in-string-p; make it obsolete
29533         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
29534         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
29536 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
29538         Fix Dired display of an explicit list of files by ls-lisp.el
29539         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
29540         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
29541         correct for when displaying individual files separately, not as
29542         part of listing a directory, in which case these values are not
29543         recomputed by 'ls-lisp-insert-directory', but used verbatim.
29545         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
29547 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
29549         Do not adjust point in a non-selected window
29550         * src/keyboard.c (command_loop_1): Do not adjust point when
29551         current buffer is not shown in selected window (Bug#20590).
29553         * etc/DEBUG: Mention 'maybe_call_debugger'
29555 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
29557         Fix a unit test for map.el
29558         * test/automated/map-tests.el (test-map-let): Fix the test to work
29559         with the new syntax of `map-let'.
29561         * lisp/emacs-lisp/map.el (map-let): Better docstring.
29563         Better syntax for the map pcase pattern
29564         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
29565         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
29567         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
29569         Fix a byte-compiler error in map-put and map-delete
29570         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
29571         called with a symbol.
29573 2015-06-05  Glenn Morris  <rgm@gnu.org>
29575         * admin/gitmerge.el (gitmerge-commit-message):
29576         Revert to including "skipped" messages in ChangeLog once again.
29578 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
29580         Use string> instead of equiv lambda with string<
29581         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
29582         lambda with string<.
29584 2015-06-05  Glenn Morris  <rgm@gnu.org>
29586         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
29587         (map--delete-array): Fix typo.
29589         * test/automated/map-tests.el: Replace "assert" with "should".
29591         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
29592         (SUBDIRS_REL): Derive from SUBDIRS.
29594         Tweak some build messages.
29595         * lisp/Makefile.in ($(lisp)/loaddefs.el):
29596         * lisp/cus-dep.el (custom-make-dependencies):
29597         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
29598         * lisp/international/titdic-cnv.el (batch-titdic-convert):
29599         Don't say how to compile.
29601 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
29603         Omit U+0332 COMBINING LOW LINE in previous change
29604         It turns out that it does not work on Ubuntu 15.04.
29606         Fix transliteration of Bahá'í months
29607         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
29608         Improve quality of Latin transliteration of Bahá'í month names.
29610         Fix curved quotes in a few places
29611         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
29612         The strings in question are not doc strings, so this partially
29613         undoes the recent change that assumed they were doc strings.
29614         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
29615         * lisp/info.el (Info-finder-find-node):
29616         Use curved quotes.
29617         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
29618         Also allow curved quotes in doc strings.
29620 2015-06-04  Glenn Morris  <rgm@gnu.org>
29622         * lisp/Makefile.in (AM_V_at): Add missing definition.
29624         * lisp/Makefile.in: Quieten output a bit.
29625         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
29626         Don't echo directories, since the commands we invoke print them.
29628         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
29629         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
29630         (SUBDIRS_SUBDIRS): New variables.
29631         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
29632         Remove.
29633         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
29634         (update-subdirs, compile-main, compile-clean):
29635         Replace "setwins" usage with new "SUBDIRS" variables.
29637         * lisp/vc/compare-w.el (compare-windows-get-window-function):
29638         Fix :version tag.
29640 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29642         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
29644         Undo removal of x_clear_area call on expose for GTK3 or cairo
29645         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
29646         Clear exposed area.  (Bug#20677)
29648 2015-06-04  Glenn Morris  <rgm@gnu.org>
29650         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
29652         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
29654         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
29655         Rename from quail-lao-update-translation, since lao.el defines that.
29657 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
29659         Handle new-style advice in find-funct
29660         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
29661         Handle new-style advice.  Return the symbol's function definition.
29662         (Bug#20718)
29663         (find-function-library): Update accordingly.
29665 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
29667         Merge branch 'map'
29669         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
29671         Add new function string-greaterp
29672         * lisp/subr.el (string-greaterp): New function.  Also aliased to
29673         `string>'.
29674         * test/automated/subr-tests.el (string-comparison-test): Add unit
29675         tests for `string>'and `string<'.
29676         * src/fns.c (string-lessp): Better docstring.
29678 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
29680         Fix timezone-related functions on MS-Windows
29681         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
29682         'xputenv', even if no reallocation of tzvalbuf was necessary.
29683         This fixes a bug in timezone-related functions on MS-Windows.
29684         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
29686 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
29688         Don't pass raw directory name to 'error'
29689         * lisp/files.el (basic-save-buffer-2): Avoid format error if
29690         a directory name contains a string like "%s".
29692 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
29694         Override 'grep --color=always'
29695         * lisp/progmodes/xref.el (xref-collect-matches):
29696         Override --color=always in grep-find-template.
29698 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
29700         Fix error introduced recently in file-notify-tests.el
29701         * test/automated/file-notify-tests.el
29702         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
29703         (file-notify--deftest-remote): Revert previous patch, not
29704         necessary anymore.
29706 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
29708         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
29709         Starting from a display string after a newline, point went to the
29710         previous line.  Also, fix an inadvertent use of a buffer position
29711         with FETCH_BYTE.  (Bug#20701)
29713 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
29715         Instrument file-notify-test.el in order to catch hydra error
29716         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
29717         Wrap body by `ignore-case', in order to trap non-local errors.
29719 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29721         Undo previous changes in non-toolkit scroll bar drawing
29722         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
29723         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
29725 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
29727         * .gitignore: Also ignore doc/*/*/*.html and .ps.
29729         Support quotes 'like this' in info files
29730         This is possible when 'makeinfo --disable-encoding' is used
29731         in Texinfo 5.
29732         * lisp/calc/calc-help.el (calc-describe-thing):
29733         * lisp/gnus/gnus-art.el (gnus-button-alist):
29734         * lisp/info.el (Info-find-index-name):
29735         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
29736         Also support quotes 'like this'.
29737         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
29738         * lisp/finder.el (finder-font-lock-keywords): Remove var that
29739         hasn't been used in years, instead of bothering to fix its quoting.
29741 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
29743         * .gitignore: Remove !test/etags/html-src/*.html.
29744         It's no longer needed, since *.html was removed.  Sort.
29746 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
29748         Restore <D> instead of '.' in grep-find-template
29749         * lisp/cedet/semantic/symref/grep.el
29750         (semantic-symref-grep-use-template): Update a comment.
29751         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
29752         instead of '.' in grep-find-template (bug#20719).
29753         (rgrep): Pass nil as the directory to rgrep-default-command.
29754         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
29755         default value for DIR.
29756         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
29757         workaround.
29759 2015-06-02  Glenn Morris  <rgm@gnu.org>
29761         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
29763         * configure.ac (emacs_config_features): Add Cairo.
29765         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
29767 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
29769         Ensure that autorevert works for remote files in file-notify-tests.el
29770         * test/automated/file-notify-tests.el (file-notify--test-desc):
29771         New defvar.
29772         (file-notify--test-remote-enabled)
29773         (file-notify-test00-availability, file-notify-test01-add-watch)
29774         (file-notify-test02-events): Use it.
29775         (file-notify--test-event-test): Check proper descriptor.
29776         (file-notify-test03-autorevert): Ensure that
29777         `visited-file-modtime' has changed.  (Bug#20392)
29779 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
29781         Add a pcase pattern for maps and `map-let' based on it
29782         * lisp/emacs-lisp/map.el (map-let): New macro.
29783         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
29784         * test/automated/map-tests.el: New test for `map-let'.
29786 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
29788         Reuse rgrep mechanics in xref-find-regexp
29789         * lisp/progmodes/grep.el (rgrep-default-command):
29790         Extract from `rgrep'.
29791         * lisp/progmodes/xref.el (xref-collect-references): Split from
29792         `xref-collect-matches'.  Only handle the case of symbol search.
29793         (xref-collect-matches): Instead of Semantic Symref, use
29794         `rgrep-default-command', to take advantage of its directory and
29795         file ignore settings.
29796         (xref--collect-match): Remove the last argument, leaving the
29797         regexp construction up to the caller.
29798         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
29799         Change to take the xref-collect- function to use as an argument.
29800         (elisp-xref-find): Update accordingly.
29801         * lisp/progmodes/etags.el (etags--xref-find-matches)
29802         (etags-xref-find): Same.
29804         Move xref-elisp-location to elisp-mode.el
29805         * lisp/progmodes/xref.el (xref-elisp-location)
29806         (xref-make-elisp-location, xref-location-marker): Remove here.
29807         (xref--xref): Don't limit the type of the location slot.
29808         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
29809         Define as a cl-struct here.
29810         (xref-location-marker): Move here.
29812 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
29814         Minor tweaks for .gitignore
29815         * .gitignore: Don't ignore versioned *.html and *.ps files.
29816         Don't ignore admin/notes/tags that might be ignored as TAGS
29817         on case-insensitive filesystems.  (Bug#20710)
29819 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
29821         Generate curved quotes in ert doc
29822         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
29823         (ert-results-mode-menu)
29824         (ert-results-pop-to-backtrace-for-test-at-point)
29825         (ert-results-pop-to-messages-for-test-at-point)
29826         (ert-results-pop-to-should-forms-for-test-at-point)
29827         (ert-describe-test):
29828         Quote ‘like this’, not `like this', when generating doc strings
29829         and the like.
29830         * test/automated/ert-x-tests.el (ert-test-describe-test):
29831         Allow quoting ‘like this’.
29833 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
29835         Add test for previous commit
29836         * test/automated/replace-tests.el: New file.
29837         (query-replace--split-string-tests): Add test for previous commit.
29839         Avoid confusion in query-replace history when replacing NUL chars
29840         * lisp/replace.el (query-replace--split-string): New function.
29841         (query-replace-read-from): Rely on the 'separator' property
29842         instead of searching for the NUL character (Bug#20690).
29844 2015-06-02  Glenn Morris  <rgm@gnu.org>
29846         Merge from origin/emacs-24
29847         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
29849         * admin/gitmerge.el (gitmerge-commit-message):
29850         Exclude "skipped" messages from ChangeLog.
29852 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
29854         Sync with Tramp repository
29855         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
29856         messages.
29857         (tramp-handle-make-auto-save-file-name): When calling
29858         `make-auto-save-file-name' internally, make sure it uses Unix-like
29859         behavior, not Windows-like behavior.
29860         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
29861         the local case, because "chown" might fail on w32.
29862         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
29863         for XEmacs.
29865 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
29867         MS-Windows followup for batch stdout/stderr output changes
29868         * lisp/international/mule-cmds.el (set-locale-environment):
29869         In batch mode, use console codepages for keyboard and terminal
29870         encoding.  (Bug#20545)
29872         Update .gitattributes for DOS EOL files
29873         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
29874         CRLF end-of-line format.
29876         NS equivalents of xterm.c and w32term.c changes
29877         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
29878         glyph string background also when the font in use claims
29879         preposterously large global height value.  Helps to remove
29880         artifacts left from previous displays when glyphless characters
29881         are displayed as hex code in a box.
29882         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
29883         value for FRAME_LINE_HEIGHT, even when a font claims very large
29884         value for its height.
29886 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
29888         Avoid grave accent quoting in stderr diagnostics
29889         A few Emacs diagnostics go directly to stderr, and so can't easily
29890         contain curved quotes (as non-UTF-8 locales might mishandle them).
29891         Instead of bothering to add support for this rarity, reword the
29892         diagnostics so that they don't use grave accent to quote.
29893         * src/alloc.c (mark_memory): Fix comment.
29894         * src/buffer.c (init_buffer):
29895         * src/dispnew.c (init_display):
29896         * src/emacs.c (main, sort_args):
29897         * src/lread.c (dir_warning):
29898         * src/term.c (init_tty):
29899         * src/unexmacosx.c (unexec):
29900         * src/xfns.c (select_visual):
29901         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
29902         Reword stderr diagnostics to avoid quoting `like this'.
29903         * src/unexmacosx.c: Include errno.h.
29904         * src/xfns.c (select_visual): Encode value for locale.
29906 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
29908         Treat batch stdout/stderr like standard display
29909         Calls like (print FOO) could generate improperly encoded or
29910         hard-to-read output if FOO contains characters outside the system
29911         locale.  Fix this by treating batch stdout and stderr like
29912         interactive standard display, when it comes to transliterating and
29913         encoding characters (Bug#20545).
29914         * doc/emacs/mule.texi (Communication Coding):
29915         * doc/lispref/display.texi (Active Display Table):
29916         * doc/lispref/nonascii.texi (Locales):
29917         * etc/NEWS:
29918         * src/coding.c (syms_of_coding):
29919         * src/dispnew.c (syms_of_display):
29920         Document this.
29921         * src/print.c: Include disptab.h.
29922         (printchar_to_stream): New function, with much of the guts of the
29923         old Fexternal_debugging_output, except this one also uses the
29924         standard display table.
29925         (printchar, strout, Fexternal_debugging_output): Use it.
29927 2015-05-31  Glenn Morris  <rgm@gnu.org>
29929         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
29931 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
29933         Remove DEFSYMs that aren't used at the C level.  Also:
29934         * src/decompress.c (Qzlib_dll):
29935         * src/font.c (Qunicode_sip):
29936         * src/frame.c (Qtip_frame):
29937         * src/ftfont.c (Qserif):
29938         * src/gnutls.c (Qgnutls_dll):
29939         * src/xml.c (Qlibxml2_dll):
29940         Move from here ...
29941         * src/w32fns.c (syms_of_w32fns): ... to here,
29942         as these are used only on MS-Windows.
29944 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
29946         Use another default value for tramp-histfile-override
29947         * lisp/net/tramp-sh.el (tramp-histfile-override):
29948         Use ".tramp_history" as default.
29949         Fixes bug#20446
29951 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
29953         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
29955 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
29957         * etc/NEWS: Add an entry about map.el.
29959         Improve the docstring of functions in map.el
29960         Since a map is not a data structure but a concept, adding information
29961         about the possible types of maps can be useful information.
29962         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
29963         each public function.
29965 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
29967         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
29968         specific tests depending on the type of the map.
29970         * lisp/emacs-lisp/map.el: Better docstrings.
29972 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
29974         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
29976 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
29978         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
29980         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
29982         Fix a false negative in `map-elt' with alists and values being nil
29983         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
29984         found but its associated value is nil, do not return the default
29985         value.
29986         * test/automated/map-tests.el: Add a regression test.
29988 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
29990         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
29992         Do not signal an error when trying to delete a key from an array
29993         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
29994         the key is present to avoid signaling an error.
29995         * test/automated/map-tests.el: Add a test for deleting non-existing
29996         keys from maps.
29998         * lisp/emacs-lisp/map.el: Better docstring.
30000         Minor improvement in map-elt
30001         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
30002         doing a lookup in arrays, but check the boundaries of the array
30003         instead.
30004         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
30005         and a negative integer as key.
30007 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
30009         * test/automated/map-tests.el: Refactoring of test methods.
30011         * test/automated/map-tests.el: Renamed from map-test.el.
30013 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
30015         * lisp/emacs-lisp/map.el (map-into): Better error message.
30017         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
30019         Throw an error when converting a map into an unknown map type
30020         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
30021         not valid.
30022         * test/automated/map-tests.el: Add a regression test.
30024         New library map.el similar to seq.el but for mapping data structures.
30025         * test/automated/map-tests.el: New file.
30026         * lisp/emacs-lisp/map.el: New file.
30028 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
30030         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
30031         there's no explicit tag name (bug#20629).
30033 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
30035         Remove format2
30036         * src/editfns.c, src/lisp.h (format2): Remove.
30037         It is more trouble than it's worth, now that we have CALLN.
30038         This is just a minor refactoring.
30039         * src/buffer.c (Fkill_buffer):
30040         * src/dbusbind.c (XD_OBJECT_TO_STRING):
30041         * src/fileio.c (barf_or_query_if_file_exists):
30042         Adjust to format2 going away.
30044         Don't misencode C-generated messages
30045         Also, be more consistent about calls to 'Fmessage' vs 'message'.
30046         * src/alloc.c (Fgc_status):
30047         Prefer AUTO_STRING to build_string for Fmessage call.
30048         * src/data.c (Fmake_variable_buffer_local)
30049         (Fmake_local_variable, Fmake_variable_frame_local):
30050         * src/doc.c (store_function_docstring):
30051         Use Fmessage, not message, since the argument can contain
30052         non-ASCII characters, and this can cause the resulting message
30053         to be incorrectly encoded for the current environment.
30054         * src/fns.c (maybe_resize_hash_table):
30055         * src/xselect.c (x_clipboard_manager_save_all):
30056         Use message, not Fmessage, since Fmessage's power isn't needed here.
30057         * src/process.c (Fmake_network_process): Reword message to avoid %s.
30058         * src/xdisp.c (vmessage): Document restrictions on message contents.
30059         (message_nolog) [false]: Remove unused code.
30061         Use \r rather than ^M in string literals
30062         This is less likely to cause problems on platforms that
30063         use CRLF (or CR!) termination for lines.
30065         Update .gitattributes to match current sources
30066         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
30067         * .gitattributes: Accommodate tests that insist on DOS format.
30068         Remove test/automated/data/decompress/foo-gzipped.
30069         Add etc/e/eterm-color.
30071 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
30073         * doc/emacs/mule.texi (Modifying Fontsets):
30074         Document face-ignored-fonts.  (Bug#20628)
30076         Add etags test for the new -Q option
30077         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
30078         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
30079         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
30080         test-case changes below.
30081         * test/etags/ETAGS.good_6: New file.
30082         * test/etags/cp-src/x.cc: New file.
30083         * test/etags/Makefile (CPSRC): Add x.cc.
30084         (check): Add one more test, for -Q.
30086 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
30088         Use list for the tags completion table, not obarray
30089         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
30090         list instead of an obarray
30091         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
30092         (tags-completion-table): Combine those lists.
30093         (tags-completion-table): Update the docstring.
30095 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
30097         Restore EOL format testing in etags
30098         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
30099         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
30100         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
30101         test-case changes below.
30102         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
30103         * test/etags/cp-src/c.C (B): Add back stray CR character.
30104         * test/etags/c-src/dostorture.c: Add back.
30105         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
30107 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
30109         Declare Emacs on MS-Windows to be DPI-aware
30110         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
30111         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
30112         This avoids Windows entering compatibility mode for Emacs,
30113         which causes fonts to look less nice.
30115 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
30117         Improve Tramp traces
30118         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
30119         * lisp/net/tramp.el (tramp-debug-message): Use it.
30121 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
30123         backup-buffer minor reworking of internals
30124         * lisp/files.el (backup-buffer): Rework to avoid a couple of
30125         unused locals inadvertently introduced in the previous change.
30127         backup-buffer now reports .emacs.d/%backup% ills
30128         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
30129         fails due to disk space exhaustion or whatever, do not pretend
30130         that it succeeded.  More generally, do a better job of checking
30131         for I/O failures, and limit the scope of the condition-case to
30132         just the operations where file errors should be caught and ignored
30133         (Bug#20595).  Also, don't bother trying to delete later backups if
30134         an earlier deletion fails, as this is a sign of trouble and it's
30135         better to stop when there's trouble.
30137         copy-file now truncates output after writing
30138         * src/fileio.c (Fcopy_file): Truncate output after writing rather
30139         than before.  This is more likely to work than truncation before
30140         writing, if the file system is out of space or the user is over
30141         disk quota (Bug#20595).  Also, check for read errors.
30143 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
30145         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
30146         Don't load descriptors from directories above the package directories.
30148 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
30150         Merge from gnulib
30151         This incorporates the following (Bug#20681):
30152         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
30153         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
30154         * lib/set-permissions.c: Copy from gnulib.
30156 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
30158         Improve Tramp traces
30159         * lisp/net/tramp.el (tramp-call-process-region): New defun.
30160         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
30162 2015-05-29  Glenn Morris  <rgm@gnu.org>
30164         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
30166 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
30168         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
30169         The signature was changed in the cairo branch, merged on 2015-05-23.
30170         This oversight broke compiling only the non-toolkit X version.
30172 2015-05-29  Samer Masterson  <samer@samertm.com>
30174         * doc/lispref/os.texi: Update initial-buffer-choice docs.
30176 2015-05-29  Glenn Morris  <rgm@gnu.org>
30178         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
30179         Mark as an expected failure.
30181 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
30183         Change package test to look for curved quotes
30184         * test/automated/package-test.el (package-test-describe-package)
30185         (package-test-signed): Search for curved single quotes as well as
30186         for grave accent and apostrophe.
30188 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
30190         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
30191         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
30193 2015-05-28  Samer Masterson  <samer@samertm.com>
30195         Show files when `initial-buffer-choice' is non-nil
30196         * lisp/startup.el (command-line-1): When Emacs is given a file as an
30197         argument and `initial-buffer-choice' is non-nil, display both the file
30198         and `initial-buffer-choice'.  For more than one file, show
30199         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
30200         commands out of the command line arg parser.
30201         (initial-buffer-choice): Clarify docstring.
30203 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
30205         Fix last commit
30206         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
30207         (gnulib module qcopy-acl): Add back, as it is harmless.  This
30208         minimizes differences wrt lib/gnulib.mk.
30210         Fix the MS-Windows build as followup to gnulib update
30211         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
30212         set-permissions.c, as they don't compile on MinGW.
30213         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
30215 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
30217         Revert my change to gnus-art.el
30218         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
30219         It wasn't that important, and it caused a Gnus build to fail.  See:
30220         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
30222         New minor mode Electric Quote
30223         This lets you easily insert quotes ‘like this’ by typing
30224         quotes `like this', and similarly you can easily insert
30225         quotes “like this” by typing quotes ``like this'' (Bug#20545).
30226         * doc/emacs/basic.texi (Inserting Text):
30227         * doc/emacs/modes.texi (Minor Modes):
30228         * etc/NEWS: Document it.
30229         * doc/emacs/text.texi (Quotation Marks): New section.
30230         * lisp/electric.el (electric-quote-comment)
30231         (electric-quote-string, electric-quote-paragraph):
30232         New custom vars.
30233         (electric--insertable-p)
30234         (electric-quote-post-self-insert-function): New functions.
30235         (electric-quote-mode, electric-quote-local-mode): New minor modes.
30236         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
30237         Add curved single quotes to electric-pair-text-pairs.
30238         Set electric-quote-string in this buffer.
30240         A few more doc string fixes (Bug#20385)
30242         Accept curved quotes in doc strings
30243         * lisp/info-look.el (info-lookup-guess-custom-symbol):
30244         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
30246         Generate curved quotes in pseudo-info nodes
30247         * lisp/info.el (Info-virtual-index-find-node)
30248         (Info-virtual-index, Info-apropos-find-node, info-apropos):
30249         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
30251         Fix minor quoting problems in doc strings
30252         Most of these fixes involve escaping grave accents that are
30253         actually intended to be grave accents, not left quotes.
30254         (Bug#20385)
30256         Support curved quotes in doc strings
30257         Emacs's traditional doc string style has been to quote symbols
30258         `like this'.  This worked well on now-obsolete terminals where
30259         ` and ' were symmetric quotes, but nowadays curved quotes
30260         ‘like this’ look better.  Support quoting the new way too.
30261         (Bug#20385)
30262         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
30263         ‘like-this’ as well as `like-this'.
30264         * etc/NEWS: Mention this.
30265         * lisp/cedet/mode-local.el (overload-docstring-extension)
30266         (mode-local-print-binding, mode-local-describe-bindings-2):
30267         * lisp/cus-theme.el (describe-theme-1):
30268         * lisp/descr-text.el (describe-text-properties-1, describe-char):
30269         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
30270         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
30271         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
30272         (eieio-help-constructor):
30273         * lisp/emacs-lisp/package.el (describe-package-1):
30274         * lisp/faces.el (describe-face):
30275         * lisp/help-fns.el (help-fns--key-bindings)
30276         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
30277         (help-fns--interactive-only, describe-function-1):
30278         (describe-variable):
30279         * lisp/help.el (describe-mode):
30280         * lisp/international/mule-cmds.el (describe-input-method)
30281         (describe-language-environment):
30282         * lisp/international/mule-diag.el (describe-character-set)
30283         (print-coding-system-briefly, list-input-methods)
30284         (list-input-methods-1):
30285         Insert curved quotes rather than grave accent and apostrophe.
30286         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
30287         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
30288         (checkdoc-proper-noun-region-engine):
30289         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
30290         (lisp-cl-font-lock-keywords-2):
30291         * lisp/finder.el (finder-font-lock-keywords):
30292         * lisp/gnus/gnus-art.el (gnus-button-alist):
30293         * lisp/help-fns.el (help-do-arg-highlight)
30294         (describe-function-1, describe-variable):
30295         * lisp/help-mode.el (help-xref-symbol-regexp)
30296         (help-xref-info-regexp, help-xref-url-regexp):
30297         * lisp/help.el (describe-mode):
30298         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
30299         * lisp/wid-edit.el (widget-documentation-link-regexp):
30300         Parse symbols quoted ‘like-this’ as well as `like-this'.
30301         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
30302         Add "‘" and "’" to electric-pair-text-pairs.
30303         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
30304         (elisp-completion-at-point, elisp--preceding-sexp):
30305         Also treat "‘" and "’" as quoting chars.
30307         substitute-command-keys now curves quotes
30308         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
30309         * doc/lispref/help.texi (Keys in Documentation):
30310         * etc/NEWS: Document this.
30311         * src/doc.c (Fsubstitute_command_keys): Implement it.
30313 2015-05-28  Glenn Morris  <rgm@gnu.org>
30315         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
30316         (rmail-summary-by-topic, rmail-summary-by-senders):
30317         No longer strip leading/trailing whitespace.
30319         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
30320         (f90-no-block-limit): Add "enum".  (Bug#20680)
30321         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
30322         New tests.
30324 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
30326         * lisp/isearch.el (isearch--current-buffer): Give a default value.
30327         Un-revert changes mistakenly dropped by f9fabb2b.
30329 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
30331         Merge from gnulib
30332         This incorporates:
30333         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
30334         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
30335         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
30336         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
30337         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
30338         2015-05-26 stdio: fix probe on mingw under gcc 5.1
30339         * admin/merge-gnulib (GNULIB_MODULES):
30340         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
30341         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
30342         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
30343         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
30344         Get latest versions from gnulib.
30345         * lib/get-permissions.c, lib/set-permissions.c: New files.
30346         * lib/gnulib.mk, m4/gnulib-comp.m4:
30347         Regenerate.
30348         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
30350 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
30352         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
30353         process here.
30354         (vc-do-command): Rather than here (bug#20608).
30356 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
30358         Avoid gratuitous delete-dups in face-at-point
30359         * lisp/faces.el (face-at-point): Do not compute the properly
30360         ordered, duplicate-free list if only a single value is
30361         requested anyway.  (Bug#20519)
30363         Show the exact C-x 8 RET invocation in describe-char
30364         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
30365         invocation instead of a template.  (Bug#20522)
30367 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
30369         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
30370         (package-menu--post-refresh): Call `tabulated-list-print' with the
30371         UPDATE argument.  This only affects the refresh action, the revert
30372         action still erases tags.
30373         (package-menu-get-status): Change `assq' to `assoc'.
30374         (package-menu--mark-upgrades-1): New function.
30375         (package-menu--mark-upgrades-pending): New variable.
30376         (package-menu-mark-upgrades): Use them to delay marking until
30377         after refresh is done.
30378         (package-menu--post-refresh): Call mark-upgrades-1 if
30379         mark-upgrades-pending is non-nil.
30381 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
30383         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
30384         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
30385         (commit 3953c4be2816537be95520605d45b866dc731f4b).
30387 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
30389         * lisp/isearch.el (isearch--current-buffer): New var.
30390         (isearch-update): Set cursor-sensor-inhibit here.
30391         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
30392         (bug#20532).
30394         Change inhibit-point-motion-hooks to t
30395         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
30396         to t and document it as obsolete.
30398 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
30400         Support ZIP files that use Zip64 extensions
30401         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
30402         format of central directory offsets used by Zip64 extensions.
30403         (Bug#20665)
30405 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
30407         New test tramp-test30-make-auto-save-file-name
30408         * test/automated/tramp-tests.el
30409         (tramp-test30-make-auto-save-file-name): New test.
30410         (tramp-test31-special-characters)
30411         (tramp-test31-special-characters-with-stat)
30412         (tramp-test31-special-characters-with-perl)
30413         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
30414         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
30415         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
30416         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
30418         Improve tramp-handle-make-auto-save-file-name
30419         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
30420         (tramp-handle-make-auto-save-file-name): Let native
30421         `make-auto-save-file-name' use `auto-save-file-name-transforms',
30422         if `tramp-auto-save-directory' is not set.
30424 2015-05-27  Glenn Morris  <rgm@gnu.org>
30426         No longer set dired-directory in eshell.  (Bug#16477)
30427         * lisp/eshell/esh-mode.el (eshell-mode):
30428         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
30430         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
30432         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
30433         * lisp/progmodes/cc-mode.el (c-mode-help-address):
30434         Change to submit@debbugs.
30435         (c-mode-bug-package): New constant.
30436         (mail-position-on-field): Declare.
30437         (c-submit-bug-report): Insert X-Debbugs-Package header.
30438         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
30439         Mention debbugs.gnu.org.
30441 2015-05-26  Glenn Morris  <rgm@gnu.org>
30443         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
30444         (rmail-summary-by-recipients, rmail-summary-by-topic)
30445         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
30446         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
30448 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
30450         Handle curved quotes in info files
30451         * lisp/calc/calc-help.el (calc-describe-thing):
30452         * lisp/info.el (Info-find-index-name)
30453         (Info-try-follow-nearest-node, Info-fontify-node):
30454         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
30455         In info files, process quotes ‘like this’ the same way we process
30456         quotes `like this'.  This catches a few places we missed earlier.
30458 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
30460         xref-prompt-for-identifier: Use a list value
30461         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
30462         value, to be interpreted as a list of commands.
30463         (xref--prompt-p): New function.
30464         (xref--read-identifier): Use it.
30466 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
30468         Teach MS-Windows font back-end return per-glyph ascent/descent
30469         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
30470         values.
30471         * src/w32font.c (w32font_text_extents): Compute, cache, and
30472         accumulate per-glyph ascent and descent values, instead of copying
30473         global values from the font.  If the values are not available from
30474         the font data, i.e., non-TTF fonts, fall back on font-global values.
30475         (compute_metrics): Compute and return per-glyph ascent and descent
30476         values, if returned by GetGlyphOutlineW, falling back on
30477         font-global values.  (Bug#20628)
30478         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
30479         height of rectangle to be drawn, to be compatible with
30480         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
30481         box, when per-glyph ascent/descent values are used.
30483 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
30485         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
30486         Don't sort if sorter is nil.
30488 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
30490         Fix Bug#20621
30491         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
30492         are major modes which set `auto-save-mode' on their own rules;
30493         Tramp shall not overwrite such settings.
30495 2015-05-26  Glenn Morris  <rgm@gnu.org>
30497         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
30498         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
30499         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
30500         Doc updates.
30501         (vc-dir-mode): Remove unnecessary autoload.
30503 2015-05-25  Philipp Stephani  <phst@google.com>
30505         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
30506         (xterm--extra-capabilities-type): Add `getSelection'.
30507         (xterm--query): Add `no-async' argument.
30508         (xterm--init-activate-get-selection): New function.
30509         (terminal-init-xterm): Use it.
30510         (xterm--init-modify-other-keys): Rename from
30511         terminal-init-xterm-modify-other-keys.
30512         (xterm--init-bracketed-paste-mode): Rename from
30513         terminal-init-xterm-bracketed-paste-mode.
30514         (xterm--init-activate-set-selection): Rename from
30515         terminal-init-xterm-activate-set-selection.
30516         (xterm--selection-char): New function.
30517         (gui-backend-set-selection): Use it.  Use the &context to only apply
30518         this method in terminals where we enabled the feature.
30519         (gui-backend-get-selection): New method.
30521 2015-05-25  Daniel Colascione  <dancol@dancol.org>
30523         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
30524         keyword constants to C++.
30526 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
30528         Make TAGS files more portable to MS-Windows
30529         * etc/NEWS: Document this.
30530         * lib-src/etags.c (readline_internal) [DOS_NT]:
30531         Don't treat CRs differently from GNUish hosts.
30532         * lisp/progmodes/etags.el (etags-goto-tag-location):
30533         Adjust STARTPOS to account for the skipped CRs in dos-style files.
30535 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
30537         Improve fix of bug#20634 in tramp-sh.el
30539 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
30541         Fix a typo in last commit
30542         * lib-src/etags.c (C_entries): Fix a typo.
30543         * test/etags/ETAGS.good_1:
30544         * test/etags/ETAGS.good_2:
30545         * test/etags/ETAGS.good_3:
30546         * test/etags/ETAGS.good_4:
30547         * test/etags/ETAGS.good_5:
30548         * test/etags/CTAGS.good: Update due to the change in etags.c.
30550         Fix tagging of class members in C-like OO languages
30551         * lib-src/etags.c (longopts): Add new option --class-qualify and
30552         its shorthand -Q.
30553         (print_help): Add help text for --class-qualify.
30554         (main): Add handling of -Q.
30555         (consider_token, C_entries) <omethodparm>: Append argument types
30556         to Objective C methods only if --class-qualify was specified.
30557         Qualify C++, Objective C, and Java class members with their class
30558         names only if --class-qualify was specified.
30559         (C_entries): If --class-qualify was not specified, remove the
30560         namespace and class qualifiers from tag names of C++ methods.
30561         This allows to use etags.el as xref back-end without the
30562         tag-symbol-match-p method, which greatly increases the number of
30563         potentially false positives.  (Bug#20629)
30564         * doc/man/etags.1: Update to document the new --class-qualify
30565         option.
30566         * test/etags/ETAGS.good_1:
30567         * test/etags/ETAGS.good_2:
30568         * test/etags/ETAGS.good_3:
30569         * test/etags/ETAGS.good_4:
30570         * test/etags/ETAGS.good_5:
30571         * test/etags/CTAGS.good: Update due to changes in etags.c.
30573 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
30575         (cl-generic-define-method): Side effects are evil (bug#20644)
30576         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
30577         cons-cells that might be used as keys in an `equal' hash-table.
30579 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
30581         Make erc timestamps visible again
30582         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
30583         Make timestamps visible again (if requested).
30585 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
30587         Fix last change in etags.c that broke tagging compresed files
30588         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
30589         quoting of decompression shell command for MS-Windows/MS-DOS.
30591 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
30593         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
30594         (Bug#20639)
30596 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
30598         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
30599         Fix typo in "Inhibit `epa-file-handler' in Tramp"
30600         (commit 89035e247591c8d688fce922b7079881aa110f33).
30602 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
30604         Fix IPv6 addresses in Tramp
30605         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
30606         Add square brackets around host name.
30608 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
30610         Inhibit `epa-file-handler' in Tramp (Bug#20634)
30611         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
30612         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
30613         `epa-file-handler'.
30615 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
30617         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
30618         (pcase-let): Document the behavior in case the pattern doesn't match.
30620 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
30622         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
30623         (tabulated-list-print): New optional argument, UPDATE.  If
30624         non-nil, the list is printed by only adding and deleting the
30625         changed entries, instead of erasing the whole buffer.  This method
30626         is much faster when few or no entries have changed.
30627         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
30628         * etc/NEWS: Document it.
30630         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
30631         (tabulated-list--get-sorter): New function.
30632         (tabulated-list-print): Restore window-line when remember-pos is
30633         passed and optimize away the `nreverse'.
30635 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
30637         Simpilify etags TEX mode scanning
30638         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
30639         Remove static vars.
30640         (TeX_commands): Deduce escapes here instead.
30641         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
30642         This removes the need for a reset_input call.
30644         Improve etags I/O error reporting
30645         * lib-src/etags.c:
30646         Don't include sys/types.h and sys/stat.h; no longer needed.
30647         (infilename): New static var.
30648         (process_file_name): Don't call 'stat'.  Instead, just open the
30649         file for reading and report any errors.  Don't bother making
30650         a copy of the file argument; it's not needed.  Be more careful to
30651         use the failing errno when reporting an error.
30652         Quote the real name better (though no perfectly)
30653         when passing it to the shell.
30654         (reset_input): New function, which reports I/O errors.
30655         All uses of 'rewind' changed to use this function.
30656         (perhaps_more_input): New function, which also checks for
30657         I/O errors.  All uses of 'feof' changed to use this function.
30658         (analyze_regex): Report an error if fclose fails.
30659         (readline_internal): Report an error if getc fails.
30660         (etags_mktmp): Return an error if close fails.
30662         etags.c: avoid side effects in 'if'
30663         * lib-src/etags.c (process_file_name, Perl_functions)
30664         (TEX_decode_env): Hoist side effects into previous statement.
30666         .gitignore tweaks
30667         * .gitignore: Ignore all *.stamp files.  Sort.
30668         Ignore [0-9]*.txt (commonly used name for git patches)
30669         and /vc-dwim-log-* (vc-dwim temporary).
30671 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
30673         Fix last change in etags.c, which failed the test suite
30674         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
30675         before the last change.
30677 2015-05-23  Glenn Morris  <rgm@gnu.org>
30679         Remove charset map files from repository, generate in first bootstrap
30680         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
30681         (all): Create the stamp file.
30682         (extraclean): Delete the stamp file.
30683         * src/Makefile.in (lispintdir, charsets): New variables.
30684         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
30685         New rules.
30686         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
30687         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
30688         * etc/charsets/*.map: Remove from repository.
30690 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
30692         Cleanup etags.c to use locale-independent code
30693         Although this doesn't alter behavior (as etags doesn't use
30694         setlocale), the new version is more clearly locale-independent and
30695         the executable is a bit smaller on my platform.
30696         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
30697         Include <c-ctype.h> instead of <ctype.h>.
30698         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
30699         (begtk, midtk):
30700         Remove; no longer needed.
30701         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
30702         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
30703         c_islower, c_tolower, respectively.
30704         (notinname, begtoken, intoken, endtoken): Rewrite as functions
30705         instead of macros, and initialize the tables at compile-time
30706         rather than at run-time.
30708         Put default action first in src/Makefile
30709         * src/Makefile.in (all): Put this rule before lisp.mk.
30710         That way, plain 'make' works in the src directory again.
30712 2015-05-23  Glenn Morris  <rgm@gnu.org>
30714         * Makefile.in: Fix extraclean rule.
30715         (extraclean_dirs): New.
30716         (extraclean): Use it.
30718 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
30720         Avoid compiler warning in image.c on MS-Windows
30721         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
30722         warning in image.c.
30724 2015-05-23  Glenn Morris  <rgm@gnu.org>
30726         Fix --without-toolkit-scroll-bars builds.
30727         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
30728         Add new argument to x_clear_area1.
30729         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
30730         Update x_clear_area arguments.
30732         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
30733         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
30734         Change to included version.
30735         (LOCAL, local, totalclean): Remove.
30736         (extraclean): Delete all generated files.
30738 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
30740         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
30741         CVS/Entries exists.
30743         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
30745         * lisp/progmodes/etags.el (tags-completion-at-point-function):
30746         Don't trust the find-tag function.
30748 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
30750         Pacify --enable-gcc-warnings
30751         * src/frame.h (x_query_color): Remove redundant extern decl.
30752         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
30753         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
30754         (ftcrfont_text_extents, ftcrfont_draw):
30755         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
30756         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
30757         (x_ins_del_lines, frame_highlight, frame_unhighlight)
30758         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
30759         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
30760         (x_update_window_begin, x_connection_closed)
30761         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
30762         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
30763         (*x_gc_get_ext_data, x_extension_initialize)
30764         (x_cr_accumulate_data):
30765         Remove redundant static decl.  Many of these GCC doesn't complain
30766         about, but we might as well clean out the duplication while we're
30767         in the neighborhood.
30768         * src/xterm.c (x_fill_trapezoid_for_relief):
30769         Remove decl of nonexistent function.
30771 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
30773         Replace gui-method macros with cl-generic with &context
30774         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
30775         (gui-method-declare, gui-call): Remove.
30776         (frame-creation-function): Use cl-defgeneric.
30777         (make-frame): Adjust callers.
30778         * lisp/menu-bar.el (menu-bar-edit-menu):
30779         Use gui-backend-selection-exists-p.
30780         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
30781         (gui-backend-get-selection): New cl-generic to replace
30782         gui-get-selection method.
30783         (gui-backend-set-selection): New cl-generic to replace
30784         gui-set-selection method.
30785         (gui-selection-owner-p): New cl-generic to replace
30786         gui-selection-owner-p method.
30787         (gui-backend-selection-exists-p): New cl-generic to replace
30788         gui-selection-exists-p method.  Adjust all callers.
30789         * lisp/server.el (server-create-window-system-frame): Don't ignore
30790         window-system spec even when unsupported.
30791         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
30792         * lisp/startup.el (handle-args-function, window-system-initialization):
30793         Use cl-defgeneric.
30794         (command-line): Adjust calls accordingly.
30795         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
30796         a window-system-initialization method.
30797         (handle-args-function, frame-creation-function): Use cl-defmethod.
30798         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
30799         (gui-get-selection): Use cl-defmethod on the new functions instead.
30800         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
30801         a gui-backend-get-selection method.
30802         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
30803         Use cl-defmethod on the new functions instead.
30804         (msdos-window-system-initialization): Turn into
30805         a window-system-initialization method.
30806         (frame-creation-function, handle-args-function): Use cl-defmethod.
30807         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
30808         a window-system-initialization method.
30809         (handle-args-function, frame-creation-function): Use cl-defmethod.
30810         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
30811         (gui-get-selection): Use cl-defmethod on the new functions instead.
30812         * lisp/term/x-win.el (x-window-system-initialization): Turn into
30813         a window-system-initialization method.
30814         (handle-args-function, frame-creation-function): Use cl-defmethod.
30815         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
30816         (gui-get-selection): Use cl-defmethod on the new functions instead.
30817         * lisp/term/xterm.el (xterm--set-selection): Turn into
30818         a gui-backend-set-selection method.
30819         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
30820         (Fns_selection_owner_p): Remove unused arg `terminal'.
30821         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
30823 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
30825         Revert "Fix etags Bug#20629 that broke C++ support"
30826         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
30828 2015-05-23  Jan D  <jan.h.d@swipnet.se>
30830         Fix etags Bug#20629 that broke C++ support
30831         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
30832         Revert commit from Sun May 10 (Bug#20629).
30834         Merge branch 'cairo'.
30835         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
30836         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
30838         Merge branch 'master' into cairo
30840         Fixes to compile cairo branch without cairo
30841         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
30842         first argument.
30843         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
30844         USE_CAIRO.
30846 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
30848         * lisp/emacs-lisp/package.el: Always update selected-packages.
30849         (package--update-selected-packages): New function.
30850         (package-menu-execute): Use it before starting the transaction,
30851         this way the list of selected packages is updated even when the
30852         transaction fails.
30853         (package-menu--perform-transaction): Don't edit selected-packages.
30855 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
30857         Fix etags reading of compressed files
30858         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
30859         Include fcntl.h, for O_CLOEXEC.
30860         (process_file_name): Don't use 'popen', whose streams cannot be
30861         rewound.  Instead, uncompress the file to a temporary file,
30862         created by 'etags_mktmp', and read from that as usual.
30863         (etags_mktmp): New function.
30864         * test/etags/ETAGS.good_1:
30865         * test/etags/ETAGS.good_2:
30866         * test/etags/ETAGS.good_3:
30867         * test/etags/ETAGS.good_4:
30868         * test/etags/ETAGS.good_5: Update to be consistent with latest
30869         changes in etags.c regarding reading compressed files.
30871         Improve documentation of 'set-fontset-font'
30872         * doc/lispref/display.texi (Fontsets): Document the value of nil
30873         for the 3rd argument of 'set-fontset-font'.
30875         Fix documentation of forward-line
30876         * src/cmds.c (Fforward_line): Clarify the return value if the line
30877         at end of accessible portion of the buffer has no newline.
30878         * doc/lispref/positions.texi (Text Lines): Document what happens
30879         if the line at end of accessible portion of buffer has no newline.
30880         (Bug#20587)
30882 2015-05-22  Glenn Morris  <rgm@gnu.org>
30884         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
30886         * admin/charsets/mapconv (LC_ALL): Set to C.
30888         * Makefile.in: Add admin/charsets into top-level clean rules.
30889         (clean): Add admin/charsets.
30890         (maybeclean_dirs): New variable.
30891         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
30893         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
30895 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
30897         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
30899 2015-05-22  Glenn Morris  <rgm@gnu.org>
30901         Generate admin/charsets Makefile via configure, and make more portable
30902         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
30903         (admin/charsets/Makefile): Generate it.
30904         * admin/charsets/Makefile.in: Rename from Makefile.
30905         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
30906         New variables, set by configure.
30907         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
30908         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
30909         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
30910         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
30911         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
30912         (all): Declare PHONY.
30913         (local): New PHONY target.
30914         (map_template): New template.  Use to define short PHONY aliases.
30915         (*.map): Add directory prefixes to targets and prerequisites.
30916         Respect make verbosity.
30917         (JISC6226.map): Replace non-portable sed append without newline.
30918         (install): Remove rule.
30919         (clean): Only delete temporary sedscript.
30920         (bootstrap-clean, distclean, maintainer-clean, extraclean)
30921         (totalclean): New PHONY rules.
30922         * admin/charsets/mapconv (BASE): Replace basename with expr.
30923         (FILE): Add "mapfiles" subdirectory.
30924         (AWK): New variable.  Use throughout in place of "awk".
30925         (main): Use "gunzip -c" in place of "zcat".
30926         Don't leave whitespace before "p", for older sed.
30927         * admin/charsets/mapfiles/PTCP154: Add final newline,
30928         to make older sed versions happy.
30930 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
30932         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
30933         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
30934         (auto-revert-notify-watch-descriptor): Use defvar-local.
30935         (find-file-hook, auto-revert-tail-mode)
30936         (auto-revert-notify-add-watch): Use setq-local.
30937         (auto-revert-notify-add-watch): Don't call make-local-variable on
30938         kill-buffer-hook (bug#20601).
30940 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
30942         Change defgeneric so it doesn't completely redefine the function
30943         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
30944         previously defined methods.
30945         (cl-generic-define-method): Let-bind purify-flag instead of
30946         using `fset'.
30947         (cl--generic-prefill-dispatchers): Only define during compilation.
30948         (cl-method-qualifiers): Remove redundant alias.
30949         (help-fns-short-filename): Silence byte-compiler.
30950         * test/automated/cl-generic-tests.el:
30951         Adjust to new defgeneric semantics.
30953 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
30955         * lisp/emacs-lisp/package.el (package-menu-execute):
30956         Remove reference to remove-dups.
30958 2015-05-21  kwhite  <kwhite@gnu.org>
30960         * lisp/erc/erc.el: Hide network/channel messages.
30961         (erc-network-hide-list, erc-channel-hide-list): New lists to define
30962         message types per network/channel.
30963         (erc-add-targets): New function to parse list of targets.
30964         (erc-hide-current-message-p): Modify to check for new targets.
30966 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
30968         Don't quote nil and t in doc strings
30969         This is as per "Tips for Documentation Strings" in the elisp manual.
30970         For consistency, do the same in diagnostics and comments.
30972 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
30974         Fix a minor problem with mouse-face on mode line
30975         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
30976         mouse face also if the mouse pointer hovers above mode-line glyphs
30977         that don't come from any Lisp string.  (Bug#20620)
30979 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
30981         * lisp/emacs-lisp/package.el: Fix selected-package logic.
30982         (package-menu-execute): Mark as selected all non-upgrade packages
30983         being installed.
30984         (package-menu--perform-transaction): Don't mark anything.
30986         * lisp/emacs-lisp/package.el: Mode-line progress report.
30987         (package-menu--transaction-status): New variable.
30988         (package-menu-mode, package-menu--perform-transaction): Use it.
30990         * lisp/emacs-lisp/package.el: Better transaction messages.
30991         (package-menu--partition-transaction): New function.
30992         (package-menu--prompt-transaction-p, package-menu-execute):
30993         Use it.
30994         (package-menu--perform-transaction): Don't do any messaging.
30996         * lisp/emacs-lisp/package.el: Revert async package transactions.
30997         (package-menu-async): Update doc.
30998         (package-install-from-archive, package-download-transaction)
30999         (package-install, package-menu--perform-transaction)
31000         (package-menu-execute): Remove asynchronous functionality.
31002 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
31004         Revert doc string changes to f90.el
31005         Problem reported by Glenn Morris in:
31006         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
31007         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
31008         Revert recent changes to doc strings, as it's intended that they
31009         use grave accent, not quote.
31011 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
31013         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
31014         Improve parameter name.
31016         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
31018 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
31020         Don't require help-fns when not needed
31021         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
31022         * lisp/emacs-lisp/elint.el:
31023         Don't require help-fns at the top level
31024         * lisp/emacs-lisp/advice.el (ad-arglist):
31025         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
31026         Don't require help-fns.  (Bug#17001)
31028 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
31030         Fix slash collapsing in etags on MS-Windows
31031         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
31032         MS-Windows code from the Posix code, and support collapsing both
31033         forward- and back-slashes on MS-Windows.  Fixes a regression found
31034         by the test suite.
31036         Improve documentation of glyphless-char-display
31037         * doc/lispref/display.texi (Glyphless Chars): Improve
31038         documentation of glyphless character display.
31040         Fix "acronym" display of glyphless characters on w32
31041         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
31042         ignore "acronym" substitutes of 1 character for glyphless characters.
31044 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
31046         Add an automated test for let-when-compile
31047         * test/automated/subr-tests.el (let-when-compile): New test.
31049         Add let-when-compile macro instead of using pcase-let
31050         * lisp/subr.el (let-when-compile): New let-like macro that makes its
31051         bindings known to macros like `eval-when-compile' in the body.
31052         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
31053         a `let-when-compile'.  Also comment out the unused lexical var
31054         `el-kws-re'.
31055         The change greatly improves readability, while providing almost the
31056         same (even shorter) byte code: instead of pre-evaluating 10 variables,
31057         tossing them into a list, and destructuring that list a full screen
31058         page later, the variables are simply bound as they are evaluated,
31059         wrapped individually in `eval-when-compile'.
31061 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
31063         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
31064         (package-delete-button-action): New function.
31065         (describe-package-1): Add Delete button.
31067         * lisp/emacs-lisp/package.el: Better dependency description.
31068         (package--used-elsewhere-p): New optional arg, ALL, and return
31069         package-desc objects instead of names.
31070         (package-delete): Update accordingly.
31071         (describe-package-1): Describe which packages require the package.
31073 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
31075         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
31076         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
31077         Fix doc-string.
31079         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
31080         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
31081         (switch-to-buffer): If the selected window is strongly dedicated
31082         to its buffer, signal error before prompting for buffer name.
31083         Handle `switch-to-buffer-in-dedicated-window'.
31084         * doc/lispref/windows.texi (Switching Buffers):
31085         Document `switch-to-buffer-in-dedicated-window'.
31087 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31089         Prefer "this" to “this” in doc strings
31090         This mostly just straightens quotes introduced in my previous patch.
31091         Suggested by Dmitry Gutov in:
31092         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
31093         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
31094         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
31095         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
31096         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
31097         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
31098         Prefer straight double quotes to curved double quotes in doc strings.
31100         Fix minor quoting problems in doc strings
31101         These were glitches regardless of how or whether we tackle the
31102         problem of grave accent in doc strings.
31103         * lisp/calc/calc-aent.el (math-restore-placeholders):
31104         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
31105         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
31106         * lisp/leim/quail/hebrew.el ("hebrew-new")
31107         ("hebrew-biblical-sil"):
31108         * lisp/leim/quail/thai.el ("thai-kesmanee"):
31109         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
31110         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
31111         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
31112         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
31113         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
31114         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
31115         (semantic-tag-components):
31116         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
31117         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
31118         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
31119         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
31120         * lisp/emacs-lisp/generator.el (iter-next):
31121         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
31122         (gnus-article-mode-syntax-table):
31123         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
31124         * lisp/net/soap-client.el (soap-wsdl-get):
31125         * lisp/net/telnet.el (telnet-mode):
31126         * lisp/org/org-compat.el (org-number-sequence):
31127         * lisp/org/org.el (org-remove-highlights-with-change)
31128         (org-structure-template-alist):
31129         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
31130         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
31131         (handwrite-12pt, handwrite-13pt):
31132         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
31133         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
31134         * lisp/progmodes/verilog-mode.el (verilog-tool)
31135         (verilog-string-replace-matches, verilog-preprocess)
31136         (verilog-auto-insert-lisp, verilog-auto-insert-last):
31137         * lisp/textmodes/makeinfo.el (makeinfo-options):
31138         * src/font.c (Ffont_spec):
31139         Fix minor quoting problems in doc strings, e.g., missing quote,
31140         ``x'' where `x' was meant, etc.
31141         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
31142         Fix minor quoting problem in other string.
31143         * lisp/leim/quail/ethiopic.el ("ethiopic"):
31144         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
31145         Omit unnecessary quotes.
31146         * lisp/faces.el (set-face-attribute, set-face-underline)
31147         (set-face-inverse-video, x-create-frame-with-faces):
31148         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
31149         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
31150         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
31151         * lisp/net/tramp.el (tramp-methods):
31152         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
31153         * lisp/textmodes/artist.el (artist-ellipse-right-char)
31154         (artist-ellipse-left-char, artist-vaporize-fuzziness)
31155         (artist-spray-chars, artist-mode, artist-replace-string)
31156         (artist-put-pixel, artist-text-see-thru):
31157         * lisp/vc/ediff-util.el (ediff-submit-report):
31158         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
31159         Use double-quotes rather than TeX markup in doc strings.
31160         * lisp/skeleton.el (skeleton-pair-insert-maybe):
31161         Reword to avoid the need for grave accent and apostrophe.
31162         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
31163         Don't use grave and acute accents to quote.
31165 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
31167         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
31168         Silence compiler.
31170 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31172         Try to port new etags tests to MS-Windows
31173         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
31174         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
31175         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
31176         Adjust to test-case changes below.
31177         * test/etags/Makefile (CSRC): Remove dostorture.c.
31178         Whatever it was trying to test, wasn't working portably.
31179         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
31180         just a line-ending problem.
31181         * test/etags/c-src/dostorture.c: Remove.
31182         * test/etags/cp-src/c.C: Remove stray CR.
31183         * test/etags/html-src/algrthms.html: Remove trailing CRs.
31184         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
31185         but if someone edits it later it should stay UTF-8-compatible.
31187 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
31189         Fix display of overlapping window-specific overlays
31190         * src/keyboard.c (adjust_point_for_property): When adjusting point
31191         due to display strings, ignore overlays that are specific to
31192         windows other than the currently selected one.
31193         * src/xdisp.c (handle_single_display_spec): If the display
31194         property comes from an overlay, arrange for buffer iteration to
31195         resume only after the end of that overlay.  (Bug#20607)
31197 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
31199         New command icomplete-force-complete-and-exit
31200         * lisp/icomplete.el (icomplete-force-complete-and-exit):
31201         New command
31202         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
31203         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
31204         (icomplete-minibuffer-map): Bind C-j to it.
31205         (icomplete-forward-completions, icomplete-backward-completions):
31206         Mention the new command in the docstring.
31207         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
31208         Revert the previous fix for bug#17545.
31210 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
31212         Fix last commit
31214         In Elisp manual explain how to override window manager positioning
31215         (Bug#20552)
31216         * doc/lispref/frames.texi (Position Parameters): Give example of
31217         how to override a window manager positioning decision.
31219         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
31220         * src/frame.c (Fdelete_frame): In doc-string mention that frame
31221         can't be deleted if it has a surrogate minibuffer.
31222         * doc/lispref/frames.texi (Minibuffers and Frames)
31223         (Deleting Frames): Explain "surrogate minibuffer frames".
31225         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
31227 2015-05-18  Glenn Morris  <rgm@gnu.org>
31229         Add option to ignore commit lines matching a pattern in ChangeLog
31230         * build-aux/gitlog-to-changelog: Add --ignore-line option.
31231         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
31233 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
31235         Don't skip new etags tests on non-UTF-8 hosts
31236         Problem reported by Eli Zaretskii for MS-Windows.
31237         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
31238         (LC_ALL): Set to C if the current locale isn't UTF-8.
31239         (.PHONY): Remove ediff_1 thru ediff_5.
31240         (check): Always run.
31242 2015-05-18  Glenn Morris  <rgm@gnu.org>
31244         * lisp/calculator.el (calculator-funcall):
31245         * lisp/textmodes/artist.el (artist-spray-random-points):
31246         Use standard degree/radian conversion utilities.
31248         Further lisp-complete-symbol related cleanup.
31249         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
31250         Unadvertise non-functional argument.  Replace obsolete alias.
31252 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
31254         Add a test case for Maven warning ouput
31255         * test/automated/compile-tests.el
31256         (compile-tests--test-regexps-data): Add a case for Maven warning
31257         ouput.
31258         (compile--test-error-line): Check the compilation message type, if
31259         it's specified in the test data.
31261 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
31263         Update Maven compilation-mode entry to distinguish warnings
31264         * lisp/progmodes/compile.el
31265         (compilation-error-regexp-alist-alist): Update Maven entry to
31266         distinguish warnings (bug#20556).
31268 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
31270         * test/automated/sgml-mode-tests.el: New file.
31272 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
31274         Improve handling of the first Git revision
31275         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
31276         there's no next entry, delete until the end of the buffer.
31277         (log-view-end-of-defun-1): Stop at eob.
31278         * lisp/vc/vc-annotate.el
31279         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
31280         when previous-revision is nil.
31281         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
31282         with `--' to avoid ambiguity.
31283         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
31284         returned revision string.
31285         (vc-git-annotate-time): Expect `^' before the first revision.
31286         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
31287         REV1 is nil, and REV2 is not.
31288         * lisp/vc/vc.el: Update the description of the `diff' function.
31290 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
31292         Allow checkdoc to be called in batch
31293         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
31294         is non-nil, echo the error with `warn'.
31295         How it can be used in -batch:
31296         (with-current-buffer (find-file "checkdoc.el")
31297           (checkdoc-current-buffer t))
31299 2015-05-18  Glenn Morris  <rgm@gnu.org>
31301         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
31303 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
31305         * admin/notes/unicode: New section "binary files".
31307         Change new etags test to use UTF-8 encoding
31308         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
31309         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
31310         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
31311         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
31312         * test/etags/html-src/softwarelibero.html:
31313         Switch to UTF-8 encoding.
31314         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
31315         Remove Makefile, as it's too incestuous to have the test input
31316         include the build procedure.
31317         (UTF8_LOCALE, UTF_ENCODING): New macros.
31318         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
31319         (check): Skip if not UTF-8.
31320         (.PHONY): New rule.
31321         (FRC): Remove, as superseded by .PHONY.  All uses removed.
31322         (regexfile): Prefer printf to echo when outputting oddball chars.
31323         (.PRECIOUS): Remove, as these files are not built.
31325         Rename 'foo-gzipped' to 'foo.gz'
31326         * test/automated/data/decompress/foo.gz:
31327         Rename from test/automated/data/decompress/foo-gzipped,
31328         to make it easier for other tools to tell that it's compressed.
31329         * test/automated/zlib-tests.el (zlib--decompress):
31330         Adjust to renamed file.
31332 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
31334         Set up default-directory
31335         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
31336         binding for `v'.
31337         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
31338         appropriate value for default-directory.
31340 2015-05-17  Samer Masterson  <samer@samertm.com>
31342         * lisp/eshell/em-term.el (eshell-term-sentinel):
31343         No-op by default, only kills term buffer if
31344         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
31345         (eshell-destroy-buffer-when-process-dies): New custom to preserve
31346         previous behavior.
31348         eshell: Introduce new buffer syntax
31349         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
31350         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
31351         needed (Bug#19319).
31352         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
31353         (eshell-get-target): Remove shorthand-specific code.
31354         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
31355         '#<buffer-name>'.
31357 2015-05-17  Jan D  <jan.h.d@swipnet.se>
31359         Merge branch 'master' into cairo
31361 2015-04-26  Jan D  <jan.h.d@swipnet.se>
31363         Merge branch 'master' into cairo
31365         Add PBM support for cairo
31366         * src/image.c (xcolor_to_argb32): New function.
31367         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
31368         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
31369         XImagePtr if ! USE_CAIRO.
31370         (pbm_load): Add cairo support.
31372 2015-04-12  Jan D  <jan.h.d@swipnet.se>
31374         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
31375         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
31376         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
31377         x_free_cr_resources.
31379         Handle specified bg in images.  Use generic libpng code for PNGs.
31380         * src/image.c (get_spec_bg_or_alpha_as_argb)
31381         (create_cairo_image_surface): New functions when USE_CAIRO.
31382         (xpm_load): Call the above functions.  Handle XPM without mask
31383         when USE_CAIRO.
31384         (png_load_body): Handle USE_CAIRO case.
31385         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
31386         instead.
31387         (jpeg_load_body): Call create_cairo_image_surface.
31388         (gif_load, svg_load_image): Handle specified background, call
31389         create_cairo_image_surface.
31390         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
31392 2015-04-11  Jan D  <jan.h.d@swipnet.se>
31394         Support GIF and TIFF with cairo
31395         * configure.ac: Allow jpeg with cairo.
31396         Allow tiff and gif with cairo.
31397         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
31398         (tiff_load): Create cairo image surface if USE_CAIRO.
31399         (gif_load): Ditto.
31401         Support JPEG with USE_CAIRO
31402         * configure.ac: Allow jpeg with cairo.
31403         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
31405 2015-04-05  Jan D  <jan.h.d@swipnet.se>
31407         Support RSVG and cairo
31408         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
31409         * src/dispextern.h (struct image): Add cr_data2 if cairo.
31410         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
31411         (x_clear_image): Free cr_data and cr_data2 if set.
31412         (xpm_load): Assign data to cr_data2.
31413         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
31415 2015-04-03  Jan D  <jan.h.d@swipnet.se>
31417         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
31418         * configure.ac (HAVE_RSVG): Move after cairo.
31419         (USE_CAIRO): Disable rsvg, don't disable Xpm.
31420         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
31421         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
31422         don't return early.
31423         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
31424         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
31425         and create a surface.
31427         Tool tips for menus did not show any text.
31428         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
31429         tip frames, the geometry may be wrong.
31431         Merge branch 'master' into cairo, fixes tooltips not shown.
31433         Merge branch 'master' into cairo
31435         Add CAIRO_CFLAGS to lwlib/Makefile.in
31436         * Makefile.in (CAIRO_CFLAGS): Add.
31438 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
31440         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
31442 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
31444         Draw outermost line using black relief and erase corners also for cairo.
31445         * src/xterm.c [USE_CAIRO]: Include math.h.
31446         (enum corners) [USE_CAIRO]: New enum.
31447         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
31448         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
31449         than 1, draw the outermost line using the black relief.
31451         * src/xterm.c (x_fill_trapezoid_for_relief):
31452         Remove unnecessary cairo_close_path.
31454 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
31456         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
31458         * src/xterm.c (x_draw_stretch_glyph_string):
31459         Call x_reset_clip_rectangles instead of XSetClipMask.
31461         Use int instead of unsigned int for width and height args.
31462         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
31463         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
31464         width and height args.
31466         Modernize k&r cairo-related function declarations.
31467         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
31468         (xg_print_frames_dialog): Modernize k&r declarations.
31469         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
31470         (Fx_print_frames_dialog): Modernize k&r declarations.
31471         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
31472         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
31473         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
31474         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
31475         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
31476         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
31477         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
31478         (x_clear_area): Modernize k&r declarations.
31480         Implement wave-style variant of underlining for cairo.
31481         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
31482         (x_draw_underwave) [USE_CAIRO]: Use it.
31484         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
31485         instead of XFillRectangle.
31487 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
31489         Fix fringe bitmap initialization for cairo
31490         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
31491         data for cairo image surface.
31492         * src/xterm.c (x_cr_define_fringe_bitmap):
31493         Call cairo_surface_mark_dirty.
31495 2015-02-11  Jan D  <jan.h.d@swipnet.se>
31497         Add cairo drawing
31498         * configure.ac (with-cairo): New option.
31499         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
31500         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
31501         Output "Does Emacs use cairo?".
31502         * lisp/version.el (emacs-version): Add cairo version.
31503         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
31504         (FONT_OBJ): Add comment about ftcrfont.
31505         (ALL_CFLAGS): Add CAIRO_CFLAGS.
31506         (LIBES): Add CAIRO_LIBS.
31507         * src/dispextern.h (struct image): Add cr_data for cairo.
31508         (x_cr_init_fringe): Declare.
31509         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
31510         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
31511         * src/fringe.c (x_cr_init_fringe): New function name that shares code
31512         with w32_init_fringe.
31513         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
31514         * src/ftfont.c (ftfont_info_size); New global variable.
31515         (ftfont_open2): New extern function almost the same as old ftfont_open,
31516         but takes the font_object as argument.
31517         (ftfont_open): Build font object and call ftfont_open2.
31518         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
31519         * src/gtkutil.c (xg_clear_under_internal_border)
31520         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
31521         Only queue_draw if not cairo.  Change args to x_clear_area.
31522         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
31523         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
31524         (xg_print_frames_dialog): New functions for printing.
31525         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
31526         (xg_print_frames_dialog): Declare.
31527         * src/image.c: Add defined (USE_CAIRO) for PNG.
31528         Add !defined USE_CAIRO for W32 PNG code.
31529         (x_clear_image): If cairo, destroy the surface in cr_data.
31530         (png_load): Add new cairo compatible implementation.
31531         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
31532         * src/xfns.c: New section Printing.
31533         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
31534         (x-print-frames-dialog): New printing functions.
31535         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
31536         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
31537         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
31538         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
31539         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
31540         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
31541         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
31542         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
31543         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
31544         Declare.
31545         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
31546         (max_fringe_bmp, fringe_bmp): New variables.
31547         (x_gc_get_ext_data, x_extension_initialize)
31548         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
31549         (x_set_cr_source_with_gc_foreground)
31550         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
31551         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
31552         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
31553         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
31554         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
31555         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
31556         (x_update_begin): Create cairo surface if needed.
31557         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
31558         (x_update_end): Paint cairo drawing surface to xlib surface.
31559         (x_clear_under_internal_border, x_after_update_window_line): Adjust
31560         arguments to x_clear_area.
31561         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
31562         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
31563         of XSetClipMask.
31564         (x_set_glyph_string_clipping)
31565         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
31566         instead of XSetClipRectangles.
31567         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
31568         Use x_fill_rectangle instead of XFillRectangle.
31569         (x_draw_glyph_string_foreground)
31570         (x_draw_composite_glyph_string_foreground)
31571         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
31572         instead of XDrawRectangle.
31573         (x_draw_relief_rect): Add code for USE_CAIRO.
31574         Call x_reset_clip_rectangles instead of XSetClipMask.
31575         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
31576         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
31577         instead of XSetClipMask.
31578         (x_draw_image_foreground, x_draw_image_foreground_1):
31579         x_draw_rectangle instead of XDrawRectangle.
31580         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
31581         XFillRectangle.
31582         (x_draw_image_glyph_string): If img has cr_data, use it as
31583         a cairo surface.
31584         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
31585         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
31586         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
31587         x_reset_clip_rectangles instead of XSetClipMask.
31588         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
31589         (x_clear_area1): New function that calls XClearArea.
31590         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
31591         non-cairo.
31592         (x_clear_frame): x_clear_window instead of XClearWindow.
31593         (x_scroll_run): Set frame garbaged if cairo.
31594         (XTmouse_position): Initialize *part to 0.
31595         (x_scroll_bar_create): Adjust arguments to x_clear_area.
31596         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
31597         x_fill_rectangle instead of XFillRectangle.
31598         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
31599         arguments to x_clear_area.
31600         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
31601         (handle_one_xevent): Adjust arguments to x_clear_area.
31602         Destroy cairo surface for frame if ConfigureNotify.
31603         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
31604         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
31605         x_reset_clip_rectangles instead of XSetClipMask.
31606         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
31607         x_reset_clip_rectangles instead of XSetClipMask.
31608         (x_clear_frame_area): Adjust arguments to x_clear_area.
31609         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
31610         (x_term_init): Call x_extension_initialize if cairo.
31611         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
31612         x_cr_destroy_fringe_bitmap for cairo.
31613         (x_initialize): Call x_cr_init_fringe for cairo.
31614         * src/xterm.h: Add include of cairo header files.
31615         (x_bitmap_record): Add img if cairo.
31616         (x_gc_ext_data): New struct for cairo.
31617         (x_display_info): Add ext_codes for cairo.
31618         (x_output): Add cr_context and cr_surface for cairo.
31619         (x_clear_area): Change arguments from Display*/Window to frame pointer.
31620         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
31621         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
31622         (x_cr_draw_frame, x_cr_export_frames): Declare.
31624 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
31626         Fix integer-valued `mouse-highlight' (Bug#20590)
31627         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
31629 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
31631         MS-Windows followup for ASCIIfication of curved quotes
31632         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
31633         test for curved quotes being displayable, after switching the
31634         terminal encoding.  (Bug#20545)
31636 2015-05-17  Jan D  <jan.h.d@swipnet.se>
31638         Add comment that x_shift_glyphs_for_insert is never called
31639         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
31640         Add comment that this function is never called.
31642 2015-05-16  Glenn Morris  <rgm@gnu.org>
31644         * src/lisp.mk: Remove from repository and generate at build-time.
31645         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
31646         (shortlisp_filter): New variable.
31647         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
31648         (distclean): Remove lisp.mk.
31649         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
31650         * lisp/loadup.el: Tweak layout to make it easier to parse.
31651         * make-dist: Do not distribute src/lisp.mk.
31653 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
31655         Display shorter dates in Git annotate output
31656         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
31657         format (when not overridden with vc-git-annotate-switches).
31658         (vc-git-annotate-time): Support the short format, as well as ISO
31659         8601 that has been used until now (bug#5428).
31661 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
31663         ASCIIfy curved quotes on displays lacking them
31664         * lisp/international/mule-cmds.el (set-locale-environment):
31665         If curved quotes don't work, display straight ASCII approximations
31666         (Bug#20545).
31668 2015-05-16  Glenn Morris  <rgm@gnu.org>
31670         Small src/Makefile simplification
31671         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
31672         * src/Makefile.in (lisp): Derive from shortlisp.
31673         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
31675 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
31677         * lisp/help-mode.el (help-go-forward): Doc fix.
31678         (Bug#20577)
31680         * doc/lispref/debugging.texi (Profiling): Improve indexing.
31681         (Bug#20576)
31683 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
31685         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
31686         have one fewer `not'.
31688         * lisp/vc/vc-git.el (vc-git-diff-switches)
31689         (vc-git-annotate-switches, vc-git-resolve-conflicts)
31690         (vc-git-program, vc-git-root-log-format): Remove the redundant
31691         :group declarations.
31693 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
31695         Removes the predicate from lisp-complete-symbol (Bug#20456)
31696         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
31697         and remove it from the docstring.
31699 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
31701         Add new option vc-git-resolve-conflicts
31702         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
31703         (vc-git-find-file-hook): Add to after-save-hook only when the
31704         above is non-nil.
31705         (vc-git-resolve-when-done): Update to honor the new variable.
31706         (Bug#20292)
31708 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
31710         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
31711         (tabulated-list-init-header): Document new behavior.
31712         (tabulated-list-print-fake-header): Do nothing if
31713         `tabulated-list--header-string' is nil.
31714         (tabulated-list--header-string): Add a docstring.
31715         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
31716         * etc/NEWS: Document it.
31718 2015-05-15  Leo Liu  <sdl.web@gmail.com>
31720         Revert "Fix cps--gensym"
31721         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
31722         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
31724 2015-05-15  Glenn Morris  <rgm@gnu.org>
31726         Replace AC_SUBST_FILE in configure with include in Makefiles
31727         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
31728         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
31729         (AUTO_DEPEND): New output variable.
31730         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
31731         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
31732         (lwlib_deps_frag): Replace by conditional include.
31733         * lwlib/autodeps.mk: Remove file.
31734         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
31735         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
31736         (oldxmenu_deps_frag): Replace by conditional include.
31737         * oldXMenu/autodeps.mk: Remove file.
31738         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
31739         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
31740         (lisp_frag): Replace by an include.
31741         (deps_frag): Replace by conditional include.
31742         * src/autodeps.mk: Remove file.
31744         Tweak japanese.el's loading of dependencies
31745         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
31746         * lisp/language/japanese.el: Use require rather than load.
31747         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
31748         Provide a feature.
31749         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
31750         Provide a feature in the generated file.
31752 2015-05-15  Jan D  <jan.h.d@swipnet.se>
31754         Fix NS warnings
31755         * src/nsmenu.m (ns_popup_dialog)
31756         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
31757         * src/nsfns.m (Fx_create_frame): Remove unused variables.
31758         (Fns_read_file_name): Initialize fname, remove ret.
31759         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
31760         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
31761         Remove unused variable.
31762         (init): Add parantesis in if.
31763         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
31765 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
31767         Fix a enum conversion warning in macfont.m
31768         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
31769         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
31771 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
31773         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
31774         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
31776 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
31778         * lisp/cus-start.el: Add ns-confirm-quit.
31780         Fix warnings on OSX 10.10
31781         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
31782         OSX versions.
31783         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
31784         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
31785         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
31786         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
31787         setScalesWhenResized for OSX < 10.6.
31788         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
31789         * src/nsterm.m (ns_copy_bits): New function that does not use
31790         deprecated NSCopyBits.
31791         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
31792         (runAlertPanel): New function.
31793         (applicationShouldTerminate:): Call runAlertPanel.
31794         (initFrameFromEmacs, toggleFullScreen:): Only call
31795         useOptimizedDrawing for OSX < 10.10.
31796         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
31797         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
31798         (draggingEntered:): Returns NSDragOperation.
31799         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
31801 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
31803         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
31804         (package--init-file-ensured): New variable.
31805         (package-initialize, package--ensure-init-file): Use it.
31807 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
31809         Honor :fore/background for XBM on NS (Bug#14969)
31810         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
31811         initFromXBM takes bg, fg args, remove flip arg.
31812         (ns_image_from_XBM): Add bg, fg args.
31813         * src/image.c (x_create_bitmap_from_data)
31814         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
31815         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
31816         initFromXBM.  Remove flip arg.
31817         (initFromSkipXBM): Move code to initFromXBM.
31818         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
31819         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
31820         always false.
31821         Remove bit flipping (bitPat, swt), generated incorrect images when
31822         width/height wasn't a multiple of 8.
31823         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
31824         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
31825         remove flip arg.
31827 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
31829         * lisp/emacs-lisp/package.el: Be more careful with the init file.
31830         (package--ensure-init-file): Check that user-init-file is set,
31831         exists, is readable, and is writable.  (Bug#20584)
31832         Also expand the docstring.
31834 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
31836         Sync with upstream verilog-mode revision 6232468
31837         * lisp/progmodes/verilog-mode.el
31838         (verilog-font-lock-grouping-keywords-face)
31839         (verilog-highlight-grouping-keywords): Fix use of face when
31840         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
31841         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
31842         parent is reset, bug906.  Reported by Ken Schmidt.
31843         (verilog-auto-inout-module): Add fourth regexp argument to
31844         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
31845         Reported by John Tillema.
31846         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
31847         modport if signal attachment is itself a modport.  Reported by
31848         Matthew Lovell.
31849         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
31850         always_comb and always_latch, bug844.  Reported by Greg Hilton.
31851         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
31852         with many curly-bracket pairs, bug663.
31853         (verilog-set-auto-endcomments): Fix end comments for functions of
31854         type void, etc.  Reported by Alex Reed.
31855         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
31856         caused by indent-line-to deleting tabls pre 24.5.
31857         (verilog-nameable-item-re): Fix nameable items that can have an
31858         end-identifier to include endchecker, endgroup, endprogram,
31859         endproperty, and endsequence.  Reported by Alex Reed.
31860         (verilog-label-be): When auto-commenting a buffer, consider
31861         auto-comments on all known keywords (not just a subset thereof).
31862         Reported by Alex Reed.
31863         (verilog-auto-end-comment-lines-re)
31864         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
31865         Automatically comment property/endproperty blocks to match other
31866         similar blocks like sequence/endsequence, function/endfunction, etc.
31867         Reported by Alex Reed.
31868         (verilog-set-auto-endcomments): Detect the function- or task-name
31869         when auto-commenting blocks that lack an explicit portlist.
31870         Reported by Alex Reed.
31871         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
31872         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
31873         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
31874         is nil, fix indenting initial/final to match always statements,
31875         bug825.  Reported by Tim Clapp.
31876         (verilog-extended-complete-re): Fix indentation of DPI-C imports
31877         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
31878         Mao and Jason Forkey.
31879         (verilog-read-decls): Fix parsing typed interfaces.  Fix
31880         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
31881         Fix localparam not being ignored in AUTOINSTPARAM,
31882         bug889.  Reported by Shannon Hill.
31883         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
31884         bug793.  Reported by Pierre-David Pfister.
31885         (verilog-auto-arg-format, verilog-auto-arg-ports):
31886         Add verilog-auto-arg-format to support newlines in AUTOARG.
31887         Reported by Jie Xiao.
31888         (verilog-batch-execute-func): Do not batch re-auto files loaded by
31889         Local Variables.  Fix printing "no changes to be saved" with
31890         verilog-batch.  Reported by Dan Dever.
31891         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
31892         interface-only modules, bug721.  Reported by Dean Hoyt.
31893         Author: Alex Reed <acreed4@gmail.com>
31894         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
31895         Don't treat '<keyword>:<identifier>' as the start of a labeled
31896         statement, bug905.  Reported by Enzo Chi.
31897         (verilog-directive-re, verilog-compiler-directives)
31898         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
31899         directives (plus some extras) when determining indentation, bug
31900         901.  Reported by Bernd Beuster.
31901         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
31902         iff expression doesn't start with word-character, bug900.
31903         (verilog-optional-signed-range-re, verilog-optional-signed-re):
31904         Fix incorrect indentation/alignment of unsigned declarations,
31905         bug897.
31906         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
31907         always constructs, bug895.
31908         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
31909         Reported by Eric Mastromarchi.
31910         (verilog-beg-of-statement): Fix indenting for some forms of
31911         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
31912         continued assignment incorrect if first line ends with ']', bug437.
31913         Reported by Dan Dever.  Fix indention of cover inside an
31914         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
31915         blocks, bug842.
31916         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
31917         Reported by Kaushal Modi.
31918         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
31919         (verilog-backward-token): Fix indenting sensitivity lists with
31920         named events, bug840.  Reed.
31921         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
31922         nil not honoring 'forever', 'foreach', and 'do' keywords.
31924 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
31926         Check for invalid GTK+ monitor scales
31927         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
31928         INT_MAX for too-large scales.  All callers changed to assume the
31929         result is valid (Bug#20432).
31930         (xg_frame_set_char_size, xg_update_scrollbar_pos):
31931         Calculate scale only if needed.
31932         Show ASCII approximations instead.
31934 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
31936         Fix daemon crashes when linum-mode is turned on early on
31937         * src/window.c (Fwindow_end): Don't try calling display engine
31938         functions on initial-frame frame.  (Bug#20565)
31940         Fix selective diff browsing in Ediff
31941         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
31942         Go to the beginning of the region before searching for the
31943         ediff-regexp-focus-* regexps.  (Bug#20568)
31945 2015-05-14  Jan D  <jan.h.d@swipnet.se>
31947         Fixes bug#20142
31948         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
31949         arrive in the main loop, even for Gtk 3 (Bug#20142).
31951         Don't access display after i/o error (Bug#19147).
31952         * src/xterm.c (x_connection_closed): Add third arg ioerror.
31953         If ioerror, set display to 0 (Bug#19147).
31954         (x_error_quitter): Call x_connection_closed with third arg false.
31955         (x_io_error_quitter): Call x_connection_closed with third arg true.
31957         Handle GTK_SCALE, fixes Bug#20432.
31958         * src/gtkutil.c (xg_get_gdk_scale): New function.
31959         (xg_frame_set_char_size)
31960         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
31961         (xg_get_default_scrollbar_height)
31962         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
31963         when setting sizes (Bug#20432).
31965 2015-05-13  Leo Liu  <sdl.web@gmail.com>
31967         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
31969 2015-05-13  Glenn Morris  <rgm@gnu.org>
31971         Fix bootstrap (void function cl-member).
31972         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
31973         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
31975 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
31977         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
31978         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
31979         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
31980         Avoid defalias for closures which are not immutable.
31981         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
31982         the dispatchers table with various entries.
31983         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
31984         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
31986 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
31988         Improve tagging of C bindings in DEFVAR_*
31989         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
31990         from DEFVAR_*.
31992 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
31994         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
31996 2015-05-12  Glenn Morris  <rgm@gnu.org>
31998         * lisp/progmodes/tcl.el (tcl-filter):
31999         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
32001         Add basic VC push support
32002         * lisp/vc/vc.el (vc-push): New autoloaded command.
32003         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
32004         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
32005         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
32006         (vc-bzr-push): New.
32007         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
32008         (vc-git-pull): Reimplement using vc-git--pushpull.
32009         (vc-git-push): New.
32010         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
32011         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
32012         * doc/emacs/maintaining.texi (Pulling / Pushing):
32013         Rename from "VC Pull".  Mention pushing.
32014         (VC With A Merging VCS, VC Change Log): Update xrefs.
32015         (Branches): Update menu.
32016         * doc/emacs/emacs.texi: Update menu.
32017         * etc/NEWS: Mention this.
32019 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
32021         Improve the seq pcase pattern and the `seq-let' macro
32022         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
32023         object is a sequence, and binds each element of ARGS to the
32024         corresponding element of the sequence.
32026 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
32028         Fix tags created from DEFVAR_* declarations in C
32029         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
32030         to make tags extracted from DEFVAR_* declarations more accurate.
32032         Add a test suite for etags
32033         * test/etags/: New test suite, adapted from
32034         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
32035         whose original author is Francesco Potortì <pot@gnu.org>.
32037         Fix tagging of symbols in C enumerations
32038         * lib-src/etags.c (consider_token): Don't tag symbols in
32039         expressions that assign values to enum constants.  See
32040         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
32041         for details.
32042         (C_entries): Reset fvdef to fvnone after processing a preprocessor
32043         conditional and after a comma outside of parentheses.
32045 2015-05-12  Glenn Morris  <rgm@gnu.org>
32047         * lisp/url/url-handlers.el (url-file-name-completion)
32048         (url-file-name-all-completions): Silence compiler.
32050         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
32052         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
32054 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
32056         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
32057         (cl--generic-mandatory-args): Remove.
32058         (cl--generic-split-args): New function.
32059         (cl-generic-define, cl--generic-lambda): Use it.
32060         (cl-generic-define-method): Use it as well, and add support for
32061         context args.
32062         (cl--generic-get-dispatcher): Handle &context dispatch.
32063         (cl--generic-cache-miss): `dispatch-arg' can now be a
32064         context expression.
32065         (cl--generic-dispatchers): Pre-fill.
32066         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
32067         New test.
32069 2015-05-11  Glenn Morris  <rgm@gnu.org>
32071         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
32073 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
32075         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
32076         * lisp/term/rxvt.el: Require term/xterm.
32077         (rxvt-function-map): Use xterm-rxvt-function-map.
32078         (rxvt-standard-colors): Move before first use.
32079         (terminal-init-rxvt): Use xterm--push-map and
32080         xterm-register-default-colors.
32081         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
32082         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
32083         Move shared bindings between rxvt and xterm to it.
32084         (xterm-function-map): Use it.  Move the xterm-paste binding to
32085         xterm-rxvt-function-map (bug#20444).
32086         (xterm-standard-colors): Move before first use.
32087         (xterm--push-map): New function.
32088         (xterm-register-default-colors): Take standard colors as argument.
32089         (terminal-init-xterm): Use it.  Adjust call to
32090         xterm-register-default-colors.
32092 2015-05-11  Glenn Morris  <rgm@gnu.org>
32094         * lisp/term/x-win.el: Quieten --without-x compilation.
32095         (x-own-selection-internal, x-disown-selection-internal)
32096         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
32097         Declare.
32099         * Makefile.in (emacslog): Remove srcdir.
32100         (ChangeLog): Update for the above.
32102 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
32104         python.el: better limit for looking-back calls
32105         * lisp/progmodes/python.el (python-shell-accept-process-output):
32106         Use last comint prompt start as limit for looking-back.
32108 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
32110         CEDET (srecode-insert-fcn): Fix use of oref on a class
32111         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
32112         on a class.  Reported by Pierre Lorenzon.
32113         (srecode-template-inserter-point): Remove declaration.
32115         CEDET (srecode-create-dictionary): Avoid obsolete object name
32116         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
32117         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
32119 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
32121         C-x 8 shorthands for curved quotes, Euro, etc.
32122         Although C-x 8 lets you insert arbitrary Unicode characters,
32123         it's awkward to use this to insert commonly used symbols such as curved
32124         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
32125         characters commonly found in English text and in basic math.
32126         For example, assuming the Alt key works on your keyboard and iso-transl
32127         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
32128         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
32129         (Bug#20499)
32130         * doc/emacs/mule.texi (Unibyte Mode):
32131         A few other printing characters now work too.
32132         * etc/NEWS: Document this.
32133         * lisp/international/iso-transl.el (iso-transl-char-map):
32134         Also support the following characters:
32135         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
32137 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
32139         Add xref-find-regexp
32140         * lisp/progmodes/xref.el (xref-find-function): Describe the
32141         `matches' action.
32142         (xref-find-regexp): New command, using it.
32143         (xref-collect-references): Rename to xref-collect-matches.
32144         (xref--collect-reference): Rename to xref--collect-match.
32145         (xref-collect-matches, xref--collect-match): Accept new argument,
32146         KIND.  Update accordingly.
32147         (xref--regexp-to-extended): New function.
32148         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
32149         `matches' action.
32150         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
32151         * lisp/progmodes/etags.el (etags-xref-find):
32152         Support the `matches' action.
32153         (etags--xref-find-matches): New function.
32155 2015-05-10  Glenn Morris  <rgm@gnu.org>
32157         * Makefile.in: Fixes for recent change-history changes.
32158         (change-history-nocommit): Update footer regexp.
32159         Ensure output script stays executable.
32161 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
32163         New version of `seq-let' based on a pcase pattern
32164         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
32165         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
32167 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
32169         Add basic HTML5 tags and a template
32170         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
32171         (html-tag-alist): Add HTML5 tags.
32172         (html-tag-help): Add new tags descriptions.
32173         (html-navigational-links): Template for nav links.
32174         (html-html5-template): Template for a HTML5 page.
32176 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
32178         semantic/symref/grep: Don't use word boundaries
32179         * lisp/cedet/semantic/symref/grep.el
32180         (semantic-symref-perform-search): Instead of wrapping input in
32181         word boundaries, check that the characters before and after are
32182         not word constituents.
32184         semantic/symref/grep: Support regexp search
32185         * lisp/cedet/semantic/symref.el
32186         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
32187         the search type is regexp.
32188         * lisp/cedet/semantic/symref/grep.el
32189         (semantic-symref-perform-search): Support the regexp search type.
32190         Pass -E to Grep when it's used.
32192         semantic-symref-regexp: Allow to input an arbitrary string
32193         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
32194         Allow to input an arbitrary string interactively.
32196         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
32197         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
32198         Remove tag-symbol-match-p from the default value
32199         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
32201         Declare find-tag obsolete
32202         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
32203         xref-find-definitions.
32205 2015-05-10  Jan D  <jan.h.d@swipnet.se>
32207         Draw composite string correctly (Bug#20537)
32208         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
32209         New function.
32210         (ns_draw_glyph_string): Call it.
32212 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
32214         Avoid infloop in ERC
32215         * lisp/simple.el (line-move-to-column): Ignore field boundaries
32216         while computing line beginning position.  (Bug#20498)
32218 2015-05-08  Glenn Morris  <rgm@gnu.org>
32220         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
32221         * build-aux/gitlog-to-emacslog: Check called from right directory.
32222         (srcprefix): Remove.
32224         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
32225         * Makefile.in (ChangeLog): No longer pass "distprefix".
32226         * make-dist: Update "make ChangeLog" syntax for the above change.
32228         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
32229         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
32231         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
32233         Add command-line option-parsing to gitlog-to-emacslog
32234         * build-aux/gitlog-to-emacslog: Add command-line options.
32235         By default, refuse to remove an existing output file.
32236         * Makefile.in (CHANGELOG): Update default.
32237         (ChangeLog): Do not test for existing file.
32238         (change-history-nocommit): Ensure temp file does not exist.
32240         Quieten --without-x compilation
32241         * lisp/term/common-win.el: Provide a feature.
32242         * lisp/term/x-win.el (term/common-win): Require it.
32244         * lisp/dired-aux.el (dired-do-print): Require lpr.
32246         Quieten compilation, eg in --without-x builds
32247         * lisp/dired-aux.el (lpr-printer-switch):
32248         * lisp/frame.el (tool-bar-height):
32249         * lisp/linum.el (font-info):
32250         * lisp/window.el (font-info, overflow-newline-into-fringe)
32251         (tool-bar-height):
32252         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
32253         * lisp/gnus/gnus-util.el (iswitchb-mode):
32254         * lisp/mail/rmailmm.el (libxml-parse-html-region):
32255         * lisp/net/nsm.el (gnutls-peer-status)
32256         (gnutls-peer-status-warning-describe):
32257         * lisp/net/shr.el (libxml-parse-xml-region):
32258         * lisp/url/url-http.el (gnutls-peer-status): Declare.
32260 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
32262         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
32263         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
32264         `subclass' since they're never called with a class.
32265         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
32266         srecode-dictionary-child-p.
32268 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
32270         * lisp/help.el (help--binding-locus): Document argument POSITION.
32271         (Bug#20530)
32273 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
32275         Merge from gnulib
32276         * doc/misc/texinfo.tex: Get latest version.
32278 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
32280         ffap.el (ffap-read-file-or-url): Fix completing-read call
32281         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
32282         `completing-read' should be a symbol.
32284 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
32286         Verify file modifications by other programs
32287         * src/filelock.c (lock_file): Check whether the file was modified
32288         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
32290         Fix keyboard macros that include function keys
32291         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
32292         keys in the macro before returning.  (Bug#20454)
32294 2015-05-08  Glenn Morris  <rgm@gnu.org>
32296         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
32297         "Copyright-paperwork-exempt".  (Bug#20324)
32299         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
32300         (log-edit-rewrite-tiny-change): New variable.
32301         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
32302         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
32303         * etc/NEWS: Mention this.
32305         * lisp/calc/calc.el (math-zerop): Declare.
32307         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
32309 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
32311         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
32312         Support the case when BINDINGS is a single tuple.  (Bug#20525)
32314         * etc/NEWS: Fix typo in previous commit
32315         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
32317 2015-05-07  Jan D  <jan.h.d@swipnet.se>
32319         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
32320         Output URL to Gtk+ bug (Bug#20452).
32322         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
32324 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
32326         * lisp/emacs-lisp/package.el: New "external" package status.
32327         An external package is any installed package that's not built-in
32328         and not from `package-user-dir', which usually means it's from an
32329         entry in `package-directory-list'.  They are treated much like
32330         built-in packages, in that they cannot be through the Package Menu
32331         deleted and are not considered for upgrades.
32332         (package-desc-status): Identify if a package is installed outside
32333         `package-user-dir'.
32334         (package-menu--print-info-simple)
32335         (package-menu--status-predicate): Add support for it.
32336         * etc/NEWS: Document it.
32338 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
32340         * lisp/mail/rmail.el: Use lexical-binding.
32341         (rmail-bury): Remove unused var `buffer-to-bury'.
32342         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
32343         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
32344         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
32345         (rmail-insert-inbox-text): Remove unused var `movemail'.
32346         (rmail-add-mbox-headers): Remove unused var `limit'.
32347         (rmail-undelete-previous-message): Remove unused var `value'.
32348         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
32349         `resent-reply-to'.
32350         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
32351         (rmail-restore-desktop-buffer): Rename arguments.
32353 2015-05-06  Glenn Morris  <rgm@gnu.org>
32355         * Makefile.in (change-history-commit): Add missing piece of previous.
32357         Avoid unnecessary bumping of Makefile.in's timestamp
32358         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
32359         (emacslog): New variable.
32360         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
32361         (unchanged-history-files): Use $emacslog rather than Makefile.in.
32362         (change-history-nocommit): Store hash in $emacslog.
32363         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
32364         * admin/update_autogen (changelog_files): Update for the above.
32366         * Makefile.in: Don't always insist on removing existing "ChangeLog".
32367         (CHANGELOG): New variable.
32368         (no-ChangeLog): Remove.
32369         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
32370         (change-history-nocommit): Use a temp file rather than insisting
32371         on deletion of any existing "ChangeLog".
32373         * build-aux/gitlog-to-emacslog: Allow specification of output.
32375         * admin/update_autogen: Add option to update ChangeLog.
32376         (usage): Mention -H.
32377         (changelog_flag, changelog_n, changelog_files): New variables.
32378         (main): Check for -H, and maybe run change-history-nocommit.
32380 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
32382         * lisp/subr.el (delete-dups): Pre-size the hashtable.
32384         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
32385         cl--arglist-args is defined (bug#20517).
32387 2015-05-06  Glenn Morris  <rgm@gnu.org>
32389         * Makefile.in (change-history-nocommit): New.
32391 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
32393         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
32394         timer when it is non-nil
32395         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
32397 2015-05-06  Glenn Morris  <rgm@gnu.org>
32399         Quieten CEDET compilation
32400         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
32401         Invert fboundp test to quieten on current Emacs.
32402         * lisp/cedet/ede/config.el (ede-shell-run-something)
32403         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
32404         (semanticdb-refresh-table): Declare.
32405         (ede-preprocessor-map): Require semantic/db.
32407         Quieten cc-mode compilation
32408         * lisp/progmodes/cc-awk.el (c-forward-sws):
32409         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
32410         Declare.
32412 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
32414         * lisp/subr.el (delete-dups): Avoid nreverse.
32416 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
32418         * lisp/subr.el (delete-dups): Make it destructive again.
32420 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
32422         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
32424 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
32426         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
32427         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
32428         (testcover--read): Rename from testcover-read.  Change calling
32429         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
32430         is gone.
32431         (testcover-start): Use add-function.  Move edebug-all-defs binding to
32432         testcover--read.
32433         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
32434         (testcover-mark): Remove unused var `item'.
32435         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
32437 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
32439         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
32440           use a hash table.  This can result in ~500 times speed-up for typical
32441           collections of size 5000, like that of `load-library'.
32443 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
32445         CEDET: Avoid `oref' on classes in a few more cases
32446         * lisp/cedet/ede/generic.el (ede-find-target):
32447         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
32448         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
32449         var `prefix'.
32451         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
32452         (grepflags, greppattern): Declare.
32453         (semantic-symref-perform-search): Remove unused var `pat'.
32455         CEDET (srecode-compile-inserter): Avoid `oref' on classes
32456         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
32457         Avoid `oref' on classes (bug#20491).
32458         (srecode-compile-split-code): Remove unused var `key'.
32460 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
32462         Clean up pulse.el a little
32463         * lisp/cedet/pulse.el (pulse): Remove.
32464         (pulse-momentary-timer): Save instead of the stop time.
32465         (pulse-momentary-highlight-overlay):
32466         Call pulse-momentary-unhighlight first thing.
32467         Treat pulse-momentary-overlay as a single value, not a list.
32468         Save the created timer.  Only pass the stop time to the timer.
32469         (pulse-tick): Update accordingly.
32470         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
32471         single value.  Cancel the timer.
32473 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
32475         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
32476         Support the biblatex journaltitle field.
32478 2015-05-05  Glenn Morris  <rgm@gnu.org>
32480         Minor declare-function improvement
32481         * lisp/emacs-lisp/bytecomp.el
32482         (byte-compile-macroexpand-declare-function):
32483         Handle declarations after calls.  (Bug#20509)
32485         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
32487         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
32489 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
32491         Pulse using a timer
32492         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
32493         (pulse-momentary-highlight-overlay): Set up the timer instead of
32494         calling `pulse'
32495         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
32496         (pulse-tick): New function.
32497         (pulse-momentary-unhighlight): Cut off the stop time.
32498         (pulse-delay): Update the docstring WRT to not using sit-for.
32500         Add semantic/symref/grep file patterns for ruby-mode
32501         * lisp/cedet/semantic/symref/grep.el
32502         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
32503         Clarify the docstring.
32505         Don't require match
32506         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
32507         match.  That doesn't work for every command, and some identifier
32508         completion tables are bound to be imperfect anyway.
32510 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
32512         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
32513         (semantic-grammar--template-expand): New function.
32514         (semantic-grammar-header, semantic-grammar-footer): Use it.
32515         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
32516         (semantic-grammar-file-regexp): Refine regexp.
32517         (semantic-grammar-eldoc-get-macro-docstring):
32518         Use elisp-get-fnsym-args-string when available.
32519         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
32520         instead of the old eldoc-* names.
32521         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
32522         from elisp-mode.el.  Tweak calling convention.
32523         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
32524         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
32525         elisp--get-fnsym-args-string.
32526         (elisp--highlight-function-argument): Add `prefix' arg.
32527         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
32528         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
32530 2015-05-05  Glenn Morris  <rgm@gnu.org>
32532         * lisp/help-fns.el (describe-function-1):
32533         Handle builtins with advertised calling conventions.  (Bug#20479)
32535 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
32537         Merge branch 'seq-let'
32539         Update `seq-let' documentation
32540         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
32541         with the support of  `&rest'.
32543         Add support for &rest in `seq-let'
32544         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
32545         in the argument list.
32546         * test/automated/seq-tests.el: Add a test for parsing and binding
32547         `&rest' in `seq-let'.
32549 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
32551         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
32552         Add missing increment (Bug#20467).
32553         (eieio-object-value-create): Adjust to new slots representation
32554         (Bug#20467).
32555         (eieio-object-value-create): Fix missed adjustment to new
32556         representation of slots metadata.
32558 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
32560         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
32562 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
32564         Work around "Attempt to modify read-only object"
32565         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
32566         elisp--xref-find-definitions, to work around "Attempt to modify
32567         read-only object" error.
32569         Only skip some variables that have function counterparts
32570         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
32571         Only skip minor-mode-named variable if it's defined in a Lisp
32572         file, and it's in minor-mode-list (bug#20506).
32573         * test/automated/elisp-mode-tests.el
32574         (elisp-xref-finds-both-function-and-variable)
32575         (elisp-xref-finds-only-function-for-minor-mode): New tests.
32577 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
32579         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
32580         previous change.
32581         (xref--insert-xrefs): Buttonize the whole line, including the
32582         number at the beginning.
32584         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
32585         Make sure we're inside the let bindings.
32586         * test/automated/elisp-mode-tests.el
32587         (elisp-completes-functions-after-let-bindings): New test.
32589 2015-05-04  Glenn Morris  <rgm@gnu.org>
32591         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
32592         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
32593         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
32594         Remove outdated declarations.
32596         Replace instances of "(eval-when-compile (autoload ...))"
32597         * lisp/gnus/gnus-art.el (nneething-get-file-name):
32598         Declare rather than autoload.
32599         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
32600         Remove pointless autoload.
32601         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
32602         (gnus-topic-create-topic, gnus-topic-enter-dribble):
32603         Declare rather than autoload.
32604         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
32605         (mailcap-extension-to-mime): Autoload at run-time.
32606         * lisp/gnus/mm-util.el (latin-unity-massage-name)
32607         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
32608         (latin-unity-representations-present-region):
32609         Declare rather than autoload.
32610         * lisp/gnus/mml-smime.el (epg-make-context)
32611         (epg-passphrase-callback-function): Autoload at run-time.
32612         (epg-context-set-signers, epg-context-result-for)
32613         (epg-new-signature-digest-algorithm)
32614         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
32615         (epg-sign-string, epg-encrypt-string)
32616         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
32617         (epg-configuration, epg-expand-group, epa-select-keys):
32618         Declare rather than autoload.
32619         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
32620         Autoload at run-time.
32621         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
32622         (gnus-registry-get-id-key, gnus-registry-action):
32623         Declare rather than autoload.
32624         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
32625         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
32626         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
32627         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
32628         (spam-stat-split-fancy): Remove pointless autoloads.
32629         * lisp/net/mairix.el: Load gnus-util when compiling.
32630         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
32631         (message-field-value): Declare rather than autoload.
32632         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
32633         Check gnus-alive-p is fbound.
32634         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
32635         (vm-check-for-killed-summary, vm-error-if-folder-empty)
32636         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
32637         Declare rather than autoload.
32639         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
32641         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
32642         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
32644         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
32646         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
32648         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
32649         * lisp/emacs-lisp/package.el (epg-signature-status):
32650         Fix declarations.
32652         * lisp/play/gametree.el (gametree-show-children-and-entry)
32653         (gametree-apply-layout, gametree-mouse-show-subtree)
32654         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
32656         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
32657         Handle cl-defgeneric, cl-defmethod.
32659 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
32661         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
32662         Highlight both type and symbol name.
32664         Insert, highlight and align line numbers in xref output
32665         * lisp/progmodes/etags.el (xref-location-line): Specialize for
32666         xref-etags-location.
32667         * lisp/progmodes/xref.el (xref-location-line): New generic method.
32668         (xref-file-location): Add reader for the line slot.
32669         (xref--location-at-point): Skip to the `xref-location' property.
32670         (xref--collect-reference): Drop the line number from description.
32671         (xref--insert-xrefs): Insert, highlight and align line numbers.
32673 2015-05-04  Daniel Colascione  <dancol@dancol.org>
32675         * lisp/simple.el (save-mark-and-excursion--save)
32676         (save-mark-and-excursion--restore): Fix previous commit
32677         (255a011f0ecf004b31c59945b10154b10fac3af1).
32679 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
32681         Don't pulse the indentation, or the newline
32682         * lisp/cedet/pulse.el (pulse-lighten-highlight)
32683         (pulse-reset-face): Fall back to the inherited background
32684         attribute in FACE.
32685         (pulse-momentary-highlight-region): Add autoload cookie.
32686         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
32687         indentation, or the newline, if the line's non-empty
32688         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
32690 2015-05-04  Daniel Colascione  <dancol@dancol.org>
32692         Add `save-mark-and-excursion', which has the old
32693         `save-excursion' behavior
32694         * doc/lispref/positions.texi (Excursions):
32695         Document `save-mark-and-excursion'.
32696         * lisp/font-lock.el (font-lock-fontify-block):
32697         Use `save-mark-and-excursion' instead of `save-excursion',
32698         restoring Emacs 24 behavior.
32699         * lisp/simple.el (save-mark-and-excursion--save)
32700         (save-mark-and-excursion--restore): New functions.
32701         (save-mark-and-excursion): New user macro.
32702         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
32703         in `save-excursion' documentation.
32705 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
32707         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
32708         Classify lone symbol inside let varlist as variable.
32709         * test/automated/elisp-mode-tests.el
32710         (completest-variables-in-let-bindings): New test.
32712         Add xref-pulse-on-jump
32713         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
32714         Add autoload cookie.
32715         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
32716         (xref--maybe-pulse): New function.
32717         (xref-pop-marker-stack, xref--pop-to-location)
32718         (xref--display-position): Use it.
32719         (xref--location-at-point): Use back-to-indentation.
32721 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
32723         lisp/org/org-{macs,list}.el: Fix lexical warnings
32724         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
32725         (org-list-get-next-item, org-list-get-prev-item)
32726         (org-list-get-children): Mark unused arg `struct'.
32727         (org-list-use-alpha-bul-p): Remove unused var `bul'.
32728         (org-toggle-checkbox): Mark unused var.
32729         (org-update-checkbox-count): Remove unused var `box-num'.
32730         (org-adapt-indentation): Declare.
32731         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
32732         (org-list-send-list): Remove unused var `txt'.
32733         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
32734         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
32735         * lisp/org/org-macs.el: Use `declare'.
32736         (org-with-limited-levels): Declare dyn-bound vars.
32738 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
32740         Fix minor issues with CEDET on MS-Windows
32741         * lisp/cedet/semantic/symref/idutils.el
32742         (semantic-symref-parse-tool-output-one-line): Fix the search
32743         regexp to match MS-Windows file names with drive letters.
32744         (Bug#19468)
32745         * lisp/cedet/semantic/symref/grep.el
32746         (semantic-symref-grep-use-template): Remove "--color=always" from
32747         Grep switches on MS-Windows.
32748         (semantic-symref-grep-shell): Use shell-file-name as the default
32749         value, so this works not only on Posix platforms.
32750         (semantic-symref-perform-search): Use shell-quote-argument instead
32751         of literal '..' for portable quoting of Grep command-line
32752         argument.  Use shell-command-switch instead of a literal "-c".
32753         * lisp/cedet/semantic/bovine/gcc.el
32754         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
32755         for an absolute file name in a portable way.
32757 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
32759         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
32760         (package-import-keyring, package-refresh-contents)
32761         (package-compute-transaction, package--save-selected-packages)
32762         (package-install-from-archive, package-delete)
32763         (package-menu--perform-transaction): Use `inhibit-message' instead.
32764         (package--compile): Set `warning-minimum-level' to :error.
32766 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
32768         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
32769         (terminal-init-screen): Use it (bug#20356).
32770         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
32771         (xterm--extra-capabilities-type): New const.
32772         (xterm-extra-capabilities): Use it.
32773         (xterm--version-handler): Lower the pseudo-version for `screen'.
32775 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
32777         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
32778         Always insert a newline at the end (to avoid mouse-face background
32779         tail at the last line).
32781         elisp-completion-at-point: Prioritize being quoted over funpos
32782         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
32783         Only consider function position when not inside quoted form
32784         (bug#20425).
32785         * test/automated/elisp-mode-tests.el: New file.
32787         Stop vc-print-log from jumping to the top
32788         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
32789         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
32790         is not specified.
32791         (vc-incoming-outgoing-internal): Always pass nil.
32792         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
32793         call it, and don't set vc-sentinel-movepoint (bug#15322).
32794         (vc-print-root-log): Don't fetch the root working revision, nor
32795         pass it to vc-print-log-internal.
32797 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
32799         Fix display of keyboard layouts for right-to-left scripts
32800         * lisp/international/quail.el (quail-insert-kbd-layout):
32801         Force left-to-right paragraph direction.
32803 2015-05-02  K. Handa  <handa@gnu.org>
32805         * src/cmds.c (internal_self_insert): When we insert spaces for
32806         padding, set point before the padding spaces, not after them.
32808 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
32810         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
32812 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
32814         Fix etags-xref-find for references
32815         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
32816         Use `cl-mapcan'.
32817         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
32818         directory if no tags tables are loaded (bug#19468).
32820 2015-05-02  Philipp Stephani  <phst@google.com>
32822         Update the options in whitespace-style defcustom
32823         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
32824         `repeat' because the option is really set-like.  Add missing
32825         options.  Reorder options to match the order in the
32826         documentation.  (Bug#20346)
32828 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
32830         Fix error diagnostics of c-macro-expand
32831         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
32832         too early if no start-marker string was found -- that generally
32833         means cpp exited abnormally, and we still want to show its error
32834         messages to the user.
32836         Don't require Texinfo 5.0 for Emacs documentation
32837         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
32838         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
32839         "@codequoteundirected on", respectively, to avoid requiring
32840         Texinfo 5.x for Emacs documentation.
32842 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
32844         * lisp/files.el (pwd):
32845         When called with a prefix argument, insert the current default
32846         directory at point.
32848 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
32850         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
32851         * lisp/isearch.el (isearch-mode-map): Don't inhibit
32852         function-key-map remapping for backspace (bug#20466).
32854 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
32856         Implement xref-find-references in etags and elisp-mode
32857         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
32858         (elisp-xref-find): Use it.
32859         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
32860         * lisp/progmodes/xref.el (xref-collect-references):
32861         (xref--collect-reference): New functions.
32863 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
32865         Prefer plain characters to Texinfo circumlocutions
32866         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
32867         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
32869         Fix single-quoting style in PDF manuals
32870         The PDF versions of the GNU manuals used curved single quotes to
32871         represent grave accent and apostrophe, which made it a pain to cut
32872         and paste code examples from them.  Fix the PDF versions to use
32873         grave accent and apostrophe for Lisp source code, keystrokes, etc.
32874         This change does not affect the info files, nor does it affect
32875         ordinary uses of curved single quotes in PDF.
32876         * doc/emacs/docstyle.texi: New file, which specifies treatment for
32877         grave accent and apostrophe, as well as the document encoding.
32878         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
32879         * doc/lispintro/emacs-lisp-intro.texi:
32880         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
32881         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
32882         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
32883         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
32884         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
32885         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
32886         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
32887         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
32888         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
32889         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
32890         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
32891         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
32892         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
32893         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
32894         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
32895         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
32896         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
32897         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
32898         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
32899         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
32900         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
32901         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
32902         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
32903         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
32904         * doc/misc/woman.texi:
32905         Use it instead of '@documentencoding UTF-8', to lessen the need for
32906         global changes like this in the future.
32907         * doc/emacs/Makefile.in (EMACS_XTRA):
32908         * doc/lispintro/Makefile.in (srcs):
32909         * doc/lispref/Makefile.in (srcs):
32910         Add dependency on docstyle.texi.
32911         * doc/misc/Makefile.in (style): New macro.
32912         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
32913         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
32914         Use it.
32916 2015-05-01  Glenn Morris  <rgm@gnu.org>
32918         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
32920         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
32921         (help-fns--signature): Declare.
32923         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
32925 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
32927         New macro seq-let, providing destructuring support to seq.el
32928         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
32929         to `cl-destructuring-bind' but works on all sequence types supported
32930         by `seq.el'.  Bump version number to 1.6.
32931         * test/automated/seq-tests.el: Add tests for seq-let.
32932         * doc/lispref/sequences.texi: Add documentation for seq-let.
32934 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
32936         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
32938 2015-05-01  Glenn Morris  <rgm@gnu.org>
32940         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
32942 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
32944         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
32945         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
32946         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
32947         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
32948         (Bug#20445).
32950 2015-05-01  K. Handa  <handa@gnu.org>
32952         * lisp/international/mule-cmds.el (input-method-use-echo-area):
32953         Change :type to 'boolean.
32955 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
32957         Start using proportional fonts in eww by default
32958         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
32959         it seems to work well.
32961         Fix links in tables in shr
32962         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
32963         makes (some) links in tables not work.
32965 2015-05-01  Jan D  <jan.h.d@swipnet.se>
32967         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
32969 2015-04-30  Glenn Morris  <rgm@gnu.org>
32971         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
32972         Update for 2015-02-08 change to indirect-function.
32974         * lisp/term/ns-win.el (ns-get-selection-internal):
32975         Remove declaration for function deleted 2014-10-21.
32977         * lisp/dom.el: Load subr-x when compiling, for when-let.
32979         Silence some compilation warnings
32980         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
32981         * lisp/emulation/cua-base.el (delete-active-region):
32982         * lisp/net/net-utils.el (w32-get-console-output-codepage):
32983         * lisp/term/ns-win.el (ns-own-selection-internal)
32984         (ns-disown-selection-internal, ns-selection-owner-p)
32985         (ns-selection-exists-p, ns-get-selection):
32986         Declare for compiler.
32988         Function declaration updates prompted by 'make check-declare'
32989         * lisp/emacs-lisp/package.el (lm-homepage):
32990         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
32991         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
32992         * lisp/gnus/mml.el (libxml-parse-html-region):
32993         * lisp/gnus/nnrss.el (libxml-parse-html-region):
32994         * lisp/net/eww.el (libxml-parse-html-region):
32995         * lisp/net/shr.el (libxml-parse-html-region):
32996         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
32997         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
32998         * lisp/vc/vc-git.el (vc-annotate-convert-time):
32999         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
33000         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
33001         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
33002         Update declaration.
33004         Remove compatibility code for 20-year old function renaming
33005         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
33006         Make it an obsolete alias.
33007         (idlwave-shell-filter): Change all uses to comint-output-filter.
33009 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
33011         Add ace-window face config
33012         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
33013         configuration.
33015 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
33017         Unclutter 'make doc' output a bit
33018         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
33019         Use make subst rather than sh IFS to split target string apart.
33020         This makes 'make' output easier to follow.
33022         Merge from gnulib
33023         * doc/misc/texinfo.tex: Update from gnulib.
33025 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
33027         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
33028         (package-menu--print-info): Obsolete.
33029         (package-menu--print-info-simple): New function.
33030         (package-menu--refresh): Use it, simplify code, and improve
33031         performance.
33032         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
33033         Tiny performance improvement.
33035         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
33037 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
33039         Omit -Wstrict-overflow workaround in GCC 5
33040         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
33041         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
33043         Merge from gnulib
33044         This incorporates:
33045         2015-04-29 extern-inline: no need for workaround in GCC 5.1
33046         2015-04-26 file-has-acl: port to CentOS 6
33047         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
33049 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
33051         Set next-error-* in xref--xref-buffer-mode
33052         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
33053         Set `next-error-function' and `next-error-last-buffer'.
33054         (xref--next-error-function): New function.
33055         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
33057 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
33059         python.el: Fix warnings on looking-back calls missing LIMIT
33060         * lisp/progmodes/python.el (python-shell-accept-process-output):
33061         Pass LIMIT arg to looking-back.
33063 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
33065         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
33066         (package--download-and-read-archives): Use pushnew instead of
33067         append.  If something terrible happened during a previous
33068         download, simply refreshing should now make things work again.
33070 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
33072         Introduce etags-xref-find-definitions-tag-order
33073         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
33074         New variable.
33075         (etags--xref-find-definitions): Use it (bug#19468).
33077 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
33079         PATH- and completion-related fixes in Eshell on MS-Windows
33080         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
33081         MS-Windows, prepend "." to list of directories produced from PATH,
33082         as Windows always implicitly searches the current directory first.
33083         (eshell-force-execution): Make it have a non-nil default value on
33084         MS-Windows and MS-DOS.
33085         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
33086         eshell-force-execution is non-nil, complete on readable files and
33087         directories, not only executables.  When running on MS-Windows,
33088         prepend "." to list of directories produced from PATH, as Windows
33089         always implicitly searches the current directory first.
33091 2015-04-29  Sam Steingold  <sds@gnu.org>
33093         Bury RCIRC buffers when there is no activity
33094         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
33095         (rcirc-bury-buffers): New function.
33096         (rcirc-next-active-buffer): When there is no new activity, use
33097         `rcirc-bury-buffers' to hide all RCIRC buffers.
33099 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
33101         Fix DBUS query result parsing for secrets-search-items
33102         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
33103         parsing.  The function assumed that return value of the
33104         SearchItems method called on a collection is a list of two lists,
33105         however this is true only when no collection is specified.  GNOME
33106         had used to incorrectly return a list of two lists in both cases,
33107         but this was already fixed:
33108         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
33109         incorrect information in the secrets-search-items’ docstring.
33110         (Bug#20449)
33112 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
33114         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
33115         Use `inhibit-message' instead of hiding the previous message
33116         with (message nil).
33118 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
33120         Remove the deprecated INTERNAL_FIELD macro by expanding it
33121         * src/lisp.h (INTERNAL_FIELD): Remove.
33122         (DEFVAR_KBOARD): Modify accordingly.
33123         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
33124         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
33125         * src/buffer.c (compact_buffer): Use BVAR.
33127 2015-04-29  Glenn Morris  <rgm@gnu.org>
33129         Replace an obsolete function alias
33130         * lisp/isearch.el (isearch-yank-x-selection):
33131         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
33132         (mouse-drag-secondary-moving):
33133         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
33134         Replace obsolete alias x-get-selection with gui-get-selection.
33136 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
33138         * lisp/mail/rmailsum.el: Use lexical-binding.
33140 2015-04-29  Glenn Morris  <rgm@gnu.org>
33142         * test/automated/package-test.el (package-test-update-archives-async):
33143         Skip test on hydra.nixos.org.
33145 2015-04-28  Glenn Morris  <rgm@gnu.org>
33147         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
33148         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
33149         (foldout-mouse-hide-or-exit): Use new names for outline functions.
33151         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
33152         Update for 2014-06-26 hideif.el change.
33154         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
33155         (rmail--decode-and-apply): New function.
33156         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
33158         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
33160 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
33162         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
33163         (package-menu--refresh): Delegate obsolete-hiding to
33164         `package--remove-hidden'.
33165         (package--remove-hidden): Disregard high-priority package if it is
33166         older than the installed one.
33168 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
33170         Update source file encoding list
33171         Update admin/notes/unicode, along with coding system cookies in
33172         other files, so that the two match each other better.
33173         * admin/notes/unicode: lisp/language/ethio-util.el and
33174         lisp/language/ethiopic.el also use utf-8-emacs.
33175         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
33176         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
33177         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
33178         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
33179         * etc/refcards/sk-survival.tex:
33180         Add "coding: utf-8" so that this file is not mishandled in a
33181         Latin-1 or Big-5 locale.
33182         * lisp/international/robin.el, lisp/org/ox-ascii.el:
33183         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
33184         * lisp/language/ethio-util.el: Fix trailer.
33186 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
33188         Fix synchronous invocation of Ispell
33189         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
33190         value to ispell-process-directory before calling ispell-init-process.
33191         Don't call set-process-coding-system if ispell-async-processp is nil.
33192         (Bug#20448)
33194 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
33196         * lisp/emacs-lisp/package.el: Skip space and comments in init file
33197         (package--ensure-init-file): Insert snippet at first
33198         non-whitespace non-comments line.  Respects local-vars at the top
33199         of the file.
33201 2015-04-28  Glenn Morris  <rgm@gnu.org>
33203         * lisp/mail/rmail.el (rmail-copy-headers):
33204         Handle rmail-nonignored-headers being nil.  (Bug#18878)
33206         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
33208         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
33209         Don't get confused by a bzrlib version mismatch warning.
33211 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
33213         Change default location of EUDC options file
33214         * etc/NEWS: Document change to EUDC options file's default location.
33215         * lisp/net/eudc-vars.el (eudc-options-file): Use
33216         `locate-user-emacs-file' to change default options file location.
33218 2015-04-27  Glenn Morris  <rgm@gnu.org>
33220         * test/automated/package-test.el (package-test-update-archives-async):
33221         Try to handle the test server script dying.
33223 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33225         * lisp/saveplace.el (save-place-mode): New minor mode.
33226         (save-place): Redefine as an obsolete alias.
33228         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
33229         * lisp/midnight.el: Use lexical-binding.
33230         (midnight-mode): Make it a proper minor mode.
33231         (midnight-buffer-display-time): Make arg non-optional.
33232         (midnight-find): Remove.
33233         (clean-buffer-list-kill-never-regexps)
33234         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
33235         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
33236         contain functions.
33237         (clean-buffer-list): Use cl-find.
33238         Allow clean-buffer-list-kill-never-regexps to contain functions.
33240 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
33242         Bump version of seq.el to 1.5
33243         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
33244         from seq-doseq.  Bump version number of seq.el.
33246 2015-04-27  Glenn Morris  <rgm@gnu.org>
33248         * lisp/mail/rmail.el (rmail-reply):
33249         Decode subject before matching "Re:" prefix.  (Bug#20396)
33251 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
33253         * lisp/emacs-lisp/package.el: Small improvements
33254         (package--with-work-buffer-async): More informative error.
33255         (package-install-user-selected-packages): Rename to
33256         `package-install-selected-packages'.
33258 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33260         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
33261         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
33262         (eieio--class-make): Remove leftover `tag'.
33264 2015-04-27  Glenn Morris  <rgm@gnu.org>
33266         * lisp/gnus/message.el (gnus-extract-address-components):
33267         Remove bogus declaration that was masking previous problem.
33269 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
33271         * lisp/gnus/message.el (message-insert-formatted-citation-line):
33272         Fix typo.  (Bug#20318)
33274 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33276         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
33278         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
33279         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
33280         the buffer in yet another frame.
33281         (reftex-toc-visit-location): Make sure toc-window has focus at the end
33282         when `final' is nil.
33283         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
33284         silence warnings.  Use `--' to clarify that it's internal.
33285         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
33286         (reftex-toc-promote): Clarify unused argument.
33287         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
33288         Add `reftex--' prefix.  Fix all users.
33289         (reftex-toc-promote-prepare): Use _ for dummy variable.
33290         (reftex-toc-restore-region): Rename `m.
33292 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
33294         Fix a typo in bibtex.el
33295         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
33296         last change.  (Bug#20429)
33298         Fix redisplay of frame after loading new fonts
33299         * src/xdisp.c (redisplay_internal): When retrying redisplay of
33300         a frame because new fonts were loaded, disable all redisplay
33301         optimizations on that frame by calling SET_FRAME_GARBAGED.
33302         (Bug#20410)
33304 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33306         * lisp/info.el (Info-menu): Properly provide the `default'
33307         (Bug#20391)
33309         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
33310         Catch errors from documentation (bug#20418).
33311         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
33313 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
33315         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
33316         Remove redundant ":group 'package".
33318 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
33320         Fix a typo in rmail.el
33321         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
33322         last commit.  (Bug#20429)
33324 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
33326         Introduce xref-prompt-for-identifier
33327         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
33328         (xref--read-identifier): Use it
33329         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
33331 2015-04-26  João Távora  <joaotavora@gmail.com>
33333         `tex-insert-quote' after single `'' opens quotes instead of closing
33334         Without this, it's very hard to precede double quotes with the
33335         apostrophe character, i.e. insert the sequence '``
33336         (quote-backquote-backquote), commonly useful in portuguese, for
33337         instance.
33338         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
33339         preceding chars making `tex-insert-quote' be in the "opening" context.
33341 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
33343         Pass `id' to `completing-read' as def instead of initial input
33344         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
33345         `completing-read' as the default value instead of initial input
33346         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
33348 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
33350         Don't freeze with unreadable processes
33351         Don't freeze if an exiting process can't be read from.  (Bug#19860).
33352         This fixes a bug I introduced in
33353         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
33354         "* process.c: Add sanity checks for file descriptors."
33355         Dmitry Gutov did most of the legwork in finding the problem.
33356         * src/process.c (wait_reading_process_output):
33357         Treat non-running processes that can't be read from
33358         the same as other non-running processes.
33360 2015-04-25  Alan Mackenzie  <acm@muc.de>
33362         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
33363         * lisp/subr.el (remove-yank-excluded-properties): Put
33364         `with-silent-modifications' around only the last three lines of code.
33366 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
33368         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
33369         (package--all-keywords): Deleted variable.
33371         * etc/NEWS: Document package-hiding functionality.
33373 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
33375         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
33377         Clarify the doc string of 'replace-regexp-in-string'
33378         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
33380         Improve doc string of 'insert-buffer-substring'
33381         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
33383         MS-Windows followup for the recent gnulib update
33384         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
33385         acl-internal.c.
33387 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
33389         Spelling fixes
33391         Merge from gnulib
33392         This incorporates:
33393         2015-04-24 file-has-acl: new module, split from acl
33394         2015-04-24 manywarnings: add GCC 5.1 warnings
33395         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
33396         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
33397         2015-04-15 acl: On Linux, check for acls without libacl
33398         2015-04-14 tempname: avoid unused parameter warnings (trivial)
33399         * lib/acl-internal.c: New file, from gnulib.
33400         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
33401         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
33402         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
33403         Update from gnulib.
33405         Port --enable-gcc-warnings to GCC 5.1 x86-64
33406         * lib-src/ebrowse.c (dump_sym):
33407         * lib-src/hexl.c (main):
33408         * src/ccl.c (ccl_driver):
33409         * src/character.c (string_escape_byte8):
33410         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
33411         * src/gnutls.c (Fgnutls_boot):
33412         * src/gtkutil.c (xg_check_special_colors):
33413         * src/image.c (x_build_heuristic_mask):
33414         * src/print.c (safe_debug_print, print_object):
33415         * src/term.c (produce_glyphless_glyph):
33416         * src/xdisp.c (get_next_display_element)
33417         (produce_glyphless_glyph):
33418         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
33419         Don't use a signed format to print an unsigned integer, or vice
33420         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
33421         * src/image.c (png_load_body, jpeg_load_body):
33422         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
33424 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
33426         Add new faces to tsdh-light-theme
33427         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
33428         definitions for Info-quoted, ace-jump-face-foreground,
33429         hl-paren-face, show-paren-match, and show-paren-mismatch.
33431 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
33433         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
33435 2015-04-24  Glenn Morris  <rgm@gnu.org>
33437         * build-aux/gitlog-to-emacslog:
33438         Use raw log format rather than wrapped one.
33440 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
33442         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
33443         (seq-doseq): Fix out-of-scope binding.
33444         Don't call `seq-length at every iteration.
33445         Reduce `if's from 3 to 2 per iteration.
33446         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
33448 2015-04-24  Glenn Morris  <rgm@gnu.org>
33450         * lisp/textmodes/text-mode.el (text-mode-hook):
33451         Move text-mode-hook-identify to default.
33453         * lisp/mouse.el (minor-mode-menu-from-indicator):
33454         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
33456         * lisp/help-fns.el (describe-function): More type checking.
33457         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
33459         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
33460         (Bug#20325)
33462 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
33464         shr: strip leading whitespace when expanding URLs
33465         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
33467 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
33469         Clarify "co-authored" some more
33471         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
33473         Clarify doc strings of functions that search for properties
33474         * src/textprop.c (Fnext_char_property_change)
33475         (Fprevious_char_property_change)
33476         (Fnext_single_char_property_change)
33477         (Fprevious_single_char_property_change, Fnext_property_change)
33478         (Fnext_single_property_change, Fprevious_property_change)
33479         (Fprevious_single_property_change): Clarify doc strings wrt return
33480         value and the optional LIMIT argument.  (Bug#20411)
33482 2015-04-24  Glenn Morris  <rgm@gnu.org>
33484         * test/automated/message-mode-tests.el (message-mode-propertize):
33485         Handle non-writable HOME; eg on hydra.nixos.org.
33487 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
33489         Avoid starting threads by w32-shell-execute
33490         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
33491         local file names, before invoking ShellExecute.  (Bug#20220)
33493 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
33495         Fix following doc-links in `widget-documentation-link-action'
33496         * lisp/wid-edit.el (widget-documentation-link-action): Make
33497         following doc-links less simplistic (Bug#20398).
33499 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
33501         Improve EUDC manual
33502         * doc/misc/eudc.texi (Troubleshooting):
33503         New LDAP troubleshooting subsection.
33505 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
33507         Omit needless "\ " after multibyte then newline
33508         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
33509         (print_object): When print-escape-multibyte is non-nil and a
33510         multibyte character is followed by a newline or formfeed, followed
33511         by a hex digit, don't output a needless "\ " before the hex digit.
33512         * test/automated/print-tests.el (print-hex-backslash): New test.
33514 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
33516         Add a new `inhibit-message' variable
33517         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
33518         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
33519         `inhibit_message' is non-zero.
33520         * etc/NEWS: Add an entry.
33521         * doc/lispref/display.texi: Add an entry for `inhibit-message',
33522         mention it in `message'.
33524 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
33526         Fix last fix in `display-buffer-record-window'.
33527         * lisp/window.el (display-buffer-record-window): Fix last fix.
33529 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
33531         Minor edits in CONTRIBUTE
33532         * CONTRIBUTE: Rearrange instructions about log messages.
33533         Use "Git" capitalized all over.
33534         Use 2 spaces between sentences.
33536 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
33538         * lisp/files.el (basic-save-buffer): Fix argument.
33540         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
33541         In case `(and (null custom-file) init-file-had-error)' do the same
33542         thing we'd do if `(null user-init-file)', which is to either error out
33543         or return nil.  This is in line with `custom-save-all' which would
33544         throw an error in that situation.  (Bug#20355)
33546         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
33547         (package-menu-hide-low-priority): New variable, see its doc.
33548         (package-archive-priorities): Update doc.
33549         (package-desc-priority): New function.
33550         (package-desc-priority-version): Use it.
33551         (package--remove-hidden): New function.
33552         (package-menu--refresh): Use it.
33554         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
33555         (package-menu--hide-obsolete): New variable.
33556         (package--remove-hidden): Use it.
33557         (package-menu-hide-obsolete): New interactive function to toggle
33558         the variable.
33559         (package--quick-help-keys): Document it.
33560         (package-menu-async): Add :version tag.
33561         (package-menu-mode-map): Bind package-menu-hide-obsolete.
33562         (package-desc-status): Indicate non-installed obsolete packages as
33563         avail-obso.
33564         (package-menu-mark-install): Allow installation of avail-obso.
33565         (package-menu--status-predicate): Sort avail-obso with available.
33567 2015-04-22  Alan Mackenzie  <acm@muc.de>
33569         On C-y, stop some text property entries being written into buffer-undo-list
33570         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
33571         `with-silent-modifications'.
33573 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
33575         In display-buffer-record-window record selected window if necessary
33576         * lisp/window.el (display-buffer-record-window): Store selected window
33577         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
33579 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
33581         Fix reftex-citation bug
33582         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
33583         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
33584         integration is enabled and there are no citations in the document
33585         so far.
33587 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
33589         Add or reset based on the presence of MERGE_HEAD
33590         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
33591         `vc-git-resolve-when-done' to `after-save-hook' in either case.
33592         (vc-git-conflicted-files): Add a TODO.
33593         (vc-git-resolve-when-done): Depending on the presence of
33594         MERGE_HEAD, either update the resolved file in the index, or
33595         remove it from there.  (Bug#20292)
33597 2015-04-21  Glenn Morris  <rgm@gnu.org>
33599         * lisp/custom.el (custom-declare-group): No need to purecopy
33600         custom-current-group-alist members following recent change to set
33601         it to nil before dumping.
33603         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
33604         (Bug#20399)
33606 2015-04-21  Daniel Colascione  <dancol@dancol.org>
33608         Unbreak no-op buffer save message
33609         * lisp/files.el (basic-save-buffer): Accept called-interactively as
33610         an argument instead of directly invoking called-interactively-p,
33611         which will always yield nil in that context.
33613 2015-04-21  Alan Mackenzie  <acm@muc.de>
33615         CC Mode: Do nothing in before/after-change-functions for text
33616         property changes
33617         Fixes bug#20266.
33618         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
33619         yank-handled-properties buffer local, and remove 'category from it.
33620         (c-called-from-text-property-change-p): New function.
33621         (c-before-change): Don't do anything if a call of the new function
33622         returns non-nil.
33623         (c-after-change): Don't do much if a call of the new function returns
33624         non-nil.
33625         (c-extend-after-change-region): Put changes to text property 'fontified
33626         inside c-save-buffer-state.
33628 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
33630         Fix byte-compiler warnings about looking-back
33631         * lisp/vc/log-view.el (log-view-end-of-defun-1):
33632         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
33633         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
33634         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
33635         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
33636         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
33637         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
33638         * lisp/org/org.el (org-insert-heading, org-sort-entries):
33639         * lisp/org/org-mouse.el (org-mouse-end-headline)
33640         (org-mouse-context-menu):
33641         * lisp/org/org-clock.el (org-clock-cancel):
33642         * lisp/man.el (Man-default-man-entry):
33643         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
33644         (rmail-ensure-blank-line):
33645         * lisp/mail/footnote.el (Footnote-delete-footnote):
33646         * lisp/mail/emacsbug.el (report-emacs-bug):
33647         * lisp/info.el (Info-follow-reference, Info-fontify-node):
33648         * lisp/info-look.el (info-lookup-guess-custom-symbol):
33649         * lisp/help-fns.el (help-fns--key-bindings):
33650         * lisp/files.el (hack-local-variables):
33651         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
33652         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
33653         (viper-complete-filename-or-exit):
33654         * lisp/emulation/viper-cmd.el (viper-backward-indent):
33655         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
33656         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
33657         * lisp/cus-edit.el (custom-face-edit-value-create):
33658         * lisp/calendar/todo-mode.el (todo-set-item-priority)
33659         (todo-filter-items-1, todo-convert-legacy-files)
33660         (todo-prefix-overlays): Add explicit second arg to looking-back.
33662 2015-04-20  Glenn Morris  <rgm@gnu.org>
33664         Avoid non-nil current-load-list at startup
33665         * src/process.c (init_process_emacs): Move Fprovide statement...
33666         (syms_of_process): ... to here.
33668         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
33670         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
33671         in emacs -Q.
33673 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
33675         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
33676         (Bug#20330)
33678 2015-04-20  Glenn Morris  <rgm@gnu.org>
33680         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
33682         Tweak exec-path in uninstalled case
33683         * src/callproc.c (init_callproc): If running uninstalled, do not
33684         include eventual installation libexec directory in exec-path.
33686 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
33688         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
33689         cache keywords.
33690         (package-menu-filter): Accept a list of keywords.
33691         (package--all-keywords): New variable to cache known keywords.
33692         (package-all-keywords): Populate it if necessary.
33693         (package-refresh-contents): Reset it.
33695         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
33696         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
33697         as special keywords which match agains package archive and status
33698         respectively.
33699         * etc/NEWS: Document it.
33701 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
33703         Describe and index "empty overlays".
33704         * doc/lispref/display.texi (Overlays): Improve indexing.
33705         (Managing Overlays): Describe "empty" overlays.
33706         (Overlay Properties, Finding Overlays): Add cross-reference to
33707         where empty overlays are described.
33709 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
33711         Spelling fixes
33713         Quote 'like this' in top-level files
33714         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
33715         Prefer to single-quote 'like this' (instead of the older style
33716         `like this').
33717         * configure.ac: Fix some space-before-tab problems that 'git commit'
33718         complained about.
33720         Use bool for boolean in textprop.c, undo.c
33721         * src/textprop.c (soft, hard): Now constants instead of macros.
33722         (validate_plist): Rewrite to avoid need for boolean local.
33723         (interval_has_all_properties, interval_has_some_properties)
33724         (interval_has_some_properties_list, add_properties)
33725         (remove_properties, get_char_property_and_overlay)
33726         (Fnext_single_char_property_change)
33727         (Fprevious_single_char_property_change, add_text_properties_1)
33728         (Fremove_text_properties, Fremove_list_of_text_properties)
33729         (copy_text_properties):
33730         * src/tparam.c (tparam1):
33731         * src/undo.c (record_change, record_property_change)
33732         (syms_of_undo):
33733         Use 'true' and 'false' for booleans.
33735 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
33737         * lisp/vc/vc-git.el (vc-git-find-file-hook):
33738         Call `smerge-start-session' even when dealing with a stash
33739         conflict (bug#20292).
33741 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
33743         Add option to eshell/clear to clear scrollback.
33744         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
33745         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
33746         scrollback contents are cleared.
33747         * etc/NEWS: Describe change.
33748         * doc/misc/eshell.texi: Add entry for `clear'.
33750 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
33752         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
33753         where either will do.
33755 2015-04-19  Steve Purcell  <steve@sanityinc.com>
33757         Assume package archive-contents are UTF8-encoded
33758         * lisp/emacs-lisp/package.el (package--read-archive-file):
33759         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
33760         downloaded and cached archive-contents files, so that non-ASCII
33761         characters in package descriptions are displayed correctly in the
33762         `list-packages' menu.  (Bug#20231)
33764 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
33766         Abort when looking at stashed changes
33767         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
33768         stashed changes (bug#20292).
33770 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
33772         Refactor low-level printing for simplicity
33773         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
33774         PRINTPREPARE; doable now that we assume C99.  All callers changed.
33775         (PRINTCHAR): Remove, as it adds more mystery than clarity.
33776         All callers changed.
33777         (strout): Assume that caller computes length.  All callers changed.
33778         (print_c_string): New function.
33779         (write_string, write_string_1): Compute length instead of asking
33780         the caller to compute it.  All callers changed.
33781         (write_string): Simplify by using write_string_1.
33782         (write_string_1): Simplify by using print_c_string.
33783         (Fterpri): Compute default val more clearly.
33784         (Fprin1_to_string, print_object):
33785         Assume C99 to avoid unnecessary nesting.
33786         (print_object): Prefer print_c_string to multiple printchar, or
33787         to calling strout with -1 length.  Coalesce into sprintf when
33788         this is easy.
33790 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
33792         Prefer "Bug#1234" in commit messages (Bug#20325)
33793         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
33794         as this isn't useful for Git.
33795         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
33797 2015-04-18  Glenn Morris  <rgm@gnu.org>
33799         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
33800         (Bug#19506)
33802 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
33804         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
33805         Do not use `chomp' as a function.  (Bug#19505)
33807 2015-04-18  Glenn Morris  <rgm@gnu.org>
33809         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
33811         * doc/emacs/misc.texi (Sorting): Small edit.
33812         (Bug#19896)
33814         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
33816 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
33818         css-mode.el: Support multi-line comment filling
33819         (Bug#20256)
33820         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
33821         comment filling.
33822         (css-adaptive-fill): New function.
33823         (css-mode): Set `adaptive-fill-function'.
33824         (scss-mode): Set `comment-continue'.
33826 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
33828         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
33829         Better error messages.
33831 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
33833         Minor improvements in Bulgarian input methods
33834         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
33835         Replace U+042C with U+045D, as the former character is not used in
33836         the modern Bulgarian language.
33837         (Bug#20350)
33839 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
33841         Improve EUDC manual
33842         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
33843         authentication schemes.  Add index items.  Shorten example server
33844         name.
33846 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
33848         Don't show both feature and function with the same name
33849         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
33850         Don't show both feature and function with the same name.
33852         (elisp--xref-identifier-location): Skip variable, if it's also
33853         a function
33854         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
33855         Avoid returning both the variable and the function for the same
33856         minor mode.
33858 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
33860         Fix fontification of keywords clobbered by the prompt
33861         * lisp/comint.el (comint-output-filter): Remove the uses of
33862         with-silent-modifications I introduced as part of the last change.
33863         This fixes, e.g., erratically missing highlighting when running
33864         ./configure --help; ./configure in a shell-mode buffer with
33865         compilation-shell-minor-mode turned on.
33867 2015-04-17  Glenn Morris  <rgm@gnu.org>
33869         * admin/authors.el (authors-valid-file-names)
33870         (authors-renamed-files-alist): Additions.
33872 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
33874         * lisp/indent.el (indent-region): Don't deactivate the mark.
33875         (Bug#20357)
33877 2015-04-17  Sam Steingold  <sds@gnu.org>
33879         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
33881 2015-04-16  Leo Liu  <sdl.web@gmail.com>
33883         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
33885 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
33887         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
33888         Don't use `pcomplete' any more.
33890 2015-04-16  Glenn Morris  <rgm@gnu.org>
33892         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
33894 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
33896         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
33897         * configure.ac (LIBJPEG): Leave it empty for MinGW.
33899 2015-04-16  Glenn Morris  <rgm@gnu.org>
33901         * lisp/replace.el (query-replace-from-to-separator):
33902         Delay initialization to avoid rogue setting after startup.
33904 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
33906         Pre-4.6 GCC succeeds with unknown option
33907         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
33908         (Bug#20338)
33910 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
33912         '[:graph:]' now excludes whitespace, not just ' '
33913         * doc/lispref/searching.texi (Char Classes):
33914         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
33915         sans whitespace (not sans space).
33916         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
33917         not just space.
33918         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
33920 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
33922         * lisp/subr.el (substitute-key-definition-key, special-form-p)
33923         (macrop): Drop deprecated second arg to indirect-function.
33924         (looking-back): Make the second arg non-optional.
33926         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
33927         command is actually sent to the shell.
33929 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
33931         Port jpeg configuration to Solaris 10 with Sun C
33932         * configure.ac: Check for jpeglib 6b by trying to link it, instead
33933         of relying on cpp magic that has problems in practice.  Check for
33934         both jpeglib.h and jerror.h features.  Remove special case for
33935         mingw32, which should no longer be needed (and if it were needed,
33936         should now be addressable by hotwiring emacs_cv_jpeglib).
33937         (Bug#20332)
33939 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
33941         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
33942         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
33943         Move to elisp-mode.el.
33944         (lisp-mode-variables): (Re)move elisp-specific settings.
33945         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
33946         from lisp-mode-variables.
33947         (elisp--font-lock-flush-elisp-buffers): New function, moved from
33948         lisp-mode.el.
33950         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
33951         Avoid pathological slowdown at top-level in large file.
33953 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
33955         Standardize names of ChangeLog history files
33956         Suggested by Glenn Morris in:
33957         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
33958         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
33959         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
33960         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
33961         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
33962         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
33963         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
33964         Remove.
33966         Split top-level entries into pre- and post-April 7
33967         This more clearly distingiushes pre-April-7 ChangeLog entries (which
33968         are for top-level files only) from post-April-7 entries (which are
33969         about files at all levels.  Problem reported by Glenn Morris in:
33970         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
33971         * ChangeLog.1: Move post-April-7 entries from here ...
33972         * ChangeLog.2: ... to this new file.
33973         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
33975 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
33977         Fix recent cus-start changes that added customize-rogues
33978         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
33979         vars early.
33980         * lisp/loadup.el ("cus-start"): Move to the end to reduce
33981         customize-rogue.
33983 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
33985         Define cl-concatenate as an alias to seq-concatenate
33986         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
33987           code by making cl-concatenate an alias to seq-concatenate.
33989 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
33991         * src/lread.c (intern_1): Make sure we'd find the symbol we add
33992         (Bug#20334)
33993         * src/xfaces.c (resolve_face_name): Don't use `intern' with
33994         Lisp_Strings.
33996 2015-04-15  Glenn Morris  <rgm@gnu.org>
33998         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
34000 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
34002         Clean up gnus-uu saving code slightly
34003         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
34004         save-restriction/widen calls make more sense.
34006 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34008         Make [:graph:] act like [:print:] sans space
34009         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
34010         [:graph:] so that it matches everything that [:print:] does,
34011         except for space.
34012         * doc/lispref/searching.texi (Char Classes):
34013         * etc/NEWS:
34014         * lisp/emacs-lisp/rx.el (rx):
34015         Document [:graph:] to be [:print:] sans ' '.
34016         * src/character.c, src/character.h (graphicp): New function.
34017         * src/regex.c (ISGRAPH) [emacs]: Use it.
34018         (BIT_GRAPH): New macro.
34019         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
34020         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
34021         Return BIT_GRAPH for RECC_GRAPH.
34022         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
34023         and ISPRINT if BIT_PRINT.
34025 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
34027         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
34028         Don't use call-next-method in a cl-defmethod.
34030         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
34031         (eieio--class-p): Remove, provided by cl-defstruct.
34033 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
34035         Add seq-intersection and seq-difference to the seq library
34036         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
34037         New functions.
34038         * test/automated/seq-tests.el: Add tests for seq-intersection and
34039         seq-difference.
34040         * doc/lispref/sequences.texi: Add documentation for seq-intersection
34041         and seq-difference.
34043 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
34045         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
34046         to avoid leaking internals.
34048 2015-04-14  Sam Steingold  <sds@gnu.org>
34050         package--ensure-init-file: widen requires save-restriction
34052 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
34054         Improve the commit-msg Git hook for unibyte environments
34055         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
34056         in unibyte environments.  (Suggested by Paul Eggert
34057         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
34058         [:print:], based on UTF-8 sequences of the unprintable characters.
34060         Describe problems with cursor caused by Windows Magnifier
34061         * etc/PROBLEMS: Describe the problem with cursor shape on
34062         MS-Windows due to Windows Magnifier.
34063         (Bug#20271)
34065         Make [:print:] support non-ASCII characters correctly
34066         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
34067         (BIT_PRINT): New bit mask.
34068         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
34069         * src/character.c (printablep): New function.
34070         * src/character.h (printablep): Add prototype.
34071         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
34072         of 'print', 'alnum', and 'alphabetic'.
34073         * doc/lispref/searching.texi (Char Classes): Document the new
34074         behavior of [:print:].
34075         * etc/NEWS: Mention the new behavior of [:print:].
34077         Assign correct general-category and names to surrogates
34078         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
34079         surrogates.  This avoids assigning them the default
34080         general-category of 'Cn', i.e. unassigned codepoints.
34081         (unidata-get-name): Give surrogates synthetic names.
34083 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
34085         Assume C89 offsetof in xterm.c, xlwmenu.c
34086         * lwlib/xlwmenu.c (offset):
34087         * src/xterm.c (cvt_string_to_pixel_args):
34088         Use offsetof, not XtOffset.
34090 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
34092         Assume C89 offsetof in widget.c
34093         * src/widget.c (XtOffset): Remove; no longer needed.
34094         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
34096         Fix think-o in previous patch
34097         * src/window.c (count_windows, get_leaf_windows):
34098         Don't optimize count_windows incorrectly.
34100 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
34102         Avoid some int overflows in window.c
34103         * src/print.c (print_object):
34104         * src/window.c (sequence_number):
34105         * src/window.h (struct window.sequence_number):
34106         Don't assume window sequence number fits in int.
34107         * src/window.c (window_select_count):
34108         * src/window.h (struct window.use_time, window_select_count):
34109         Don't assume window use time fits in int.
34110         * src/window.c (Fsplit_window_internal):
34111         Don't assume user-supplied integer, or sum, fits in int.
34112         (Fset_window_configuration, count_windows, get_leaf_windows)
34113         (save_window_save, Fcurrent_window_configuration):
34114         Use ptrdiff_t for object counts.
34115         (Fset_window_configuration): Omit unused local 'n'.
34116         (count_windows): Simplify by writing in terms of get_leaf_windows.
34117         (get_leaf_windows): Don't store through FLAT if it's null.
34118         (extract_dimension): New static function.
34119         (set_window_margins, set_window_fringes, set_window_scroll_bars):
34120         Use it to avoid undefined behavior when converting user-supplied
34121         integer to 'int'.
34123 2015-04-13  Glenn Morris  <rgm@gnu.org>
34125         Minor doc copyedits
34126         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
34127         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
34129 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
34131         [Gnus] Catch the invalid-operation that idna.el will issue
34132         * lisp/gnus/gnus-art.el (gnus-use-idna):
34133         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
34134         * lisp/gnus/message.el (message-use-idna):
34135         Catch the invalid-operation that idna.el will issue.
34137 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
34139         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
34141 2015-04-13  Sam Steingold  <sds@gnu.org>
34143         package--ensure-init-file: widen before looking for
34144         "(package-initialize)"
34146 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
34148         Change diff-switches default to `-u' (Bug#20290)
34149         * doc/emacs/files.texi (Comparing Files): Document the new default
34150         value of `diff-switches'.
34151         * doc/emacs/trouble.texi (Sending Patches): Document the preference
34152         for unified diff format.  Escape the plus in the suggested `-F' regexp
34153         value.
34154         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
34156 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34158         (gnus-group--setup-tool-bar-update): Fix last change
34159         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
34160         cursor-sensor-functions should be a list of functions.
34162 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
34164         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
34165         Use gmm-called-interactively-p.
34167 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34169         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
34170         (Bug#20321)
34171         * lisp/cus-start.el (read-buffer-function): Don't advertise
34172         iswitchb-read-buffer any more.
34173         (iswitchb): Don't tweak this obsolete group any more.
34175 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
34177         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
34179         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
34180         Adding a string after a constructor's argument list will use
34181         that string as the constructor function docstring.  If this string
34182         is absent but the struct itself was given a docstring, use that as
34183         the constructor's docstring.
34184         Fixes bug#17284.
34186 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34188         Deprecate `intangible' and `point-entered' properties
34189         * lisp/emacs-lisp/cursor-sensor.el: New file.
34190         * lisp/simple.el (pre-redisplay-functions): New hook.
34191         (redisplay--pre-redisplay-functions): New function.
34192         (pre-redisplay-function): Use it.
34193         (minibuffer-avoid-prompt): Mark obsolete.
34194         (redisplay--update-region-highlight): Adapt it to work as a function on
34195         pre-redisplay-functions.
34196         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
34197         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
34198         than point-entered to make the prompt intangible.
34199         * lisp/forms.el: Move `provide' calls to the end.
34200         (forms-mode): Don't use `run-hooks' on a local var.
34201         (forms--make-format, forms--make-format-elt-using-text-properties):
34202         Use cursor-intangible rather than `intangible'.
34203         (forms-mode): Enable cursor-intangible-mode.
34204         * lisp/isearch.el (isearch-mode): Use defvar-local.
34205         (cursor-sensor-inhibit): Declare.
34206         (isearch-mode): Set cursor-sensor-inhibit.
34207         (isearch-done): Set it back.
34208         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
34209         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
34210         any more.
34211         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
34212         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
34213         Add Edebug spec.
34214         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
34215         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
34216         inhibit-point-motion-hooks any more.
34217         (ses--cell-at-pos, ses--curcell): New functions, extracted from
34218         ses-set-curcell.
34219         (ses-set-curcell): Use them.
34220         (ses-print-cell, ses-setup): Use cursor-intangible instead of
34221         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
34222         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
34223         Use ses--cell-at-pos.
34224         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
34225         extracted from ses-command-hook.  Make them work with multiple windows
34226         displaying the same buffer.
34227         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
34228         Enable cursor-intangible-mode.
34229         (ses-command-hook): Remove cell highlight and mode-line update code.
34230         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
34231         Update for new name of text-property holding the cell name.
34232         (ses-rename-cell): Don't mess with mode-line-process.
34233         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
34234         cursor-sensor-functions property instead of point-entered.
34235         (erc-insert-timestamp-right, erc-format-timestamp):
34236         Use cursor-intangible rather than `intangible'.
34237         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
34238         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
34239         cursor-sensor-mode if needed.
34240         (erc-echo-timestamp): Adapt to calling convention of
34241         cursor-sensor-functions.
34242         (erc-insert-timestamp-right): Remove unused vars `current-window' and
34243         `indent'.
34244         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
34245         (gnus-update-group-mark-positions): Remove unused `topic' var.
34246         (gnus-group-insert-group-line): Remove unused var `header'.
34247         (gnus-group--setup-tool-bar-update): New function.
34248         (gnus-group-insert-group-line): Use it.
34249         (gnus-group-update-eval-form): Declare local
34250         dynamically-bound variables.
34251         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
34252         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
34253         (gnus-group-prepare-topics, gnus-topic-update-topic)
34254         (gnus-topic-change-level, gnus-topic-catchup-articles)
34255         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
34256         Use inhibit-read-only.
34257         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
34258         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
34259         * lisp/textmodes/reftex-index.el (reftex-display-index):
34260         Use cursor-intangible-mode if available.
34261         (reftex-index-post-command-hook): Check cursor-intangible.
34262         * lisp/textmodes/reftex-toc.el (reftex-toc):
34263         Use cursor-intangible-mode if available.
34264         (reftex-toc-recenter, reftex-toc-post-command-hook):
34265         Check cursor-intangible.
34266         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
34267         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
34268         (sgml-tags-invisible): Use with-silent-modifications and
34269         inhibit-read-only.  Enable cursor-sensor-mode.
34270         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
34271         calling convention of cursor-sensor-functions.
34272         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
34273         (table-point-entered-cell-hook, table-point-left-cell-hook):
34274         Don't autoload.
34275         (table-cell-entered-state): Remove var.
34276         (table--put-cell-point-entered/left-property)
34277         (table--remove-cell-properties):
34278         Use cursor-sensor-functions rather than point-entered/left.
34279         (table--point-entered/left-cell-function): Merge
34280         table--point-entered-cell-function and table--point-left-cell-function
34281         and adjust to calling convention of cursor-sensor-functions.
34283         Update ldef-boots.el
34285         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
34287         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
34289         Collapse successive char deletions in the undo log
34290         * src/cmds.c (remove_excessive_undo_boundaries): New function,
34291         extracted from Fself_insert_command.
34292         (Fdelete_char, Fself_insert_command): Use it.
34293         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
34294         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
34296         xterm and OSC 52: Add NEWS entry, and tweak the code
34297         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
34298         to top-level.
34299         (terminal-init-xterm-activate-set-selection): Set a terminal property.
34300         (xterm--set-selection): Use it instead of checking the value of
34301         `terminal-initted'.  Don't use string-bytes.
34303 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
34305         xterm.el: Implement OSC-52 functionality for setting the X selection
34306         * lisp/term/xterm.el (xterm-max-cut-length): New var.
34307         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
34308         New funs.
34309         (terminal-init-xterm, xterm--version-handler): Use them.
34311 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34313         Remove left over code from when we used an obsolete/loaddefs.el file
34314         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
34315         when we used an obsolete/loaddefs.el file.
34317         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
34318         (semanticdb-without-unloaded-file-searches): Use declare.
34319         (semantic-fw-add-edebug-spec): Remove.
34321         * lisp/completion.el (completion-lisp-mode-hook):
34322         Use completion-separator-chars rather than local key binding.
34324         * src/*.c: Set deactivate_mark buffer-locally
34325         (Bug#20260)
34326         * src/insdel.c (prepare_to_modify_buffer_1):
34327         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
34328         buffer-locally.
34330 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
34332         python.el: Keep symmetry on sexp navigation with parens
34333         (Bug#19954)
34334         * lisp/progmodes/python.el
34335         (python-nav--forward-sexp): Add argument skip-parens-p.
34336         (python-nav-forward-sexp, python-nav-backward-sexp)
34337         (python-nav-forward-sexp-safe)
34338         (python-nav-backward-sexp-safe): Use it.
34339         * test/automated/python-tests.el
34340         (python-nav-forward-sexp-1): Fix test.
34342 2015-04-12  João Távora  <joaotavora@gmail.com>
34344         Don't use `setq-local' in Gnus code
34345         This might break upstream builds with older Emacsen
34346         * lisp/gnus/message.el (message-mode): Use `set' and
34347         `make-local-variable' instead of `setq-local'.
34349 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
34351         Update Makefile.in's .PHONY dependencies
34352         * Makefile.in (change-history-commit, master-branch-is-current)
34353         (no-ChangeLog): Now phony.
34355         Remove configure's --with-mmdf option
34356         * configure.ac (MAIL_USE_MMDF): Remove.
34357         * etc/NEWS: Document this.
34358         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
34359         (Bug#20308)
34361         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
34362         That way, 'make install' won't think it's a man page.
34363         Reported by Ashish SHUKLA in:
34364         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
34366         Improve 'make change-history' prereq tests
34367         * Makefile.in (gen_origin): Fix to match what's in the master branch.
34368         (no-ChangeLog, master-branch-is-current): New rules.
34369         (change-history): Depend on them, to avoid similar future problems.
34370         Escape the local-variables string to pacify Emacs when editing
34371         Makefile.in.
34373 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
34375         * test/automated/package-test.el (with-package-test):
34376         Kill Packages buffer.
34378         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
34379         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
34380         "Upgrade" last, and use capitalized instead of all-caps.
34382         * lisp/emacs-lisp/package.el: Completely silence async operations.
34383         (package--make-autoloads-and-stuff): Silence autoloads.
34384         (package--save-selected-packages): New function, silences
34385         `customize-save-variable'.
34386         (package--user-selected-p, package-install-from-buffer)
34387         (package-delete, package-install): Use it.
34388         (package-install-from-archive)
34389         (package-menu--perform-transaction): Silence.
34390         (package-menu-execute): Feedback when operation starts.
34392         Use delay-mode-hooks when visiting the init-file
34393         * lisp/emacs-lisp/package.el (package--ensure-init-file):
34394         delay-mode-hooks.
34395         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
34397         * lisp/files.el: Only message when saving if save-silently is nil.
34398         (save-silently): New variable.
34399         (files--message): New function.
34400         (find-file-noselect, save-buffer, basic-save-buffer)
34401         (basic-save-buffer-2, save-some-buffers, not-modified)
34402         (append-to-file): Use them.
34404 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
34406         Support debug declarations in pcase macros
34407         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
34408         (pcase-UPAT): Use it.  Remove "`".
34409         (pcase--edebug-match-macro): New function.
34410         (pcase-defmacro): Support debug declarations.
34411         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
34412         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
34413         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
34414         Add debug declaration.
34416         pcase.el: Edebug support for `app' and vector patterns
34417         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
34418         (pcase-UPAT): Use it.  Support `app' patterns.
34419         (pcase-QPAT): Support vector patterns.
34421         edebug.el: Disambiguate vector specifications
34422         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
34423         `(vector ...)' as a vector specification, not as a sublist.
34425         (gnus-summary-refer-thread): Don't clobber unread articles
34426         This fixes a bug where `A T' causes "random" articles to become marked
34427         as read.
34428         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
34429         gnus-newsgroup-unreads remains sorted.
34431         mouse-sel.el: Fix mouse-sel-get-selection-function
34432         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
34433         Use gui--last-selected-text-primary instead of no longer existing
34434         gui-last-selected-text.
34436         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
34438         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
34440 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
34442         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
34444         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
34445         right buffer.
34447         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
34448         (byte-compile--interactive): New var.
34449         (byte-compile--message): New function.
34450         (byte-compile-log-1, byte-force-recompile)
34451         (byte-recompile-directory, byte-recompile-file)
34452         (byte-compile-file, compile-defun)
34453         (byte-compile-file-form-defmumble, byte-compile)
34454         (byte-compile-file-form-defalias, display-call-tree): Use it.
34456         * lisp/files.el: Don't message when nothing happened.
34457         (save-some-buffers, basic-save-buffer): Before messaging to say
34458         "nothing was saved" check if (called-interactively-p 'any).
34460 2015-04-12  João Távora  <joaotavora@gmail.com>
34462         Summary: Improve sexp-based movement in message-mode
34463         Works by giving citations and smileys a different syntax.  This helps
34464         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
34465         sexp-based movement.
34466         * lisp/gnus/message.el (message--syntax-propertize): New function.
34467         (message-mode): Set syntax-related vars.
34468         (message-smileys): New variable.
34469         * test/automated/message-mode-tests.el: New file
34471 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
34473         Use bool for boolean in window.c
34474         * src/window.c: Omit unnecessary static function decls.
34475         (adjust_window_count, select_window, Fselect_window)
34476         (window_body_width, Fwindow_body_height, Fwindow_body_width)
34477         (set_window_hscroll, check_window_containing, Fwindow_at)
34478         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
34479         (unshow_buffer, replace_window, recombine_windows)
34480         (add_window_to_list, candidate_window_p, next_window)
34481         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
34482         (Fget_buffer_window, Fdelete_other_windows_internal)
34483         (replace_buffer_in_windows_safely, set_window_buffer)
34484         (Fset_window_buffer, Fforce_window_update)
34485         (temp_output_buffer_show, make_parent_window)
34486         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
34487         (resize_frame_windows, Fsplit_window_internal)
34488         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
34489         (Fresize_mini_window_internal, mark_window_cursors_off)
34490         (window_scroll, window_scroll_pixel_based)
34491         (window_scroll_line_based, scroll_command, Fscroll_other_window)
34492         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
34493         (Fmove_to_window_line, Fset_window_configuration)
34494         (delete_all_child_windows, apply_window_adjustment)
34495         (set_window_fringes, set_window_scroll_bars)
34496         (Fset_window_vscroll, foreach_window, foreach_window_1)
34497         (compare_window_configurations, Fcompare_window_configurations):
34498         Prefer 'bool', 'true', and 'false' for booleans.
34499         * src/window.h (WINDOW_MODE_LINE_LINES)
34500         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
34502 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
34504         Speed up byte-compilation and autoload generation by avoiding mode-hooks
34505         This prevents emacs-lisp-mode-hook from being run everytime an
34506         autoload file is generated, which can account for a fraction of
34507         package installation time depending on the hooks the user has
34508         configured.
34509         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
34510         * lisp/emacs-lisp/autoload.el (autoload-find-file)
34511         (autoload-find-generated-file): Use delay-mode-hooks.
34513         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
34514         (package-menu-refresh): Respect async and do new package checking.
34515         (list-packages): Use `package-menu-refresh' instead of repeating code.
34517         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
34518         (package--quick-help-keys): New variable.
34519         (package--prettify-quick-help-key): New function.
34520         (package-menu-quick-help): Use it.
34522         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
34523         (package--build-compatibility-table): Require finder.
34525         * test/automated/package-test.el: Fix new test.
34527         * lisp/emacs-lisp/package.el: Silence async operations.
34528         (package--silence): New variable.
34529         (package--message): New function.
34530         (package-import-keyring, package-refresh-contents)
34531         (package-compute-transaction, package-install, package-delete)
34532         (package-menu--perform-transaction, package-menu-execute): Use it.
34534         * test/automated/package-test.el: Test async functionality.
34535         (package-test-update-archives-async): New test.
34537 2015-04-11  Daiki Ueno  <ueno@gnu.org>
34539         Utilize `make-process' in epg.el
34540         * lisp/epg.el (epg-error-output): Abolish.
34541         (epg-context): New slot `error-buffer'.
34542         (epg--start): Use `make-process' and `make-pipe-process'.
34543         (epg--process-filter): Remove code separating stderr from stdout.
34544         (epg-wait-for-completion): Simplify `error-output' handling.
34545         (epg-reset): Dispose error buffer.
34547 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
34549         * .gitignore: Ignore doc temps and outputs.
34551         Port commit-msg to MSYS Bash+Gawk
34552         See Eli Zaretskii in:
34553         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
34554         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
34555         (cent_sign, print_at_sign, at_sign): Revert previous change.
34556         (print_at_sign): Prepend "BEGIN".
34557         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
34559         Port commit-msg to broken MS-Windows shell
34560         * build-aux/git-hooks/commit-msg (cent_sign):
34561         Just use UTF-8 here rather than ASCII + printf, as the latter fails
34562         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
34563         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
34565 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
34567         Support GnuTLS v3.4 and later on MS-Windows
34568         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
34569         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
34570         GnuTLS DLL to load according to value of libgnutls-version.
34571         (Bug#20294)
34573 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
34575         Minor quoting etc. fixes to misc manuals
34576         Fix some minor quoting and spacing issues.  Distinguish more
34577         clearly among grave accent and apostrophe (which are ASCII) and
34578         single quote (which is not).  Prefer the standard terms
34579         "apostrophe" and "grave accent" to alternative names that can be
34580         confusing.  Use apostrophes to single-quote ASCII text.
34581         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
34582         rather than approximating it in ASCII with grave accent.
34584 2015-04-11  Daiki Ueno  <ueno@gnu.org>
34586         Respect more keyword args in `make-process'
34587         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
34588         keywords as documented.
34590 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
34592         Extract ChangeLog entries when committing a directory
34593         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
34594         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
34595         Add a FIXME comment.
34596         (log-edit-changelog-entries): Extract from
34597         `log-edit-changelog-entries', handle FILE being a directory
34598         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
34600 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
34602         Fix problems found by --enable-gcc-warnings
34603         * src/process.c (create_process, Fmake_pipe_process)
34604         (Fmake_network_process): Omit unused locals.
34606         Fix commit-msg to handle scissors lines
34607         * build-aux/git-hooks/commit-msg:
34608         Ignore every line after a scissors line, such as a line generated
34609         by 'git commit -v'.  Problem reported by Johan Bockgård in:
34610         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
34612         port commit-msg to Gawk 3.0.4 (1999)
34613         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
34614         (print_at_sign, at_sign): New vars.  Use them to avoid problems
34615         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
34616         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
34618         Have commit-msg report commit failure
34619         * build-aux/git-hooks/commit-msg: If the commit is aborted,
34620         say so.  Simplify by doing this at the end.  Problem reported
34621         by Eli Zaretskii in:
34622         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
34624 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
34626         Clean up LDAP Configuration section of EUDC manual
34627         * doc/misc/eudc.texi: Combine indices.
34628         (LDAP Configuration): Use command markup.  Add index entries.
34629         Change formatting.  Wrap long lines.  Add noindent markup.
34631 2015-04-10  Daiki Ueno  <ueno@gnu.org>
34633         Add facility to collect stderr of async subprocess
34634         * src/w32.h (register_aux_fd): New function declaration.
34635         * src/w32.c (register_aux_fd): New function.
34636         * src/process.h (struct Lisp_Process): New member stderrproc.
34637         * src/process.c (PIPECONN_P): New macro.
34638         (PIPECONN1_P): New macro.
34639         (Fdelete_process, Fprocess_status, Fset_process_buffer)
34640         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
34641         (Fcontinue_process): Handle pipe process specially.
34642         (create_process): Respect p->stderrproc.
34643         (Fmake_pipe_process): New function.
34644         (Fmake_process): Add new keyword argument :stderr.
34645         (wait_reading_process_output): Specially handle a pipe process when
34646         it gets an EOF.
34647         (syms_of_process): Register Qpipe and Smake_pipe_process.
34648         * doc/lispref/processes.texi (Asynchronous Processes): Document
34649         `make-pipe-process' and `:stderr' keyword of `make-process'.
34650         * lisp/subr.el (start-process): Suggest to use `make-process' handle
34651         standard error separately.
34652         * test/automated/process-tests.el (process-test-stderr-buffer)
34653         (process-test-stderr-filter): New tests.
34654         * etc/NEWS: Mention new process type `pipe' and its usage with the
34655         `:stderr' keyword of `make-process'.
34657 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
34659         Minor quoting etc. fixes to lispref manual
34660         * doc/lispref/tips.texi (Documentation Tips):
34661         Distinguish more clearly among grave accent, apostrophe,
34662         and single quote.
34663         * doc/lispref/README, doc/lispref/buffers.texi:
34664         * doc/lispref/commands.texi, doc/lispref/control.texi:
34665         * doc/lispref/customize.texi, doc/lispref/display.texi:
34666         * doc/lispref/elisp.texi, doc/lispref/files.texi:
34667         * doc/lispref/frames.texi, doc/lispref/hash.texi:
34668         * doc/lispref/help.texi, doc/lispref/internals.texi:
34669         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
34670         * doc/lispref/markers.texi, doc/lispref/modes.texi:
34671         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
34672         * doc/lispref/os.texi, doc/lispref/positions.texi:
34673         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
34674         * doc/lispref/text.texi, doc/lispref/tips.texi:
34675         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
34676         Use American-style double quoting in ordinary text,
34677         and quote 'like this' when single-quoting in ASCII text.
34678         Also, fix some minor spacing issues.
34680 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
34682         Handle symlinked test directory in tramp-tests.el
34683         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
34684         (tramp--test-check-files): Use `file-truename' for directories.
34686 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
34688         Fix 'recenter' when visual-line-mode is turned on
34689         * src/window.c (Frecenter): Use the same code for GUI and TTY
34690         frames alike; use vmotion only for "initial" frames.  This is
34691         because vmotion doesn't support visual-line-mode.  Rewrite the
34692         'iarg >= 0' case to use move_it_* functions instead of using
34693         vmotion, for the same reason.  Fix the clipping of the argument
34694         value to support scroll-margin in all cases and avoid unwarranted
34695         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
34696         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
34697         which see.
34699 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
34701         * lisp/abbrev.el (define-abbrev-table): Refine last change.
34703         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
34704         use of c[ad]+r", so as to keep the "cl-" prefix on all
34705         cl-lib definitions.
34707         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
34708         Use inhibit-point-motion-hooks.
34710         * lisp/cedet/semantic: Remove some dead code.
34711         * lisp/cedet/semantic/util-modes.el
34712         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
34713         any more.
34714         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
34715         not supported any more.
34716         (semantic-safe): Use `declare'.
34717         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
34718         (semantic-tag-intangible-p): Remove unused functions.
34719         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
34720         Remove unused function.
34722         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
34723         (gnus-article-hide-text, gnus-article-unhide-text)
34724         (gnus-article-unhide-text-type): Remove special handling of
34725         `intangible' since that property is not used any more.
34726         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
34728 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
34730         Use the VC root in `log-edit-listfun'
34731         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
34732         `log-edit-listfun'.
34734 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
34736         Fix description of Unix time, mention new function.
34737         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
34738         Unix time.
34739         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
34740         (Basic Operations on Units): Mention `calc-convert-exact-units'.
34742 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
34744         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
34746 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
34748         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
34749         Don't add newline after the last entry.
34751 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
34753         css-mode.el: Add "not" pseudo-class
34754         (Bug#20267)
34755         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
34756         list of CSS pseudo-classes.
34758 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
34760         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
34762 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
34764         Stop messing with the EMACS env var
34765         * doc/emacs/misc.texi (Interactive Shell): Remove description of
34766         EMACS env var.
34768 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
34770         Adapt 'make change-history' to coding cookie
34771         * Makefile.in (change-history): Adjust to change of format of
34772         ChangeLog file, which now has a coding cookie before an indented
34773         copyright notice.
34775 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
34777         Adapt 'make change-history' to coding cookie
34778         * Makefile.in (change-history): Adjust to change of format of
34779         ChangeLog file, which now has a coding cookie before an indented
34780         copyright notice.
34782         gitlog-to-changelog coding cookie and mv -i
34783         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
34784         for copyright notice prototype, so that we get a proper "coding:"
34785         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
34786         existing ChangeLog.  Problems reported by Eli Zaretskii in:
34787         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
34789         Merge from gnulib
34790         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
34791         2015-04-09 gitlog-to-changelog: port to MS-Windows
34793 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
34795         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
34796         (Bug#20212)
34798 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
34800         Stop messing with the EMACS env var
34801         (Bug#20202)
34802         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
34803         * lisp/comint.el (comint-exec-1):
34804         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
34805         * lisp/progmodes/compile.el (compilation-start): Same and bring
34806         INSIDE_EMACS's format in line with other users.
34808         css-mode.el (css-smie-rules): Fix indentation after complex selectors
34809         (Bug#20282)
34810         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
34811         inner structure of selectors.
34813 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
34815         python.el: Indent docstring lines to base-indent
34816         (Bug#19595)
34817         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
34818         an initial patch.
34819         * lisp/progmodes/python.el
34820         (python-indent-context): Add :inside-docstring context.
34821         (python-indent--calculate-indentation): Handle :inside-docstring.
34822         (python-indent-region): Re-indent docstrings.
34823         * test/automated/python-tests.el (python-indent-region-5)
34824         (python-indent-inside-string-2): Fix tests.
34826         python.el: Increase native completion robustness
34827         (Bug#19755)
34828         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
34829         this and providing useful ideas.
34830         * lisp/progmodes/python.el
34831         (python-shell-completion-native-output-timeout): Increase value.
34832         (python-shell-completion-native-try-output-timeout): New var.
34833         (python-shell-completion-native-try): Use it.
34834         (python-shell-completion-native-setup): New readline setup avoids
34835         polluting current context, ensures output when no-completions are
34836         available and includes output end marker.
34837         (python-shell-completion-native-get-completions): Trigger with one
34838         tab only.  Call accept-process-output until output end is found or
34839         python-shell-completion-native-output-timeout is exceeded.
34841 2015-04-08  Samer Masterson  <samer@samertm.com>
34843         * lisp/eshell: Make backslash a no-op in front of normal chars
34844         (Bug#8531)
34845         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
34846         (eshell-parse-backslash): Return escaped character after backslash
34847         if it is special.  Otherwise, if the backslash is not in a quoted
34848         string, ignore the backslash and return the character after; if
34849         the backslash is in a quoted string, return the backslash and the
34850         character after.
34851         * test/automated/eshell.el (eshell-test/escape-nonspecial)
34852         (eshell-test/escape-nonspecial-unicode)
34853         (eshell-test/escape-nonspecial-quoted)
34854         (eshell-test/escape-special-quoted): Add tests for new
34855         `eshell-parse-backslash' behavior.
34857 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
34859         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
34860         after the file name.
34861         (Bug#20276)
34863 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
34865         Minor quoting etc. fixes to Emacs manual
34866         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
34867         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
34868         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
34869         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
34870         * doc/emacs/indent.texi, doc/emacs/macos.texi:
34871         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
34872         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
34873         * doc/emacs/search.texi, doc/emacs/trouble.texi:
34874         * doc/emacs/vc1-xtra.texi:
34875         Use American-style double quoting in ordinary text,
34876         and quote 'like this' when single-quoting in ASCII text.
34877         Also, fix some minor spacing issues.
34879         Minor quoting etc. fixes to elisp intro
34880         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
34881         American-style double quoting in ordinary text.  In ASCII text,
34882         consistently quote 'like this' instead of `like this', unless
34883         Emacs requires the latter.
34885 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
34887         * CONTRIBUTE: Mention log-edit-insert-changelog.
34889         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
34891 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
34893         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
34895 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
34897         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
34898         Fix inheritance of initargs.  (Bug#20270)
34900 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
34902         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
34903         while dowloading information.
34905         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
34906         (package--ensure-init-file): Check file contents before visiting.
34907         (package-initialize): Call it.
34908         (package-install-from-buffer, package-install): Don't call it.
34910 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
34912         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
34913         (Bug#17517)
34915 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
34917         * lisp/net/tramp-cache.el (tramp-flush-file-property):
34918         Fix nasty scoping bug.
34920 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
34922         Add notice to visual commands section
34923         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
34924         such as git call less with its -F option which omits pagination if
34925         the contents is less than one page long.  This interferes with
34926         eshell's visual (sub-)commands.
34928 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
34930         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
34931         environment variable expansion in file names.  (Bug#19839)
34933 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
34935         Prefer double-quote to accent-grave in man pages
34937 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
34939         (Bug#20257)
34940         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
34942 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
34944         Update etc/PROBLEMS.
34945         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
34946         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
34947         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
34948         respectively); other minor updates and tweaks.  (Bug#20011)
34950 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
34952         Add doc strings for some Isearch state vars
34953         * lisp/misearch.el (multi-isearch-buffer-list)
34954         (multi-isearch-file-list): Add doc strings.
34955         (Bug#20232)
34957 2015-04-07  Alan Mackenzie  <acm@muc.de>
34959         Always mark "<" and ">" in #include directives with text properties.
34960         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
34961         "anchored matcher" with an invocation of
34962         c-make-font-lock-search-function to allow fontification when there's
34963         no trailing space on an "#include <..>" line.
34965 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
34967         Generate a ChangeLog file from commit logs
34968         * .gitignore: Add 'ChangeLog'.
34969         * build-aux/gitlog-to-changelog: New file, from Gnulib.
34970         * build-aux/gitlog-to-emacslog: New file.
34971         * CONTRIBUTE: Document the revised workflow.
34972         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
34973         instead of just special cases.
34974         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
34975         (ChangeLog, unchanged-history-files, change-history)
34976         (change-history-commit): New rules.
34977         * admin/admin.el (make-manuals-dist--1):
34978         Don't worry about doc/ChangeLog.
34979         * admin/authors.el: Add a FIXME.
34980         * admin/make-tarball.txt:
34981         * lisp/calendar/icalendar.el:
34982         * lisp/gnus/deuglify.el:
34983         * lisp/obsolete/gulp.el:
34984         * lwlib/README:
34985         Adjust to renamed ChangeLog history files.
34986         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
34987         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
34988         Remove obsolete discussion of merging ChangeLog files.
34989         New section "Maintaining ChangeLog history".
34990         * build-aux/git-hooks/pre-commit:
34991         Reject attempts to commit files named 'ChangeLog'.
34992         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
34993         * make-dist: Make and distribute top-level ChangeLog if there's a
34994         .git directory.  Distribute the new ChangeLog history files
34995         instead of scattered ChangeLog files.  Distribute the new files
34996         gitlog-to-changelog and gitlog-to-emacslog.
34997         (Bug#19113)
34999         Rename ChangeLogs for gitlog-to-changelog
35000         This patch was implemented via the following shell commands:
35001         find * -name ChangeLog |
35002         sed 's,.*,git mv & &.1,
35003         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
35004         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
35005         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
35006         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
35007         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
35008         sh
35009         git commit -am"[this commit message]"
35011 This file records repository revisions from
35012 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
35013 commit 5878abf87b6b3ead1367cbae5cc6b0743349f611 (inclusive).
35014 See ChangeLog.1 for earlier changes.
35016 ;; Local Variables:
35017 ;; coding: utf-8
35018 ;; End:
35020   Copyright (C) 2015-2016 Free Software Foundation, Inc.
35022   This file is part of GNU Emacs.
35024   GNU Emacs is free software: you can redistribute it and/or modify
35025   it under the terms of the GNU General Public License as published by
35026   the Free Software Foundation, either version 3 of the License, or
35027   (at your option) any later version.
35029   GNU Emacs is distributed in the hope that it will be useful,
35030   but WITHOUT ANY WARRANTY; without even the implied warranty of
35031   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
35032   GNU General Public License for more details.
35034   You should have received a copy of the GNU General Public License
35035   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.