* prolog.el: Update and extend operator table
[emacs.git] / ChangeLog.2
blob8ab17b5281fa77850df5fbd7d2acacd3ab5e7ebf
1 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
3         Add prettify-symbols-alist for js-mode
5         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
6         (js-mode): Use it.
8 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
10         * nt/subdirs.el: File deleted (no longer used).
12 2015-09-26  Alan Mackenzie  <acm@muc.de>
14         Fix follow-scroll-up/down, making them replacements for scroll-up/down.
16         1. Allow point to move between follow windows in scroll operations.
17         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
18         when EOB was isolated in the last follow window.
20         lisp/follow.el (follow-fixed-window): New variable.
21         (follow-get-scrolled-point): New function.
22         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
23         Reformulate
24         the code.  Put `scroll-command' properties on the functions.  Correct
25         minor errors in ...-down's doc string and code.
26         (follow-calc-win-end): Amend incomplete doc string.  Use
27         `pos-visible-in-window-p' to check whether EOB is in the window.
28         (follow-estimate-first-window-start): Correct an off-by-1 error.
29         (follow-adjust-window): Add handling for explicit scrolling operations.
31 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
33         * admin/MAINTAINERS: Add self, plus list some more files sans maintaners.
35 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
37         New DWIM commands for changing letter-case
39         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
40         New functions.  (Bug#21501)
42 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
44         * etc/PROBLEMS: Document problems with pasting on MS-Windows
46 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
48         Make face realization be more frame-specific
50         * src/frame.h (struct f): New flag face_change.
51         * src/xfaces.c (Finternal_make_lisp_face)
52         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
53         (update_face_from_frame_parameter): Set the face_change flag only
54         for the frame whose faces are affected.
55         * src/xdisp.c (init_iterator): If a frame's face_change flag is
56         set, free faces only on that frame.
57         (redisplay_internal): Disable "display optimization 1" if the
58         frame's face_change flag is set.
59         (redisplay_window): Don't allow skipping a window's redisplay if
60         its frame's face_change flag is set.
61         * src/frame.c (x_set_screen_gamma): Instead of calling
62         Fclear_face_cache, call clear_face_cache and set
63         windows_or_buffers_changed to a non-zero value.  This avoids
64         setting the global face_change flag that triggers face realization
65         on all frames and thorough redisplay of all of them.
67         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
68         clear face cache if the selected frame is a GUI frame.
70 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
72         Remove font-latex specific check
74         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p): Use
75         syntax-ppss data to identify verbatim contents.
77 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
79         Fix false negatives in tex--prettify-symbols-compose-p.
81         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p): Fix some
82         false negatives.
84 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
86         Reorder Windows version in Emacs manifests
88         * nt/emacs-x64.manifest:
89         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
90         highest.
92 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
94         Update Emacs manifest files for Windows 10
96         * nt/emacs-x86.manifest:
97         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
99 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
101         Avoid non-ASCII decoding errors in C src files
103         * src/nsterm.m:
104         * src/lisp.h:
105         * src/editfns.c:
106         * src/doprnt.c: Add 'coding' cookies -- these files include
107         Unicode characters and should be decoded as UTF-8.
109 2015-09-25  Alan Mackenzie  <acm@muc.de>
111         Resurrect edebug-set-initial-mode, repurposing it to set the global mode.
113         lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
114         amend to match current modes and functions.
115         (edebug-set-initial-mode): Uncomment and change from setting a defun's
116         `edebug-initial-mode''s property to setting the variable
117         `edebug-initial-mode'.
118         (top level): Create new binding C-x C-a C-m for
119         `edebug-set-initial-mode'.
121         doc/lispref/edebug.texi (Edebug Execution Modes): document
122         `edebug-set-initial-mode' and its new key binding.
123         (Edebug Options): Mention the new command in the pertinent place.
125         etc/NEWS: Write entry for this change.
127 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
129         Avoid non-ASCII decoding errors in Texinfo files
131         * doc/misc/tramp.texi:
132         * doc/lispref/strings.texi:
133         * doc/lispref/positions.texi:
134         * doc/lispref/help.texi:
135         * doc/lispref/functions.texi:
136         * doc/lispintro/emacs-lisp-intro.texi:
137         * doc/emacs/text.texi:
138         * doc/emacs/modes.texi:
139         * doc/emacs/mini.texi:
140         * doc/emacs/display.texi:
141         * doc/emacs/custom.texi:
142         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
143         Unicode characters and should be decoded as UTF-8.
144         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
145         apostrophe unnecessarily.
147 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
149         Merge from gnulib
151         This incorporates:
152         2015-09-25 c-ctype: rewrite to use inline functions
153         2015-09-24 maint: add coding cookies to non-ASCII sources
154         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
155         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
156         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
157         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
158         * lib/set-permissions.c:
159         Copy from gnulib.
161 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
163         Update publicsuffix.txt from upstream
165         * etc/publicsuffix.txt: Update from
166         https://publicsuffix.org/list/effective_tld_names.dat
167         dated 2015-09-24 17:29:21 UTC.
169 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
171         Prevent timers from messing up TTY menus
173         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
174         the TTY menu is open.  (Bug#21530)
176 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
178         No need to mention K&R C in c-mode intro
180 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
182         Fix recent bootstrap problems
184         * src/syntax.c (parse_sexp_propertize): Fix last fix.
185         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
186         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
188 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
190         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
192 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
194         Properly quote nested xml comments (Bug#6267) (Bug#20001)
196         * nxml-mode.el (nxml-comment-quote-nested): New function
197         (nxml-mode): Set comment-quote-nested-function
199 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
201         Allow major-modes full control over quoting nested comments
203         * newcomment.el (comment-quote-nested-function): New variable.
204         (comment-quote-nested-default): New function.
205         (comment-quote-nested): Use `comment-quote-nested-function'.
207 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
209         Prefer CALLN in a few more places
211         * src/macfont.m (macfont_set_family_cache):
212         * src/nsterm.m (append2):
213         * src/xterm.c (x_cr_export_frames):
214         Prefer CALLN to allocating the arg arrays by hand.
216 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
218         Adapt file-notify-test02-events test case
220         * test/automated/file-notify-tests.el (file-notify-test02-events):
221         Create a new watch for every test.
223 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
225         Continue gfilenotify.c implementation of missing parts
227         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
228         `gfile-add-watch' call.
229         (file-notify-rm-watch): Modify `file-notify-descriptors' only
230         after calling the low level functions.
232         * src/gfilenotify.c (dir_monitor_callback): Check, whether
233         event_type is expected.
234         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
235         (Fgfile_rm_watch): Fix typo.
236         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
238 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
240         * src/syntax.c: Handle spurious e_property_truncated flag
242         * src/syntax.c (parse_sexp_propertize): Handle spurious
243         e_property_truncated flag.
244         (update_syntax_table_forward): Remove invalid assertion.
246 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
248         Support ':relative-width' space display spec on text-mode terminals
250         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
251         space display spec on text-mode terminals, by calling
252         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the HAVE_WINDOW_SYSTEM
253         guards from the supporting code, as well as the test for a GUI frame.
255 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
257         Move let-when-compile to lisp-mode.el
259         This fixes the bootstrapping problem of `let-when-compile' using
260         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
262 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
264         Do not include authorization header in an HTTP redirect
266         * lisp/url/url-http.el (url-http-parse-headers): Do not
267         automatically include Authorization header in redirect.
268         (Bug#21350)
270 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
272         Clarify documentation of ':relative-width'
274         * doc/lispref/display.texi (Specified Space): Document that
275         ':relative-width' is only supported on GUI frames.
277 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
279         Fix 'current-column' in presence of :relative-width
281         * src/indent.c (check_display_width): Support ':relative-width'
282         in a display spec that specifies a stretch glyph.  (Bug#21533)
284 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
286         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
288         ... to conform better to CONTRIBUTE guidelines.
290 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
292         * prolog.el: Fix indentation of empty line
294         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
295         `empty-line-token' element.
296         (smie-indent-empty-line): New function.
297         (smie-indent-functions): Add it.
299         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro behavior
300         and use the new `empty-line-token' element (bug#21526).
301         (prolog-mode-variables): Fix comment-start-skip setting to match
302         comment-start.
304         * test/indent/prolog.prolog: Add nested indentation tests.
306         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
307         comment-start-skip not to misuse submatch 1.
309 2015-09-22  Alan Mackenzie  <acm@muc.de>
311         Make description of `edebug-initial-mode' user friendly.
313         Fixes debbugs#21365.
315         dec/lispref/edebug.texi (Edebug Execution Modes): Change the
316         desscription
317         of `edebug-initial-mode' from that of its implementation to that of its
318         visual effect and use.  Move the paragraph higher up.
320 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
322         lisp/progmodes/gud.el (gud-format-command): Fix last commit
324         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
325         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
327 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
329         Improve last commit to process.c
331 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
333         Implement gfile-valid-p
335         * lisp/filenotify.el (file-notify-callback): Fix typo.
336         (gfile-valid-p): Remove defalias.
338         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
339         the file or directory to be watched is deleted.
340         (Fgfile_add_watch): Make watch_object a triple.
341         (Fgfile_rm_watch): Check, whether watch is cancelled already.
342         (Fgfile_valid_p): New defun.
343         (syms_of_gfilenotify): Declare Sgfile_valid_p.
345 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
347         Remove callback-handled channels from Available set
349         * src/process.c (wait_reading_process_output): Remove channel from
350         Available set if it is handled by a callback, e.g., dbus or
351         inotify (bug#21313).
353 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
355         Use lunate epsilon for TeX \epsilon
357         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Add
358         \varepsilon using GREEK SMALL LETTER EPSILON, and change \epsilon to use
359         GREEK LUNATE EPSILON SYMBOL
361 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
363         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
365         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
366         rather than outermost paren (bug#21526).
368 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
370         Improve git diff hunk headers for .el, .texi
372         Problem reported by Alan Mackenzie in:
373         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
374         * .gitattributes (*.el, *.texi): New patterns.
375         * autogen.sh: Configure diff.elisp.xfuncname and
376         diff.texinfo.xfuncname if using Git.
378 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
380         Don't rely on defaults in decoding UTF-8 encoded Lisp files
382         * lisp/replace.el:
383         * lisp/textmodes/rst.el:
384         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
386 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
388         Clarify or replace a few \u escapes.
390         * doc/lispref/nonascii.texi (Character Properties)
391         More-detailed commentary for \u escapes.
392         * lisp/progmodes/python.el (python--prettify-symbols-alist):
393         * lisp/replace.el (query-replace-from-to-separator):
394         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
395         (rst-mode-syntax-table):
396         * lisp/whitespace.el (whitespace-display-mappings):
397         Prefer actual character to \u escape when this makes the code
398         easier to follow in the usual case where Unicode chars can be
399         displayed.
401 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
403         Pacify GCC -Wmaybe-uninitialized in xdisp.c
405         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
406         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
407         charpos.  The loop should always execute at least once anyway.
409 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
411         Signal error on invalid regexp
413         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries): Signal an
414         error when the user tries searching with a regexp matching the empty
415         string.
417 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
419         Another fix of file-notify-tests for w32notify
421         * test/automated/file-notify-tests.el (file-notify-test02-events):
422         Further adaptation for w32notify: reduce the number of expected
423         'changed' events.  (Bug#21435)
425 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
427         Adapt tests and manual for w32notify
429         * doc/lispref/os.texi (File Notifications): w32notify does not
430         send `attribute-changed' events.
432         * test/automated/file-notify-tests.el (file-notify--test-with-events):
433         Simplify parameters.  Adapt all callees.
434         (file-notify-test02-events): w32notify does not send
435         `attribute-changed' events.
436         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
437         Do not skip in case of w32notify.  Simply ignore this part of the test.
439 2015-09-21  Dima Kogan  <dima@secretsauce.net>
441         Fix setting breakpoints when remote-debugging
443         * lisp/progmodes/gud.el (gud-format-command): Send localized file
444         names to the debugger running on the remote.  (Bug#13304)
446 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
448         Better docstring and parameter name for seq-find
450         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
451         the parameter `sentinel' to `default'.
453         * doc/lispref/sequences.texi (Sequence Functions): Update the
454           documentation for `seq-find' accordingly.
456 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
458         Avoid infinite recursion while displaying box face
460         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
461         the previous string/buffer character position under bidi
462         iteration.  (Bug#21428)
464 2015-09-21  Anders Lindgren  <andlind@gmail.com>
466         Keep upper edge unchanged when changing size of NS frame (Bug#21415)
468         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
469         (Bug#21415).
471 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
473         Subject: * lisp/progmodes/prolog.el: Improve handling of if/then/else
475         (prolog-smie-rules): Accomodate standard if/then/else special indentation.
476         (prolog-mode): Add . to electric-indent-chars.
477         (prolog-electric--if-then-else): Re-indent the line before adding space
478         after the new char (bug#21526).
480 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
482         Add prettify symbols to python-mode
484         lisp/progmodes/python.el (python-prettify-symbols-alist): New variable
485         lisp/progmodes/python.el (python-mode): Use it
487 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
489         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete
491 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
493         (compilation-error-regexp-alist-alist): Tone down guile-file
495         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
496         Make guile-file a bit less enthusiastic (bug#21496).
498 2015-09-20  Drew Csillag  <drew@thecsillags.com>
500         * m4-mode.el (m4-font-lock-keywords): Fix m4_* highlighting
502         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
503         of commands when they have a "m4_" prefix.
505 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
507         '.' -> `.' in doc string
509         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
510         individual chars with grave quotes instead of straight quotes, as
511         this works better when they are translated to curved quotes.
513 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
515         Improve file notifications, especially for Tramp
517         * doc/lispref/files.texi (Magic File Names):
518         Mention `file-notify-valid-p'.
520         * doc/lispref/os.texi (File Notifications):
521         Describe `file-notify-valid-p'.
523         * etc/NEWS: Add `file-notify-valid-p'.
525         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
526         Improve implementation.
527         (tramp-gvfs-monitor-file-process-filter): Rename from
528         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
529         process if appropriate.
531         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
532         Improve implementation.
533         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
534         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
535         if appropriate.
536         (tramp-sh-inotifywait-process-filter): Rename from
537         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
538         appropriate.
540         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
541         Use `delete-process'
542         (tramp-handle-file-notify-valid-p): Check also, that file or
543         directory to be watched still exists.
545         * test/automated/file-notify-tests.el (file-notify--test-timeout):
546         New defun.  Use it at all places a timeout is needed.
547         (file-notify--test-cleanup): Delete directories recursively.
548         Cleanup also Tramp connections.
549         (file-notify-test02-events): Add tests for `attribute-change'.
550         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
551         Add tests for `file-notify-rm-watch'.
553 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
555         Use %s to format strings instead of splicing them
557         If FOO might contain quotes that are part of a file or variable
558         name, the quotes should not be translated when showing FOO’s name
559         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
560         is not quite right, as it would translate FOO’s quotes.
561         Change it to (message "%s: bar" FOO) instead.
562         * lisp/allout.el (allout-process-exposed):
563         * lisp/calc/calc-ext.el (calc-do-prefix-help):
564         * lisp/calc/calc-store.el (calc-store-into):
565         * lisp/calendar/todo-mode.el (todo-category-completions):
566         * lisp/cedet/semantic/complete.el (semantic-completion-message):
567         * lisp/org/ob-latex.el (convert-pdf):
568         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
569         * lisp/org/ox-latex.el (org-latex-compile):
570         * lisp/org/ox-man.el (org-man-compile):
571         * lisp/org/ox-odt.el (org-odt--export-wrap):
572         * lisp/org/ox-texinfo.el (org-texinfo-compile):
573         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
574         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
575         (verilog-signals-combine-bus, verilog-read-defines)
576         (verilog-getopt-file, verilog-expand-dirnames)
577         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
578         * lisp/term/ns-win.el (ns-spi-service-call):
579         Use %s to avoid translating quotes of file names etc. in diagnostics.
581 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
583         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
585         (js-mode): Don't set syntax-begin-function.
587 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
589         Don't assume syntax-begin-function is a symbol.
591         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
592         syntax-begin-function is a symbol.
594 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
596         Improve documentation of 'run-at-time'
597         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
598         In particular, don't refer to 'diary-entry-time', because it is
599         unavailable until diary-lib is loaded.  Also, refer to
600         'timer-duration-words', not 'timer-duration', as the latter's doc
601         string says nothing about the accepted strings.
603 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
605         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
607 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
609         Repair pdbtrack remote file tracking
610         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
611         Rectify pdbtrack so it follows transitions from one remote source
612         file to the next.
614 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
616         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting
618 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
620         Adapt vc-src to the old-new vc-checkin API
621         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
622         additional optional parameter.
624 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
626         Add overflow module to CSS property list
627         * lisp/textmodes/css-mode.el (css-property-ids): Add properties from CSS
628         Overflow Module Level 3.
630 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
632         Fix documentation of "C-u C-x v v"
633         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
634         documentation of "C-u C-x v v" match what the code does.
636         Resurrect the ability to specify a revision in vc-next-action
637         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
638         * lisp/vc/vc-dav.el (vc-dav-checkin):
639         * lisp/vc/vc-git.el (vc-git-checkin):
640         * lisp/vc/vc-hg.el (vc-hg-checkin):
641         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
642         an additional optional argument, the revision to checkin.
643         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
644         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
645         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
646         a revision to checkin.
647         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
648         revision when checking in files.
649         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
650         for the details.
652 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
654         Fix checkdoc warnings.
655         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
656         (verilog-decls-princ, verilog-modport-princ)
657         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
659 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
661         Fix the routine for help on Calc's prefixes.
662         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
663         (calc-do-prefix-help): Use `read-char' to determine the next Calc
664         command.
666 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
668         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove
669         (font-lock-fontify-block): Don't let-bind it.
670         (font-lock-compile-keywords): Don't use it.
671         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
672         start one slot earlier, instead.
673         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
674         Don't declare.
675         (syntax-ppss): Don't use it either.
676         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
677         from docstring.
678         * doc/emacs/display.texi (Font Lock): Don't mention
679         font-lock-beginning-of-syntax-function.
680         * doc/lispref/modes.texi (Font Lock Basics): Update description of
681         font-lock-defaults.
682         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
683         * lisp/loadhist.el (unload-feature-special-hooks):
684         Remove font-lock-beginning-of-syntax-function.
685         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
686         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
687         font-lock-beginning-of-syntax-function.
689 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
691         Backslash cleanup in Elisp source files
692         This patch should not change behavior.  It typically omits backslashes
693         where they are redundant (e.g., in the string literal "^\$").
694         In a few places, insert backslashes where they make regular
695         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
696         "^\\*", which has the same effect as a regular expression.
697         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
698         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
699         RCS IDs, as that makes it clearer that the backslash is intended.
701         Some more minor backslash fixes
702         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
703         * test/automated/info-xref.el (info-xref-test-write-file):
704         Double backslashes in strings.
706         Fix several backslash typos in Elisp strings
707         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
708         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
709         (todo-reset-done-string, todo-reset-comment-string)
710         (todo-reset-highlight-item):
711         * lisp/erc/erc-networks.el (erc-networks-alist):
712         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
713         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
714         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
715         (nntp-telnet-shell-prompt):
716         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
717         * lisp/image-dired.el (image-dired-rotate-original):
718         (image-dired-get-exif-file-name):
719         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
720         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
721         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
722         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
723         * lisp/net/shr-color.el (shr-color->hexadecimal):
724         * lisp/org/org-bibtex.el (org-bibtex-fields):
725         * lisp/org/org-docview.el (org-docview-export):
726         * lisp/org/org-entities.el (org-entities):
727         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
728         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
729         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
730         (ebnf-style-database):
731         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
732         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
733         * lisp/progmodes/sql.el (sql-product-alist):
734         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
735         (verilog-error-font-lock-keywords)
736         (verilog-assignment-operator-re):
737         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
738         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
739         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
740         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
741         For example, to get the regular expression ‘\.’ use the string
742         literal "\\.", not "\." (which is equivalent to ".").
743         * lisp/emulation/viper-util.el (viper-glob-unix-files):
744         Remove stray ‘\j’ from string.
745         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
746         (nntp-telnet-shell-prompt):
747         Treat > like $ when matching a shell prompt.
748         * lisp/progmodes/make-mode.el (makefile-browse):
749         Properly quote a diagnostic.
751         Fix minor quoting problems in diagnostics
752         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
753         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
754         Follow text-quoting-style in diagnostic, and quote a file name.
756 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
758         * doc/lispref/frames.texi (Cursor Parameters): Document 'x-stretch-cursor'.
760 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
762         Omit unnecessary \ before paren in C docstrings
763         Although \( is needed in docstrings in Elisp code, it is not needed in
764         docstrings in C code, since C function definitiions do not start with
765         a parenthesis.  The backslashes made the docstrings a bit harder to
766         read and to format in columns.  Also, some C docstrings had ( in
767         column 1 and this did not appear to be causing any problems.  So,
768         simplify C docstrings by replacing \( with ( and \) with ).
770         A few more minor quoting fixes in a script and a text file
772         Minor quoting fixes in scripts and doc
773         Prefer straight quotes in random script files, as they are not converted.
774         Prefer grave quotes in a couple of places in the manual that were missed
775         earlier, as these quotes are converted.
777         Minor backslash fixes in manuals and scripts
778         * Makefile.in (install-arch-indep):
779         * admin/charsets/compact.awk:
780         * admin/charsets/gb180302.awk (gb_to_index):
781         * admin/charsets/gb180304.awk (gb_to_index):
782         Avoid undefined behavior in Awk regular expression backslashes.
783         * doc/misc/efaq.texi (Matching parentheses):
784         Omit unnecessary backslashes.
785         * doc/misc/gnus-faq.texi (FAQ 5-8):
786         Avoid undefined behavior in suggested sed backslash usage.
788         Add -Wswitch to --enable-gcc-warnings
789         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
790         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
791         * lib-src/etags.c (main, consider_token, C_entries):
792         * src/coding.c (encode_invocation_designation):
793         * src/data.c (Ftype_of):
794         * src/eval.c (Fdefvaralias, default_toplevel_binding)
795         (Fbacktrace__locals, mark_specpdl):
796         * src/lisp.h (record_xmalloc):
797         * src/syntax.c (scan_lists, scan_sexps_forward):
798         * src/window.c (window_relative_x_coord):
799         * src/xdisp.c (push_it, pop_it):
800         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
801         Error out or do nothing (as appropriate) if a switch statement
802         with an enum value does not cover all of the enum.
803         * src/dispextern.h (struct iterator_stack_entry.u.comp):
804         Remove unused member discovered by using -Wswitch.
805         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
806         * src/vm-limit.c (check_memory_limits):
807         Simplify warning-diagnostic computation by using a table.
809         etags ‘fatal’ function is now printf-like
810         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
811         Also, now static; not clear why it needed to be extern.
812         (verror): New function, with most of the old contents of ‘error’.
813         (fatal, error): Use it.
815 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
817         More adaptations in file-notify-tests.el
818         * test/automated/file-notify-tests.el
819         (file-notify-test05-dir-validity): Skip for w32notify in
820         batch-mode.  (Bug#21432)
822 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
824         Adapt test in file-notify-tests.el
825         * test/automated/file-notify-tests.el
826         (file-notify-test04-file-validity): Skip for w32notify in
827         batch-mode.  Add test lost last commit.
829 2015-09-16  Dima Kogan  <dima@secretsauce.net>
831         winner no longer holds on to dead frames
832         * lisp/winner.el (winner-change-fun): Cull dead frames.
833         This prevents a potentially massive memory leak.  See:
834         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
836 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
838         Use common report_file_notify_error function
839         * src/fileio.c (report_file_notify_error): New function.
840         * src/inotify.c (report_inotify_error): Remove function.
841         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
842         (Finotify_rm_watch): Use report_file_notify_error.
843         * src/lisp.h (report_file_notify_error): Declare external function.
844         * src/w32notify.c (report_w32notify_error): Remove function.
845         (Fw32notify_add_watch, Fw32notify_rm_watch):
846         Use report_file_notify_error.
848 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
850         Fix documentation.
851         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
852         the documentation of the root mean square.
854 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
856         Remove tool_bar_redisplayed_once and associated code.
857         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
858         * src/frame.c (make_frame, x_set_font): Remove initialization of
859         f->tool_bar_redisplayed_once.
860         * src/w32fns.c (x_change_tool_bar_height):
861         * src/xfns.c (x_change_tool_bar_height): Don't check for
862         f->tool_bar_redisplayed_once.
863         * src/xdisp.c (redisplay_internal): Remove handling of
864         f->tool_bar_redisplayed_once.
866 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
868         Restore some of the quoting in the manuals
869         * doc/lispref/windows.texi (Coordinates and Windows)
870         (Coordinates and Windows):
871         * doc/lispref/variables.texi (Lexical Binding)
872         (File Local Variables):
873         * doc/lispref/text.texi (Format Properties):
874         * doc/lispref/symbols.texi (Symbol Components):
875         * doc/lispref/strings.texi (Creating Strings):
876         * doc/lispref/sequences.texi (Sequence Functions):
877         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
878         (Search and Replace):
879         * doc/lispref/processes.texi (Bindat Spec):
880         * doc/lispref/os.texi (Idle Timers):
881         * doc/lispref/objects.texi (Basic Char Syntax):
882         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
883         * doc/lispref/nonascii.texi (Character Properties):
884         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
885         (Mode Line Variables):
886         * doc/lispref/minibuf.texi (Text from Minibuffer):
887         * doc/lispref/loading.texi (Autoload):
888         * doc/lispref/keymaps.texi (Controlling Active Maps):
889         * doc/lispref/frames.texi (Frame Layout, Size and Position)
890         (Size Parameters, Implied Frame Resizing):
891         * doc/lispref/files.texi (Changing Files, Magic File Names):
892         * doc/lispref/eval.texi (Self-Evaluating Forms):
893         * doc/lispref/display.texi (Progress, Abstract Display)
894         (Abstract Display Example, Bidirectional Display):
895         * doc/lispref/commands.texi (Event Mod):
896         * doc/emacs/windows.texi (Displaying Buffers):
897         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
898         * doc/emacs/text.texi (Enriched Text):
899         * doc/emacs/programs.texi (MixedCase Words):
900         * doc/emacs/picture-xtra.texi (Insert in Picture)
901         (Tabs in Picture):
902         * doc/emacs/misc.texi (Emacs Server, Printing):
903         * doc/emacs/mini.texi (Minibuffer History):
904         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
905         (Pulling / Pushing):
906         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
907         * doc/emacs/help.texi (Help, Help Echo):
908         * doc/emacs/glossary.texi (Glossary):
909         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
910         (Frame Commands):
911         * doc/emacs/files.texi (Reverting, Saving, Directories):
912         * doc/emacs/entering.texi (Exiting):
913         * doc/emacs/emacs.texi (Top):
914         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
915         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
916         appropriate or replace quoting with @dfn.
917         * doc/misc/ediff.texi (Window and Frame Configuration):
918         * doc/lispref/processes.texi (Network Feature Testing):
919         * doc/lispref/display.texi (Display Margins): Quote the phrase
920         after "a.k.a." where appropriate.
922 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
924         Clarify reftex-extra-bindings docs.
925         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
926         * doc/misc/reftex.texi (Key Bindings): Document that the variable
927         only has an effect at load-time.
929 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
931         Fix search argument in ‘lisp--el-match-keyword’ (Bug#21492) (Bug#21493)
932         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
933         search argument.  (Bug#21492) (Bug#21493)
935 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
937         Add pretty symbols for \qquad and \varrho.
938         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Add pretty
939         symbols for \qquad and \varrho.
941 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
943         Add new functions for the root mean square of a (Calc) vector
944         * lisp/calc/calc-stats.el (calcFunc-rms, calc-vector-rms):
945         New functions.
946         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
947         `calc-vector-rms', add autoloads for `calc-vector-rms' and
948         `calcFunc-rms'.
949         * lisp/calc/calc-map.el (calc-u-oper-keys):  Add entry for
950         `calcFunc-rms'.
951         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
952         `calc-vector-rms'.
953         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
954         command.
956 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
958         Add monotone EDE generic project
959         * lisp/cedet/ede/generic.el (ede-enable-generic-projects): Add monotone
960         generic project.
962         Revert premature commit
963         * doc/lispref/files.texi: Revert premature commit of change to
964         file-name-all-completions.
966         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
967         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
968         with cl-generic defaults.
969         (elisp--xref-find-references): Add doc string.
970         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
971         tests to find bug.
973         Fix bugs in eieio-oref-default related to class symbols
974         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
975         (eieio-oref-default): Handle class properly.
977 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
979         Quote “fullboth” when defining it
980         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
981         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
983 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
985         Minor doc fix in emacs/ack.texi
986         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
987         first argument.
989 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
991         Adapt tests in auto-revert-tests.el
992         * test/automated/auto-revert-tests.el (auto-revert--timeout):
993         Make it a defconst.
994         (auto-revert--wait-for-revert): New defun.
995         (auto-revert-test00-auto-revert-mode)
996         (auto-revert-test01-auto-revert-tail-mode)
997         (auto-revert-test02-auto-revert-mode-dired): Use it.
999 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
1001         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const
1002         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
1003         (cl-lib-fdefs): Add defgeneric.
1004         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
1005         (eieio-kw, cl-lib-kw, el-kw): Remove.
1007 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
1009         Quote less in manuals
1010         The manuals often used quotes ``...'' when it is better to use @dfn or
1011         @code or capitalized words or no quoting at all.  For example, there is
1012         no need for the `` and '' in “if a variable has one effect for
1013         @code{nil} values and another effect for ``non-@code{nil}'' values”.
1014         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
1015         unnecessary quoting like this, and to use @dfn etc. instead when called
1016         for (Bug#21472).
1018 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
1020         lisp/custom.el (load-theme): Only compute hash when needed.
1022 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
1024         Pacify --enable-gcc-warnings
1025         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
1027 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
1029         Improve error reports in inotify.c
1030         * src/inotify.c (report_inotify_error): New function.  Clone of
1031         report_w32notify_error.
1032         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
1033         (Finotify_rm_watch): Use it.
1035 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
1037         Fix the file-notify tests for watch validation on w32
1038         * test/automated/file-notify-tests.el
1039         (file-notify-test04-file-validity): Move the directory deletion
1040         out of the file-notify--test-with-events macro.
1041         (file-notify-test04-file-validity)
1042         (file-notify-test05-dir-validity): Enlarge the timeout of
1043         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
1045 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
1047         Use OPEN BOX instead of space for \quad.
1048         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
1049         character for \quad instead of a space.
1051 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
1053         Add missing *.pbm images
1054         * etc/images/connect.pbm: New file.
1055         * etc/images/custom/down-pushed.pbm: New file.
1056         * etc/images/custom/down.pbm: New file.
1057         * etc/images/custom/right-pushed.pbm: New file.
1058         * etc/images/custom/right.pbm: New file.
1059         * etc/images/describe.pbm: New file.
1060         * etc/images/disconnect.pbm: New file.
1061         * etc/images/ezimage/bits.pbm: New file.
1062         * etc/images/ezimage/bitsbang.pbm: New file.
1063         * etc/images/ezimage/box-minus.pbm: New file.
1064         * etc/images/ezimage/box-plus.pbm: New file.
1065         * etc/images/ezimage/box.pbm: New file.
1066         * etc/images/ezimage/checkmark.pbm: New file.
1067         * etc/images/ezimage/dir-minus.pbm: New file.
1068         * etc/images/ezimage/dir-plus.pbm: New file.
1069         * etc/images/ezimage/dir.pbm: New file.
1070         * etc/images/ezimage/doc-minus.pbm: New file.
1071         * etc/images/ezimage/doc-plus.pbm: New file.
1072         * etc/images/ezimage/doc.pbm: New file.
1073         * etc/images/ezimage/info.pbm: New file.
1074         * etc/images/ezimage/key.pbm: New file.
1075         * etc/images/ezimage/label.pbm: New file.
1076         * etc/images/ezimage/lock.pbm: New file.
1077         * etc/images/ezimage/mail.pbm: New file.
1078         * etc/images/ezimage/page-minus.pbm: New file.
1079         * etc/images/ezimage/page-plus.pbm: New file.
1080         * etc/images/ezimage/page.pbm: New file.
1081         * etc/images/ezimage/tag-gt.pbm: New file.
1082         * etc/images/ezimage/tag-minus.pbm: New file.
1083         * etc/images/ezimage/tag-plus.pbm: New file.
1084         * etc/images/ezimage/tag-type.pbm: New file.
1085         * etc/images/ezimage/tag-v.pbm: New file.
1086         * etc/images/ezimage/tag.pbm: New file.
1087         * etc/images/ezimage/unlock.pbm: New file.
1088         * etc/images/gnus/important.pbm: New file.
1089         * etc/images/gnus/mail-send.pbm: New file.
1090         * etc/images/gnus/receipt.pbm: New file.
1091         * etc/images/gnus/toggle-subscription.pbm: New file.
1092         * etc/images/gnus/unimportant.pbm: New file.
1093         * etc/images/gud/all.pbm: New file.
1094         * etc/images/gud/rcont.pbm: New file.
1095         * etc/images/gud/recstart.pbm: New file.
1096         * etc/images/gud/recstop.pbm: New file.
1097         * etc/images/gud/rfinish.pbm: New file.
1098         * etc/images/gud/rnext.pbm: New file.
1099         * etc/images/gud/rnexti.pbm: New file.
1100         * etc/images/gud/rstep.pbm: New file.
1101         * etc/images/gud/rstepi.pbm: New file.
1102         * etc/images/gud/thread.pbm: New file.
1103         * etc/images/lock-broken.pbm: New file.
1104         * etc/images/lock-ok.pbm: New file.
1105         * etc/images/lock.pbm: New file.
1106         * etc/images/mail/copy.pbm: New file.
1107         * etc/images/mail/forward.pbm: New file.
1108         * etc/images/mail/not-spam.pbm: New file.
1109         * etc/images/mail/outbox.pbm: New file.
1110         * etc/images/mail/preview.pbm: New file.
1111         * etc/images/mail/save-draft.pbm: New file.
1112         * etc/images/mh-logo.pbm: New file.
1113         * etc/images/mpc/add.pbm: New file.
1114         * etc/images/mpc/ffwd.pbm: New file.
1115         * etc/images/mpc/next.pbm: New file.
1116         * etc/images/mpc/pause.pbm: New file.
1117         * etc/images/mpc/play.pbm: New file.
1118         * etc/images/mpc/prev.pbm: New file.
1119         * etc/images/mpc/rewind.pbm: New file.
1120         * etc/images/mpc/stop.pbm: New file.
1121         * etc/images/redo.pbm: New file.
1122         * etc/images/smilies/braindamaged.pbm: New file.
1123         * etc/images/smilies/cry.pbm: New file.
1124         * etc/images/smilies/dead.pbm: New file.
1125         * etc/images/smilies/evil.pbm: New file.
1126         * etc/images/smilies/forced.pbm: New file.
1127         * etc/images/smilies/grin.pbm: New file.
1128         * etc/images/smilies/indifferent.pbm: New file.
1129         * etc/images/sort-ascending.pbm: New file.
1130         * etc/images/sort-column-ascending.pbm: New file.
1131         * etc/images/sort-criteria.pbm: New file.
1132         * etc/images/sort-descending.pbm: New file.
1133         * etc/images/sort-row-ascending.pbm: New file.
1134         * etc/images/unchecked.pbm: New file.
1135         * etc/images/zoom-in.pbm: New file.
1136         * etc/images/README: Update instructions for PBM files.
1138         Add separator.pbm tool-bar image
1139         * etc/images/separator.pbm: New file.  Having it avoids the side
1140         effect of changing the tool-bar height when the default font's size
1141         changes and XPM image support is not available, due to the SPC
1142         characters that are left in the Lisp string used to display the tool
1143         bar, because there are no images to display instead of those SPC
1144         characters.
1146         Make show-paren-match face visible on mono-color displays
1147         * lisp/faces.el (show-paren-match): Use the underline face for
1148         mono-color displays.  (Bug#21481)
1150 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
1152         Don’t double-encode non-ASCII mail clipboard
1153         * lisp/mail/mailclient.el (mailclient-send-it):
1154         Also fix the case when mailclient-place-body-on-clipboard-flag
1155         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
1157 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
1159         Adapt file-notify-tests.el test cases
1160         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
1161         * src/inotify.c (Finotify_valid_p): Adapt docstring.
1162         * test/automated/file-notify-tests.el ()
1163         (file-notify-test03-autorevert)
1164         (file-notify-test04-file-validity)
1165         (file-notify-test04-file-validity-remote)
1166         (file-notify-test05-dir-validity)
1167         (file-notify-test05-dir-validity-remote): Adapt docstring.
1168         (file-notify-test04-file-validity): Let events arrive before
1169         calling final `file-notify-valid-p'.  Do not ignore errors.
1170         (file-notify-test05-dir-validity): Do not manipulate
1171         `temporary-file-directory', it isn't necessary.  Let events arrive
1172         before calling final `file-notify-valid-p'.  Do not ignore errors.
1174 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
1176         Don’t double-encode non-ASCII for mail client
1177         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
1178         Use RFC 6068’s list of unreserved characters.
1179         (mailclient-send-it): When encoding the body as a URL,
1180         first decode it as per Content-Type: and Content-Transfer-Encoding:,
1181         as URLs must use percent-encoded UTF-8 (Bug#21471).
1182         * doc/misc/url.texi (mailto): Update RFC number.
1184 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
1186         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
1188 2015-09-14  Alan Mackenzie  <acm@muc.de>
1190         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs.
1191         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
1192         `cadr/car'.
1194 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
1196         Clarify documentation of char-table extra slots
1197         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
1198         slot numbers are zero-based.  (Bug#21467)
1200 2015-09-14  Alan Mackenzie  <acm@muc.de>
1202         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
1203         Fixes debbugs#21449.
1204         lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
1205         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
1206         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
1207         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
1208         Insert "\\|\\\\." into regexps which match symbols.
1210 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
1212         Improve the doc string of w32notify-valid-p
1213         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
1214         that removing a watch makes its object invalid.
1216 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
1218         Fix tests for file-notify-valid-p.
1219         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
1220         Use delete-directory to delete file-notify--test-tmpfile if it is
1221         a directory.  Likewise for file-notify--test-tmpfile1.
1222         (file-notify-test04-file-validity)
1223         (file-notify-test05-dir-validity): Delete the parent directory of
1224         the test.  Ignore errors when cleaning up after the test.
1226 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
1228         Report file-notify-error in w32notify.c
1229         * src/w32notify.c (report_w32notify_error): New function.
1230         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
1231         errors, instead of calling report_file_error.  (Bug#21432)
1233         Implement w32notify-valid-p
1234         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
1235         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
1236         'identity'.
1238 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
1240         Test file-notify-valid-p.
1241         * test/automated/file-notify-tests.el
1242         (file-notify-test04-file-validity, file-notify-test05-dir-validity): New
1243         tests.
1245 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
1247         Fix markup in ELisp manual
1248         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
1249         of the 'alpha' parameter value.  (Bug#21470)
1251 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
1253         Introduce `file-notify-valid-p'
1254         * lisp/filenotify.el (file-notify-valid-p): New defun.
1255         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
1256         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
1257         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
1258         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
1259         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
1260         <file-notify-valid-p>: Add handler.
1261         * lisp/net/tramp.el (tramp-file-name-for-operation):
1262         Add `file-notify-valid-p'.
1263         (tramp-handle-file-notify-valid-p): New defun.
1264         * src/inotify.c (Finotify_valid_p): New defun.
1265         (syms_of_inotify): Declare Sinotify_valid_p.
1267 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
1269         Port Unicode char detection to FreeBSD+svgalib
1270         Problem reported by Ashish SHUKLA in:
1271         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
1272         * configure.ac: Check for struct unipair.unicode instead of for
1273         <linux/kd.h>, since that’s more specific to what the code actually needs.
1274         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
1276         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
1278 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
1280         Fix vertical cursor motion across overlay strings with newlines
1281         * src/indent.c (Fvertical_motion): Don't leave point in the middle
1282         of an overlay string with newlines, as that will position the
1283         cursor after the string at whatever column is there.  (Bug#21468)
1285 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
1287         Fix tests in file-notify-tests.el
1288         * test/automated/file-notify-tests.el: Remove Tramp declarations.
1289         (file-notify-test00-availability): Print remote command w/o Tramp
1290         internal functions.
1291         (file-notify-test02-events, file-notify-test02-events-remote):
1292         Adapt docstring.
1293         (file-notify-test03-autorevert): Use `format-message' when
1294         inspecting *Messages* buffer.
1296 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
1298         Bind inhibit-modification-hooks rather than a/b-c-f
1299         * lisp/wid-edit.el (widget-editable-list-insert-before)
1300         (widget-editable-list-delete-at):
1301         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
1302         (cperl-font-lock-unfontify-region-function):
1303         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
1304         * lisp/obsolete/longlines.el (longlines-mode):
1305         * lisp/obsolete/fast-lock.el (save-buffer-state):
1306         * lisp/mouse.el (mouse-save-then-kill-delete-region):
1307         * lisp/gnus/message.el (message-hide-headers):
1308         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
1309         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
1310         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
1311         than after/before-change-functions to nil.
1313 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
1315         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
1316         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
1317         the buffers, even if the forced redisplay is interrupted.
1319         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
1321         Merge syntax-propertize--done and parse-sexp-propertize-done
1322         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
1323         (syntax-propertize): Set syntax-propertize--done even if
1324         syntax-propertize-function is nil.  Avoid recursive invocations.
1325         (syntax-propertize-chunks): New var.
1326         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
1327         Simplify.
1328         (parse-sexp-propertize-function): Don't set any more.
1329         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
1330         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
1331         Call Qinternal__syntax_propertize instead of
1332         Vparse_sexp_propertize_function.  Truncate e_property if needed.
1333         (update_syntax_table_forward): Streamline.
1334         (syms_of_syntax): Define Qinternal__syntax_propertize.
1335         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
1337 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
1339         Prefer straight quoting in some text files
1340         Mostly this just changes ` to ' in static text.  Some exceptions:
1341         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
1342         typically does that now.
1343         * admin/quick-install-emacs (TRY, top level):
1344         Use straight quoting in diagnostics.
1345         * src/README: Fix working-directory confusion.
1347         * CONTRIBUTE: Move send-email here from git-workflow.
1349 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
1351         Improve file notifications in Tramp
1352         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
1353         Set proper events to watch for.
1354         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
1355         watched events.
1357 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
1359         Fix NS build with --enable-checking='glyphs'
1360         * src/nsfns.m (unwind_create_frame): Make the preprocessor
1361         conditionals for referencing 'dpyinfo' consistent throughout the
1362         function.  (Bug#21426)
1364 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
1366         Add seq-find
1367         This function is similar to `seq-some' but returns the found element.
1368         In the cases where nil can be the found element, a sentinel optional
1369         argument can be provided to avoid ambiguities.
1370         * lisp/emacs-lisp/seq.el (seq-find): New function.
1371         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
1372         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
1373         seq-find.
1375 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
1377         Document file-notify--test-with-events.
1378         * test/automated/file-notify-tests.el (file-notify--test-with-events):
1379         Add docstring.
1381 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
1383         Report used native library in file-notify-tests.el
1384         * test/automated/file-notify-tests.el
1385         (tramp-get-remote-gvfs-monitor-dir)
1386         (tramp-get-remote-inotifywait): Declare them.
1387         (file-notify-test00-availability): Print used native library.
1389 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
1391         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
1392         (mpc-file-local-copy): Check for absolute path.  Check more config
1393         locations.
1395 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
1397         Improve documentation of categories
1398         * doc/lispref/syntax.texi (Categories): Clarify the example of
1399         using define-category and modify-category-entry.  (Bug#21448)
1401 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
1403         Revert some stray curved quotes I missed earlier
1404         Problem reported by David Kastrup in:
1405         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
1406         * lisp/international/mule-cmds.el (leim-list-header):
1407         Use format-message with an ASCII-only format.
1409         Prefer NUMBERP to spelling it out
1410         * src/editfns.c (styled_format):
1411         * src/frame.h (NUMVAL):
1412         * src/image.c (parse_image_spec):
1413         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
1414         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
1415         * src/process.c (Fsignal_process):
1416         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
1417         * src/xfaces.c (check_lface_attrs):
1418         * src/xselect.c (x_fill_property_data, x_send_client_event):
1419         Use NUMBERP rather than INTEGERP || FLOATP.
1421 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
1423         Improve file-notify-tests
1424         * test/automated/file-notify-tests.el: Use lexical-binding
1425         (file-notify--test-cleanup): New function.
1426         (file-notify-test00-availability, file-notify-test01-add-watch)
1427         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
1428         (file-notify--test-with-events): New macro.
1429         (file-notify-test02-events): Use it.
1431 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
1433         Add patch-sending instructions to git-workflow
1434         From a suggestion by Mitchel Humpherys in:
1435         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
1436         * admin/notes/git-workflow (Sending patches): New section.
1438         Port to GIFLIB 5.0.6 and later
1439         Problem reported by Mitchel Humpherys in:
1440         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
1441         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
1442         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
1443         (gif_load) [HAVE_GIF]: Use it.
1445 2015-09-10  Glenn Morris  <rgm@gnu.org>
1447         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
1449 2015-09-09  Glenn Morris  <rgm@gnu.org>
1451         * test/automated/file-notify-tests.el (file-notify-test02-events):
1452         Fix recent change.
1454 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
1456         Refix movemail GCC pacification
1457         Problem reported by Ken Brown in:
1458         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
1459         * lib-src/movemail.c (main): Fix previous change.
1461 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
1463         (time-to-seconds, time-less-p): Mark unused vars with underscore
1464         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
1465         Mark unused vars with underscore.
1467         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
1468         (parse_sexp_propertize): ...from here.
1470         * lisp/filenotify.el: Use lexical-binding
1471         (file-notify-add-watch): Avoid add-to-list.
1473 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
1475         Start checking event types in file-notify tests
1476         * test/automated/file-notify-tests.el (file-notify--test-events): New
1477         variable.
1478         (file-notify--test-event-handler): Append received event to
1479         file-notify--test-events for later analysis.
1480         (file-notify-test02-events): Assert that the expected notifications have
1481         arrived in the expected order.
1483 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
1485         Merge from gnulib and texinfo
1486         This incorporates:
1487         2015-08-03 Improve port of stdalign to C++11
1488         * lib/stdalign.in.h: Copy from gnulib.
1489         * doc/misc/texinfo.tex: Copy from texinfo.
1491 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
1493         Make syntax.c call syntax-propertize on demand
1494         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
1495         (parse-sexp-propertize-function): Use it.
1496         (syntax-propertize): Disable parse-sexp-propertize-function.
1497         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
1498         New functions.
1499         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
1500         `parse-sexp-propertize-function'.
1501         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
1502         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
1503         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
1504         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
1505         Don't assume `point' is set.
1507 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
1509         Fix indentation of an @example in ELisp manual
1510         * doc/lispref/syntax.texi (Categories): Untabify the example.
1511         (Bug#21448)
1513 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
1515         Define internal-char-font even if --without-x
1516         The function is used now even in non-graphical environments.
1517         Problem reported by Glenn Morris in:
1518         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
1519         * src/font.c (Finternal_char_font): Move here ...
1520         * src/fontset.c (Finternal_char_font): ... from here.
1522 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
1524         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers): Remove
1525         warning.
1527 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
1529         Fix display of complex local data types in GDB-MI
1530         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
1531         variable has no value, display "<complex data type>" as a
1532         placeholder, instead of a confusing "nil".  (Bug#21438)
1534 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
1536         Remove redundant redefinition of seq-drop-while from seq.el
1537         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
1539 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
1541         * lisp/emacs-lisp/package.el (package--ensure-init-file)
1542         More robust check for `package-initialize' calls in init file.
1543         This function accepts an optional argument, but calls passing
1544         an argument would not have been detected.
1546 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
1548         Port movemail to RHEL 6 with --enable-gcc-warnings
1549         * lib-src/movemail.c (main): Declare local only if needed.
1551         Port recent Linux console changes to RHEL 6
1552         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
1554         Improvements for curved quotes on Linux consule
1555         This should help Emacs work better out-of-the-box on Linux consoles,
1556         which have only limited support for displaying Unicode characters.
1557         Also, undo the recent change that caused text-quoting-style to
1558         affect quote display on terminals, so that the two features are
1559         independent.  See Alan Mackenzie in:
1560         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
1561         Finally, add a style parameter to startup--setup-quote-display,
1562         so that this function can also be invoked after startup, with
1563         different styles depending on user preference at the time.
1564         * configure.ac: Check for linux/kd.h header.
1565         * doc/emacs/display.texi (Text Display): Document quote display.
1566         * doc/lispref/display.texi (Active Display Table):
1567         * etc/NEWS:
1568         * lisp/startup.el (startup--setup-quote-display, command-line):
1569         text-quoting-style no longer affects quote display.
1570         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
1571         * lisp/international/mule-util.el (char-displayable-p):
1572         * lisp/startup.el (startup--setup-quote-display):
1573         On a text terminal supporting glyph codes, use the reported
1574         glyph codes instead of the terminal coding system, as this
1575         is more accurate on the Linux console.
1576         * lisp/startup.el (startup--setup-quote-display):
1577         New optional arg STYLE.
1578         * src/fontset.c (Finternal_char_font):
1579         Report glyph codes for a text terminal, if they are available.
1580         Currently this is supported only for the Linux console.
1581         * src/termhooks.h (struct terminal): New member glyph-code-table.
1582         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
1583         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
1584         (terminal_glyph_code): New function.
1586 2015-09-08  Juri Linkov  <juri@linkov.net>
1588         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
1589         underline.  (Bug#21433)
1591 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
1593         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
1595 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
1597         Fix double-reporting of rename events with inotify
1598         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
1599         of rename events with inotify (bug#21435).
1601 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
1603         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
1604         (tetris-mode-map): Use it.
1606 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
1608         Remove a few simple cases of global redisplay
1609         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
1610         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
1611         rather than returning a "resized_p" boolean.
1612         (redisplay_internal): Adjust call accordingly.
1613         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
1614         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
1615         tracking of this undesirable situation.
1617         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
1618         * src/process.c (status_notify): Only set the update_mode_line on the
1619         relevant buffers rather than setting it globally.
1621 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
1623         * lisp/electric.el (electric-quote-post-self-insert-function):
1624         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
1625         (electric-quote-mode): Activate everywhere in message-mode.
1627 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
1629         Go back to grave quoting in source-code docstrings etc.
1630         This reverts almost all my recent changes to use curved quotes
1631         in docstrings and/or strings used for error diagnostics.
1632         There are a few exceptions, e.g., Bahá’í proper names.
1633         * admin/unidata/unidata-gen.el (unidata-gen-table):
1634         * lisp/abbrev.el (expand-region-abbrevs):
1635         * lisp/align.el (align-region):
1636         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
1637         (outlineify-sticky):
1638         * lisp/apropos.el (apropos-library):
1639         * lisp/bookmark.el (bookmark-default-annotation-text):
1640         * lisp/button.el (button-category-symbol, button-put)
1641         (make-text-button):
1642         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
1643         * lisp/calc/calc-embed.el (calc-do-embedded):
1644         * lisp/calc/calc-ext.el (calc-user-function-list):
1645         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
1646         * lisp/calc/calc-help.el (calc-describe-key)
1647         (calc-describe-thing, calc-full-help):
1648         * lisp/calc/calc-lang.el (calc-c-language)
1649         (math-parse-fortran-vector-end, math-parse-tex-sum)
1650         (math-parse-eqn-matrix, math-parse-eqn-prime)
1651         (calc-yacas-language, calc-maxima-language, calc-giac-language)
1652         (math-read-giac-subscr, math-read-math-subscr)
1653         (math-read-big-rec, math-read-big-balance):
1654         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
1655         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
1656         (calc-auto-recompute):
1657         * lisp/calc/calc-prog.el (calc-fix-token-name)
1658         (calc-read-parse-table-part, calc-user-define-invocation)
1659         (math-do-arg-check):
1660         * lisp/calc/calc-store.el (calc-edit-variable):
1661         * lisp/calc/calc-units.el (math-build-units-table-buffer):
1662         * lisp/calc/calc-vec.el (math-read-brackets):
1663         * lisp/calc/calc-yank.el (calc-edit-mode):
1664         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
1665         * lisp/calendar/appt.el (appt-display-message):
1666         * lisp/calendar/diary-lib.el (diary-check-diary-file)
1667         (diary-mail-entries, diary-from-outlook):
1668         * lisp/calendar/icalendar.el (icalendar-export-region)
1669         (icalendar--convert-float-to-ical)
1670         (icalendar--convert-date-to-ical)
1671         (icalendar--convert-ical-to-diary)
1672         (icalendar--convert-recurring-to-diary)
1673         (icalendar--add-diary-entry):
1674         * lisp/calendar/time-date.el (format-seconds):
1675         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
1676         (timeclock-make-hours-explicit, timeclock-log-data):
1677         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
1678         (todo-item-mark, todo-check-format)
1679         (todo-insert-item--next-param, todo-edit-item--next-key)
1680         (todo-mode):
1681         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
1682         * lisp/cedet/mode-local.el (describe-mode-local-overload)
1683         (mode-local-print-binding, mode-local-describe-bindings-2):
1684         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
1685         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
1686         * lisp/cus-start.el (standard):
1687         * lisp/cus-theme.el (describe-theme-1):
1688         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
1689         (custom--sort-vars-1, load-theme):
1690         * lisp/descr-text.el (describe-text-properties-1, describe-char):
1691         * lisp/dired-x.el (dired-do-run-mail):
1692         * lisp/dired.el (dired-log):
1693         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
1694         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
1695         (ad-disable-advice, ad-remove-advice, ad-set-argument)
1696         (ad-set-arguments, ad--defalias-fset, ad-activate)
1697         (ad-deactivate):
1698         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
1699         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
1700         (byte-optimize-while, byte-optimize-apply):
1701         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
1702         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
1703         (byte-compile-log-file, byte-compile-format-warn)
1704         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
1705         (byte-compile-cl-warn)
1706         (byte-compile-warn-about-unresolved-functions)
1707         (byte-compile-file, byte-compile--declare-var)
1708         (byte-compile-file-form-defmumble, byte-compile-form)
1709         (byte-compile-normal-call, byte-compile-check-variable)
1710         (byte-compile-variable-ref, byte-compile-variable-set)
1711         (byte-compile-subr-wrong-args, byte-compile-setq-default)
1712         (byte-compile-negation-optimizer)
1713         (byte-compile-condition-case--old)
1714         (byte-compile-condition-case--new, byte-compile-save-excursion)
1715         (byte-compile-defvar, byte-compile-autoload)
1716         (byte-compile-lambda-form)
1717         (byte-compile-make-variable-buffer-local, display-call-tree)
1718         (batch-byte-compile):
1719         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
1720         * lisp/emacs-lisp/chart.el (chart-space-usage):
1721         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
1722         (check-declare-warn, check-declare-file)
1723         (check-declare-directory):
1724         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
1725         (checkdoc-message-text-engine):
1726         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
1727         (cl--describe-class):
1728         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
1729         (cl--generic-describe, cl-generic-generalizers):
1730         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
1731         (cl-symbol-macrolet):
1732         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
1733         * lisp/emacs-lisp/copyright.el (copyright)
1734         (copyright-update-directory):
1735         * lisp/emacs-lisp/edebug.el (edebug-read-list):
1736         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
1737         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
1738         (eieio-oref):
1739         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
1740         * lisp/emacs-lisp/eieio-speedbar.el:
1741         (eieio-speedbar-child-make-tag-lines)
1742         (eieio-speedbar-child-description):
1743         * lisp/emacs-lisp/eieio.el (defclass, change-class):
1744         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
1745         (elint-init-form, elint-check-defalias-form)
1746         (elint-check-let-form):
1747         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
1748         (ert-results-pop-to-backtrace-for-test-at-point)
1749         (ert-results-pop-to-messages-for-test-at-point)
1750         (ert-results-pop-to-should-forms-for-test-at-point)
1751         (ert-describe-test):
1752         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
1753         (find-function-library):
1754         * lisp/emacs-lisp/generator.el (iter-yield):
1755         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
1756         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
1757         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
1758         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
1759         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
1760         (advice--make, define-advice):
1761         * lisp/emacs-lisp/package-x.el (package-upload-file):
1762         * lisp/emacs-lisp/package.el (package-version-join)
1763         (package-disabled-p, package-activate-1, package-activate)
1764         (package--download-one-archive)
1765         (package--download-and-read-archives)
1766         (package-compute-transaction, package-install-from-archive)
1767         (package-install, package-install-selected-packages)
1768         (package-delete, package-autoremove, describe-package-1)
1769         (package-install-button-action, package-delete-button-action)
1770         (package-menu-hide-package, package-menu--list-to-prompt)
1771         (package-menu--perform-transaction)
1772         (package-menu--find-and-notify-upgrades):
1773         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
1774         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
1775         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
1776         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
1777         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
1778         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
1779         (rx-form):
1780         * lisp/emacs-lisp/smie.el (smie-config-save):
1781         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
1782         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
1783         * lisp/emacs-lisp/testcover.el (testcover-1value):
1784         * lisp/emacs-lisp/timer.el (timer-event-handler):
1785         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
1786         (viper-toggle-search-style, viper-kill-buffer)
1787         (viper-brac-function):
1788         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
1789         * lisp/env.el (setenv):
1790         * lisp/erc/erc-button.el (erc-nick-popup):
1791         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
1792         * lisp/eshell/em-dirs.el (eshell/cd):
1793         * lisp/eshell/em-glob.el (eshell-glob-regexp)
1794         (eshell-glob-entries):
1795         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
1796         * lisp/eshell/esh-opt.el (eshell-show-usage):
1797         * lisp/facemenu.el (facemenu-add-new-face)
1798         (facemenu-add-new-color):
1799         * lisp/faces.el (read-face-name, read-face-font, describe-face)
1800         (x-resolve-font-name):
1801         * lisp/files-x.el (modify-file-local-variable):
1802         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
1803         (set-auto-mode, hack-one-local-variable--obsolete)
1804         (dir-locals-set-directory-class, write-file, basic-save-buffer)
1805         (delete-directory, copy-directory, recover-session)
1806         (recover-session-finish, insert-directory)
1807         (file-modes-char-to-who, file-modes-symbolic-to-number)
1808         (move-file-to-trash):
1809         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
1810         * lisp/find-cmd.el (find-generic, find-to-string):
1811         * lisp/finder.el (finder-commentary):
1812         * lisp/font-lock.el (font-lock-fontify-buffer):
1813         * lisp/format.el (format-write-file, format-find-file)
1814         (format-insert-file):
1815         * lisp/frame.el (get-device-terminal, select-frame-by-name):
1816         * lisp/fringe.el (fringe--check-style):
1817         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
1818         * lisp/help-fns.el (help-fns--key-bindings)
1819         (help-fns--compiler-macro, help-fns--parent-mode)
1820         (help-fns--obsolete, help-fns--interactive-only)
1821         (describe-function-1, describe-variable):
1822         * lisp/help.el (describe-mode)
1823         (describe-minor-mode-from-indicator):
1824         * lisp/image.el (image-type):
1825         * lisp/international/ccl.el (ccl-dump):
1826         * lisp/international/fontset.el (x-must-resolve-font-name):
1827         * lisp/international/mule-cmds.el (prefer-coding-system)
1828         (select-safe-coding-system-interactively)
1829         (select-safe-coding-system, activate-input-method)
1830         (toggle-input-method, describe-current-input-method)
1831         (describe-language-environment):
1832         * lisp/international/mule-conf.el (code-offset):
1833         * lisp/international/mule-diag.el (describe-character-set)
1834         (list-input-methods-1):
1835         * lisp/mail/feedmail.el (feedmail-run-the-queue):
1836         * lisp/mouse.el (minor-mode-menu-from-indicator):
1837         * lisp/mpc.el (mpc-playlist-rename):
1838         * lisp/msb.el (msb--choose-menu):
1839         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
1840         * lisp/net/imap.el (imap-interactive-login):
1841         * lisp/net/mairix.el (mairix-widget-create-query):
1842         * lisp/net/newst-backend.el (newsticker--sentinel-work):
1843         * lisp/net/newst-treeview.el (newsticker--treeview-load):
1844         * lisp/net/rlogin.el (rlogin):
1845         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
1846         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
1847         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
1848         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
1849         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
1850         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
1851         (org-babel-goto-named-result):
1852         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
1853         * lisp/org/ob-ref.el (org-babel-ref-resolve):
1854         * lisp/org/org-agenda.el (org-agenda-prepare):
1855         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
1856         (org-clock-resolve):
1857         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
1858         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
1859         * lisp/org/org-habit.el (org-habit-parse-todo):
1860         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
1861         (org-mouse-context-menu):
1862         * lisp/org/org-table.el (org-table-edit-formulas):
1863         * lisp/org/ox.el (org-export-async-start):
1864         * lisp/proced.el (proced-log):
1865         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
1866         (ada-check-matching-start, ada-goto-matching-start):
1867         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
1868         * lisp/progmodes/ada-xref.el (ada-find-executable):
1869         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
1870         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
1871         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
1872         (flymake-start-syntax-check-process):
1873         * lisp/progmodes/python.el (python-shell-get-process-or-error)
1874         (python-define-auxiliary-skeleton):
1875         * lisp/progmodes/sql.el (sql-comint):
1876         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
1877         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
1878         * lisp/recentf.el (recentf-open-files):
1879         * lisp/replace.el (query-replace-read-from)
1880         (occur-after-change-function, occur-1):
1881         * lisp/scroll-bar.el (scroll-bar-columns):
1882         * lisp/server.el (server-get-auth-key):
1883         * lisp/simple.el (execute-extended-command)
1884         (undo-outer-limit-truncate, list-processes--refresh)
1885         (compose-mail, set-variable, choose-completion-string)
1886         (define-alternatives):
1887         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
1888         (command-line-1):
1889         * lisp/subr.el (noreturn, define-error, add-to-list)
1890         (read-char-choice, version-to-list):
1891         * lisp/term/common-win.el (x-handle-xrm-switch)
1892         (x-handle-name-switch, x-handle-args):
1893         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
1894         * lisp/textmodes/reftex-ref.el (reftex-label):
1895         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
1896         * lisp/textmodes/two-column.el (2C-split):
1897         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
1898         (tutorial--find-changed-keys):
1899         * lisp/type-break.el (type-break-noninteractive-query):
1900         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
1901         (wdired-do-perm-changes):
1902         * lisp/whitespace.el (whitespace-report-region):
1903         Prefer grave quoting in source-code strings used to generate help
1904         and diagnostics.
1905         * lisp/faces.el (face-documentation):
1906         No need to convert quotes, since the result is a docstring.
1907         * lisp/info.el (Info-virtual-index-find-node)
1908         (Info-virtual-index, info-apropos):
1909         Simplify by generating only curved quotes, since info files are
1910         typically that ways nowadays anyway.
1911         * lisp/international/mule-diag.el (list-input-methods):
1912         Don’t assume text quoting style is curved.
1913         * lisp/org/org-bibtex.el (org-bibtex-fields):
1914         Revert my recent changes, going back to the old quoting style.
1916 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
1918         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling
1919         (package--autoloads-file-name)
1920         (package--activate-autoloads-and-load-path): New function.
1921         (package-activate-1): Delegate autoloading and load-path
1922         configuration to `package--activate-autoloads-and-load-path'.
1923         (package--compile): Before compilation, call
1924         `package--activate-autoloads-and-load-path' instead of
1925         `package-activate-1'.
1927 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
1929         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
1931 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
1933         Fix deletion of symlinks to directories on MS-Windows
1934         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
1935         symlink to a directory, try again with 'rmdir'.
1936         (is_symlink): If the argument is a symlink to a directory, set a
1937         bit in the return value to indicate that fact.
1939 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
1941         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
1942         When `package-initialize' is called as part of loading the init file,
1943         the user probably doesn't want it to be called again afterwards. In this
1944         situation, `package-initialize' now sets `package-enable-at-startup' to
1945         nil to prevent that. The user can have the old behaviour by setting this
1946         variable to t after the call to `package-initialize'.  (Bug#21423)
1947         * doc/emacs/package.texi (Package Installation): Document it.
1948         * doc/lispref/package.texi (Packaging Basics): Document it.
1949         * etc/NEWS: Document it.
1951 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1953         Bump version of ntlm.el to 2.00
1954         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.  Add comm
1955         keyword.
1957 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
1959         * doc/misc/gnus.texi (Mail Source Specifiers):
1960         Allow :mailbox to be a list.
1962 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
1964         Allow even one non-regular character before the implicit tag name
1965         * lisp/progmodes/etags.el (etags-tags-completion-table):
1966         Allow even one non-regular character before the implicit tag name.
1967         Reported at http://emacs.stackexchange.com/questions/15269/.
1969 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1971         Add support for NTLMv2 authentication
1972         * net/ntlm.el (ntlm): New customization group.
1973         (ntlm-compatibility-level): New defcustom.
1974         (ntlm-compute-timestamp): New function.
1975         (ntlm-generate-nonce): Likewise.
1976         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
1978 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
1980         * lisp/emacs-lisp/package.el: Rename custom faces
1981         All of the recently introduced faces, like `package-name-face', have
1982         been renamed to no end in `-face' to comply with the convention
1983         described in (info "(elisp) Defining Faces").
1984         (package-name, package-description)
1985         (package-status-built-in, package-status-external)
1986         (package-status-available, package-status-new)
1987         (package-status-held, package-status-disabled)
1988         (package-status-installed, package-status-dependency)
1989         (package-status-unsigned, package-status-incompat)
1990         (package-status-avail-obso): New faces.
1991         (package-menu--print-info-simple): Use them.
1993 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
1995         mail-source.el: Make the imap mail-source's :mailbox handle a list
1996         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
1997         Allow :mailbox to be  a list.
1999 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
2001         nnimap.el:  Handle nil arg to nnimap-request-group
2002         * lisp/gnus/nnimap.el (nnimap-request-group):  Handle nil "info" arg.
2003         This arg isn't always passed in, check it's not nil before making it
2004         into a list.  The active arg will also be nil if the group is new,
2005         check for that.
2007 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
2009         File notifications: Support renaming over directory boundaries
2010         * lisp/filenotify.el (file-notify-handle-event):
2011         (file-notify--pending-event): Adapt docstring.
2012         (file-notify--descriptor, file-notify-callback): Reimplement in
2013         order to support renaming over directory boundaries.
2014         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
2015         * doc/lispref/os.texi (File Notifications): Remove limitation of
2016         file renaming to the same directory.
2018 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
2020         Spelling fix (Bug#21420)
2022 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
2024         Improve the semantic of map-some
2025         Update map-some to return the returned by the predicate, similar to
2026         seq-some.
2027         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
2028           return value of the predicate.
2029         * test/automated/map-tests.el (test-map-some): Update the test to check
2030           for non-nil values only.
2032         Rename map-contains-key-p and map-some-p
2033         Remove the "-p" suffix from both function names.
2034         * lisp/emacs-lisp/map.el (map-contains-key, map-some): Rename the functions.
2035         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
2036           Update both test functions.
2038         Improve the semantic of seq-some
2039         Update seq-some to return non-nil if the predicate returns non-nil for
2040         any element of the seq, in which case the returned value is the one
2041         returned by the predicate.
2042         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
2043           docstring.
2044         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
2045         * doc/lispref/sequences.texi (Sequence Functions): Update the
2046           documentation for seq-some.
2048         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
2049         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
2050           without the "-p" prefix.
2051         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
2052           the tests accordingly.
2053         * doc/lispref/sequences.texi (Sequence Functions): Update the
2054           documentation for seq.el.
2056 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
2058         text-quoting-style for usage of fn names with ‘’
2059         * lisp/help.el (help--docstring-quote): Don’t assume
2060         text-quoting-style is ‘curve’ when generating usage strings for
2061         functions whose names contain curved quotes.
2063 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
2065         Fix fix for describe-function keybinding confusion
2066         This fixes a bug introduced by the previous patch.
2067         * lisp/help-fns.el (help-fns--signature):
2068         Last arg of help-fns--signature is now a buffer, or nil if a
2069         raw signature is wanted.  All callers changed.
2070         (describe-function-1): Use this to do the right thing with signatures.
2072 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
2074         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
2076         Use PAT rather than UPAT in pcase macros
2077         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
2078         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
2079           than UPAT.
2081 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
2083         Fix describe-function keybinding confusion
2084         * lisp/help-fns.el (describe-function-1): Compute signature
2085         in the original buffer, not in standard-output, so that
2086         substitute-command-keys uses the proper keybindings.
2087         This fixes Bug#21412, introduced in commit
2088         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
2090 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
2092         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
2094 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
2096         Avoid read error messages from 'inotify'
2097         * src/process.c (wait_reading_process_output): Add a
2098         'tls_available' set and manipulate it instead of 'Available' when
2099         checking TLS inputs.  Assign the value to 'Available' only if we
2100         find any TLS data waiting to be read.  This avoids error messages
2101         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
2103 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
2105         Avoid errors in thing-at-point with 2nd argument non-nil
2106         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
2107         sequences.  (Bug#21391)
2109 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
2111         Fix segfaults due to using a stale face ID
2112         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
2113         (display_echo_area_1, redisplay_internal): Call it to avoid
2114         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
2115         faces, which could case a segfault if the frame's face cache was
2116         freed since the last redisplay.  (Bug#21394)
2117         * src/xfaces.c (free_realized_faces): Call
2118         forget_escape_and_glyphless_faces.
2119         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
2121 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
2123         Fix minor problems with " in manual
2125 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
2127         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
2128         multi-hop files.
2130 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
2132         Support automated ‘make check’ in non-C locale
2133         This lets the builder optionally test Emacs behavior in other locales.
2134         The C locale is still the default for tests.
2135         * test/automated/Makefile.in (TEST_LOCALE): New macro.
2136         (emacs): Use it.
2137         * test/automated/flymake-tests.el (flymake-tests--current-face):
2138         Use C locale for subprocesses so that tests behave as expected.
2139         * test/automated/python-tests.el:
2140         (python-shell-prompt-validate-regexps-1)
2141         (python-shell-prompt-validate-regexps-2)
2142         (python-shell-prompt-validate-regexps-3)
2143         (python-shell-prompt-validate-regexps-4)
2144         (python-shell-prompt-validate-regexps-5)
2145         (python-shell-prompt-validate-regexps-6)
2146         (python-shell-prompt-set-calculated-regexps-1):
2147         Adjust expected output to match locale.
2148         * test/automated/tildify-tests.el (tildify-test--test)
2149         (tildify-space-test--test, tildify-space-undo-test--test):
2150         This test assumes UTF-8 encoding.
2152 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
2154         Fix some more docstring etc. quoting problems
2155         Mostly these fixes prevent the transliteration of apostrophes
2156         that should stay apostrophes.  Also, prefer curved quotes in
2157         Bahá’í proper names, as that’s the preferred Bahá’í style and
2158         these names are chock-full of non-ASCII characters anyway.
2159         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
2160         (eieio-defclass-internal):
2161         * lisp/emacs-lisp/eieio.el (defclass):
2162         * lisp/hi-lock.el (hi-lock-mode):
2163         Don’t transliterate Lisp apostrophes when generating a
2164         doc string or diagnostic.
2165         * lisp/international/mule-diag.el (list-coding-systems-1):
2166         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
2167         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
2168         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
2169         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
2170         Substitute quotes before putting them in the help buffer.
2172 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
2174         Re-add the notion of echo_prompt lost in the translation
2175         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
2176         echo_prompt which contains the actual string.  Update all uses.
2177         * src/keyboard.c (kset_echo_prompt): New function.
2178         (echo_update): Add echo_prompt at the very beginning.
2179         (read_char): Remove workaround for bug#19875, not needed any more.
2180         (read_key_sequence): Set echo_prompt rather than echo_string (bug#21403).
2181         (mark_kboards): Mark echo_prompt.
2183         Fix disassembly of non-compiled lexical functions (bug#21377)
2184         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
2185         * lisp/emacs-lisp/disass.el: Use lexical-binding.
2186         (disassemble): Recognize `closure's as well.
2187         (disassemble-internal): Use indirect-function and
2188         help-function-arglist, and accept `closure's.
2189         (disassemble-internal): Use interactive-form.
2190         (disassemble-1): Use functionp.
2192         (tex--prettify-symbols-compose-p): Don't compose in verbatim blocks!
2193         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
2194         Don't compose inside verbatim blocks!
2196 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
2198         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
2199         (bug#19441)
2201         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394)
2203 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
2205         vc-git-mode-line-string: Explicitly re-apply the face
2206         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
2207         the face (bug#21404).
2209 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
2211         Treat initial-scratch-message as a doc string
2212         * doc/emacs/building.texi (Lisp Interaction):
2213         * doc/lispref/os.texi (Startup Summary):
2214         * etc/NEWS: Document this.
2215         * lisp/startup.el (initial-scratch-message):
2216         Look up find-file’s key rather than hardcoding it.
2217         (command-line-1): Substitute the doc string.
2218         This also substitutes the quotes, which will help test display
2219         quoting at startup.
2221         Fix describe-char bug with glyphs on terminals
2222         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
2223         buffers too, so don’t treat them differently from graphic displays.
2224         Without this fix, describe-char would throw an error on a terminal
2225         if given a glyph with a non-default face.
2227         Follow text-quoting-style in display table init
2228         This attempts to fix a problem reported by Alan Mackenzie in:
2229         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
2230         * doc/lispref/display.texi (Active Display Table):
2231         Mention how text-quoting-style affects it.
2232         * doc/lispref/help.texi (Keys in Documentation):
2233         Say how to set text-quoting-style in ~/.emacs.
2234         * etc/NEWS: Document the change.
2235         * lisp/startup.el (startup--setup-quote-display):
2236         Follow user preference if text-quoting-style is set.
2237         (command-line): Setup quote display again if user expresses
2238         a preference in .emacs.
2240 2015-09-02  K. Handa  <handa@gnu.org>
2242         Fix typo
2243         * ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask -> OTF_positioning_type_components_mask.
2245         Fix previous change
2246         * ftfont.c (ftfont_drive_otf): Remember some bits of
2247         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
2249 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
2251         * lisp/vc/vc-hooks.el (vc-refresh-state): New command
2252         (vc-refresh-state): Rename from vc-find-file-hook and make interactive.
2253         (vc-find-file-hook): Redefine as obsolete alias.
2255 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
2257         Escape ` and ' in doc
2258         Escape apostrophes and grave accents in docstrings if they are
2259         are supposed to stand for themselves and are not quotes.  Remove
2260         apostrophes from docstring examples like ‘'(calendar-nth-named-day
2261         -1 0 10 year)’ that confuse source code with data.  Do some other
2262         minor docstring fixups as well, e.g., insert a missing close
2263         quote.
2265 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
2267         Generalize the prefix-command machinery of C-u
2268         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
2269         (prefix-command-preserve-state-hook): New hooks.
2270         (internal-echo-keystrokes-prefix): New function.
2271         (prefix-command--needs-update, prefix-command--last-echo): New vars.
2272         (prefix-command-update, prefix-command-preserve): New functions.
2273         (reset-this-command-lengths): New compatibility definition.
2274         (universal-argument--mode): Call prefix-command-update.
2275         (universal-argument, universal-argument-more, negative-argument)
2276         (digit-argument): Call prefix-command-preserve-state.
2277         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
2278         the "prefix argument" to echo.
2279         (this_command_key_count_reset, before_command_key_count)
2280         (before_command_echo_length): Delete variables.
2281         (echo_add_key): Always add a space.
2282         (echo_char): Remove.
2283         (echo_dash): Don't give up when this_command_key_count is 0, since that
2284         is now the case after a prefix command.
2285         (echo_update): New function, extracted from echo_now.
2286         (echo_now): Use it.
2287         (add_command_key, read_char, record_menu_key): Remove old disabled code.
2288         (command_loop_1): Don't refrain from pushing an undo boundary when
2289         prefix-arg is set.  Remove other prefix-arg special case, now handled
2290         directly in the prefix commands instead.  But call echo_now if there's
2291         a prefix state to echo.
2292         (read_char, record_menu_key): Use echo_update instead of echo_char.
2293         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
2294         (Freset_this_command_lengths): Delete function.
2295         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
2296         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
2297         * lisp/simple.el: Use those new hooks for C-u.
2298         (universal-argument--description): New function.
2299         (prefix-command-echo-keystrokes-functions): Use it.
2300         (universal-argument--preserve): New function.
2301         (prefix-command-preserve-state-hook): Use it.
2302         (command-execute): Call prefix-command-update if needed.
2303         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
2304         (kmacro-step-edit-prefix-index): Delete variables.
2305         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
2306         support for prefix arg commands.
2307         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
2308         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
2309         (cua--shift-control-prefix): Use prefix-command-preserve-state.
2310         Remove now unused arg `arg'.
2311         (cua--prefix-override-handler, cua--prefix-repeat-handler)
2312         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
2313         Update accordingly.
2314         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
2315         any more.
2316         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
2317         if the mark is not set.
2319 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
2321         Rework quoting in Emacs Lisp Introduction
2322         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
2323         (if in more detail, type-of-animal in detail, else): Rework the
2324         early example to use " rather than ' so that we don’t burden
2325         complete novices with the low-priority detail of text quoting style.
2326         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
2327         (kill-new function, kill-ring-yank-pointer)
2328         (Complete forward-sentence, Loading Files)
2329         (Code for current-kill, Code for current-kill, yank):
2330         Resurrect the Emacs 22 versions of the code, which uses grave
2331         quoting style in doc strings.
2332         (Complete zap-to-char): Mention how quoting works in doc strings.
2334         Setup quote display only if interactive
2335         * lisp/startup.el (command-line):
2336         Skip call to startup--setup-quote-display if noninteractive.
2337         Without this change, python-shell-prompt-validate-regexps-1
2338         fails in test/automated/python-tests.el when run in an
2339         en_US.utf8 locale on Fedora.
2341 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
2343         Use defalias at the top level
2344         * lisp/gnus/gnus-util.el (gnus-format-message):
2345         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
2346         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
2348 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
2350         terminal-init-w32console mimicks command-line
2351         Problem reported by Eli Zaretskii.
2352         * lisp/startup.el (startup--setup-quote-display):
2353         New function, refactored from a part of ‘command-line’.
2354         (command-line): Use it.
2355         * lisp/term/w32console.el (terminal-init-w32console):
2356         Use it, so that this function stays consistent with ‘command-line’.
2358         Display replacement quotes with shadow glyphs
2359         * lisp/startup.el (command-line): When displaying ASCII
2360         replacements for curved quotes, use a shadow glyph instead of a
2361         regular one, to avoid ambiguity.
2363 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
2365         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
2367 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
2369         Docstring fixes re quotes in C code
2370         Fix some docstring quoting problems, mostly by escaping apostrophe.
2372 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
2374         Some Tramp password fixes
2375         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
2376         of the hops.
2377         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
2378         at the beginning of the command.  Otherwise, it could be
2379         interpreted as password prompt if the remote host echoes the
2380         command.
2381         (tramp-remote-coding-commands): Add "openssl enc -base64".
2383 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
2385         Make vc-git-working-revision always return the commit hash
2386         * lisp/vc/vc-git.el (vc-git-working-revision):
2387         Return the commit hash (bug#21383).
2388         (vc-git--symbolic-ref): New function, extracted from above.
2389         (vc-git-mode-line-string): Use it.
2391 2015-09-01  K. Handa  <handa@gnu.org>
2393         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs.
2394         * ftfont.c (MFLTGlyphFT): New type.
2395         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
2396         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
2397         elements in the array MFLTGlyphString.glyphs.
2399 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
2401         Improve comments in elisp-mode.el, elisp-mode-tests.el
2402         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
2404         Delete Emacs 25 test in mode-local.el
2405         * lisp/cedet/mode-local.el (describe-mode-local-overload): Fix missed an
2406         edit in previous commit.
2408         Show all known mode-local overrides in *Help*
2409         * lisp/cedet/mode-local.el (describe-mode-local-overload): Assume Emacs
2410         25. Add all known mode-local overrides.
2412 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
2414         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
2415         Ensure that the article where the search word is found is displayed
2416         and pointed to in the summary buffer.
2418 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
2420         * lisp/newcomment.el (comment-dwim): Use `use-region-p'
2421         When the region is active, but is empty (length 0), act as though
2422         the region was not active; that is, put a comment at the end of
2423         the line.  (Bug#21119)
2425 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
2427         Port tls.el to older Emacs
2428         * lisp/net/tls.el (tls-format-message):
2429         Alias to format-message, or format if not available.
2430         (open-tls-stream): Use it.
2432 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
2434         hideif.el: Recognize .h++ as C++ header.
2435         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
2437         isearch: Document character folding mode.
2438         * isearch.el (isearch-forward): Mention `isearch-toggle-character-fold'
2439         in doc string.
2441 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
2443         Quoting fixes in ERC and Eshell
2444         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
2445         * lisp/erc/erc-backend.el (define-erc-response-handler):
2446         * lisp/erc/erc-fill.el (erc-fill-static-center):
2447         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
2448         * lisp/eshell/em-glob.el (eshell-glob-entries):
2449         * lisp/eshell/em-hist.el (eshell-save-some-history):
2450         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
2451         (eshell-shuffle-files):
2452         * lisp/eshell/esh-cmd.el (eshell-do-eval):
2453         * lisp/eshell/esh-proc.el (eshell-process-interact)
2454         (eshell-query-kill-processes):
2455         Respect ‘text-quoting-style’ in diagnostics and doc strings.
2457         Quoting fixes in Gnus
2458         * lisp/gnus/gnus-agent.el:
2459         (gnus-agent-possibly-synchronize-flags-server):
2460         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
2461         * lisp/gnus/gnus-eform.el (gnus-edit-form):
2462         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
2463         (gnus-group-nnimap-edit-acl):
2464         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
2465         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
2466         * lisp/gnus/message.el (message-strip-subject-encoded-words)
2467         (message-check-recipients, message-send-form-letter):
2468         * lisp/gnus/mm-decode.el (mm-display-part):
2469         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
2470         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
2471         (mml-smime-get-ldap-cert):
2472         * lisp/gnus/spam-report.el (spam-report-process-queue):
2473         Respect ‘text-quoting-style’ in diagnostics.
2474         * lisp/gnus/gnus-art.el (article-display-face)
2475         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
2476         Use straight quoting in email.
2477         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
2478         Escape apostrophes in doc strings.
2480         Quoting fixes in lisp mail, mh-e, net, url
2481         * lisp/mail/emacsbug.el (report-emacs-bug)
2482         (report-emacs-bug-hook): Use straight quotes in outgoing email,
2483         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
2484         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
2485         * lisp/mail/rmailout.el (rmail-output-read-file-name):
2486         * lisp/net/imap.el (imap-interactive-login):
2487         * lisp/net/tls.el (open-tls-stream):
2488         * lisp/url/url-auth.el (url-register-auth-scheme):
2489         Respect ‘text-quoting-style’ in diagnostics.
2490         * lisp/mh-e/mh-e.el (mh-sortm-args):
2491         Quote docstring example using text quotes, not as a Lisp quote.
2493 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
2495         Fix some byte-compiler warnings in EDE
2496         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
2497         existing autoloader list, rather than add to it.
2498         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
2499         argument to eieio class constructor.
2500         (ede-show-supported-projects): New.
2501         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
2502         with (oref ... name).
2503         (ede-auto-load-project): Use slot name, not initarg key.
2504         * lisp/cedet/ede/generic.el (ede-generic-load,
2505         ede-generic-find-matching-target): Use slot name, not initarg key.
2506         (ede-find-target): Use oref-default on class name.
2507         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
2508         class constructor.
2509         (ede-enable-generic-projects): Make project type names unique.
2511 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
2513         Fix directory accessibility tests for w32 network volumes
2514         * src/w32.c (faccessat): Don't fail with network volumes without a
2515         share.
2516         (w32_accessible_directory_p): Handle network volumes without a
2517         share.
2519         Fix handling long file names in readdir on MS-Windows
2520         * src/w32.c (sys_readdir): Append "\*" to the directory after
2521         converting it to UTF-16/ANSI, not before, to avoid overflowing the
2522         260-character limit on file names in filename_to_utf16/ansi.
2524         Make file-accessible-directory-p reliable on MS-Windows
2525         * src/w32.c (w32_accessible_directory_p): New function.
2526         * src/w32.h (w32_accessible_directory_p): Add prototype.
2527         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
2528         w32_accessible_directory_p to test a directory for accessibility
2529         by the current user.  (Bug#21346)
2530         (Ffile_accessible_directory_p): Remove the w32 specific caveat
2531         from the doc string.
2533 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
2535         Don't call do_pending_window_change in signal handlers (Bug#21380)
2536         * src/gtkutil.c (xg_frame_resized):
2537         * src/xterm.c (x_set_window_size):
2538         * src/w32term.c (x_set_window_size): Don't call
2539         do_pending_window_change.
2541 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
2543         Quoting fixes in lisp/org
2544         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
2545         (org-tags-view):
2546         * lisp/org/org-capture.el (org-capture-mode)
2547         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
2548         (org-ctags-ask-append-topic):
2549         * lisp/org/org.el (org-time-string-to-time)
2550         (org-time-string-to-absolute):
2551         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
2552         (org-ctags-ask-append-topic):
2553         * lisp/org/org.el (org-time-string-to-time)
2554         (org-time-string-to-absolute):
2555         Respect ‘text-quoting-style’ in diagnostics.
2556         * lisp/org/org-agenda.el (org-agenda-custom-commands)
2557         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
2558         * lisp/org/org-capture.el (org-capture-fill-template):
2559         Avoid contraction in output file that might be ASCII.
2560         * lisp/org/org-compat.el (format-message):
2561         Define if not already defined, for backward compatibility.
2562         * lisp/org/org-src.el (org-edit-src-save):
2563         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
2564         Escape apostrophes in diagnostics.
2566         Treat “instead” strings as docstrings
2567         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
2568         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
2569         Substitute quotes in instead strings.
2571 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
2573         Better documentation of seq-let
2574         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
2575         documentation of seq-let.
2577 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
2579         * lisp/international/ccl.el: Fix quoting.
2581         Quoting fixes in lisp/international and lisp/leim
2582         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
2583         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
2584         * lisp/international/mule-cmds.el:
2585         (select-safe-coding-system-interactively, leim-list-file-name):
2586         * lisp/international/quail.el (quail-use-package, quail-help):
2587         * lisp/international/titdic-cnv.el (tit-process-header)
2588         (miscdic-convert):
2589         Respect text quoting style in doc strings and diagnostics.
2590         * lisp/international/quail.el (lisp/international/quail.el):
2591         * lisp/leim/quail/ethiopic.el ("ethiopic"):
2592         Escape apostrophes in doc strings.
2594         Make ‘text-quoting-style’ a plain defvar
2595         It doesn’t need customization, as it’s likely useful only by experts.
2596         Suggested by Stefan Monnier in:
2597         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
2598         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
2600         Quoting fixes in lisp/textmodes
2601         * lisp/textmodes/bibtex.el (bibtex-validate)
2602         (bibtex-validate-globally, bibtex-search-entries):
2603         * lisp/textmodes/ispell.el (ispell-command-loop):
2604         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
2605         * lisp/textmodes/texinfmt.el (texinfmt-version)
2606         (texinfo-format-region, texinfo-format-buffer-1):
2607         * lisp/textmodes/two-column.el (2C-split):
2608         Respect text quoting style in doc strings and diagnostics.
2609         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
2610         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
2611         Escape apostrophes in doc strings.
2613         Documentation fixes re quotes
2614         Prefer curved quotes in examples if users will typically see
2615         curved quotes when the examples run.
2616         Mention format-message when appropriate.
2617         Don’t use @code in examples.
2618         Quote an apostrophe with @kbd.
2620         Quoting fixes in lisp/progmodes
2621         * lisp/progmodes/cc-engine.el (c-bos-report-error):
2622         * lisp/progmodes/cpp.el (cpp-edit-reset):
2623         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
2624         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
2625         (etags-tags-apropos, list-tags, tags-apropos):
2626         * lisp/progmodes/executable.el (executable-set-magic):
2627         * lisp/progmodes/octave.el (octave-sync-function-file-names)
2628         (octave-help, octave-find-definition-default-filename)
2629         (octave-find-definition):
2630         Respect text quoting style in doc strings and diagnostics.
2631         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
2632         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
2633         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
2634         Escape apostrophes in doc strings.
2635         * lisp/progmodes/cmacexp.el (c-macro-expansion):
2636         Use straight quoting in ASCII comment.
2637         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
2638         (idlwave-pad-keyword):
2639         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
2640         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
2641         (vhdl-electric-semicolon, vhdl-electric-comma)
2642         (vhdl-electric-period, vhdl-electric-equal):
2643         Use directed quotes in diagnostics and doc strings.
2645 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
2647         Minor documentation and NEWS tweak
2648         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let): Add an index
2649         entry.
2650         * NEWS: Fix a typo in character-fold-to-regexp.
2652 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
2654         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
2655         Revert patch from 2015-08-24.  Tramp shall be have like for local files.
2656         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
2657         Adapt test.
2659 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
2661         Text quoting fixes in cedet, emulation, emacs-lisp
2662         * lisp/cedet/ede.el (ede-check-project-directory):
2663         * lisp/cedet/semantic/analyze/debug.el:
2664         (semantic-analyzer-debug-insert-include-summary):
2665         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
2666         * lisp/cedet/semantic/decorate/include.el:
2667         (semantic-decoration-unknown-include-describe)
2668         (semantic-decoration-all-include-summary):
2669         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
2670         * lisp/emulation/edt.el (edt-load-keys):
2671         * lisp/emulation/viper-cmd.el:
2672         (viper-display-current-destructive-command)
2673         (viper-query-replace, viper-brac-function):
2674         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
2675         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
2676         Respect text quoting style in doc string or diagnostic.
2677         * lisp/cedet/mode-local.el (describe-mode-local-overload):
2678         Use format-message to avoid overtranslating quotes.
2679         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
2680         Escape an apostrophe in a docstring.
2681         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
2683 2015-08-29  Daniel Colascione  <dancol@dancol.org>
2685         Fix which-func for curly quotes: look for symbol, not message
2686         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
2687         imenu-unavailable error symbol instead of trying to match message
2688         exactly.
2689         * lisp/imenu.el (imenu-unavailable): New error.
2690         (imenu-unavailable-error): New function.
2692 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
2694         Fix Python tests on MS-Windows
2695         * test/automated/python-tests.el
2696         (python-shell-calculate-command-1): Run python-shell-interpreter
2697         through shell-quote-argument before comparing with what
2698         python-shell-calculate-command returns.
2699         (python-shell-calculate-pythonpath-1)
2700         (python-shell-calculate-pythonpath-2)
2701         (python-shell-calculate-process-environment-2): Use path-separator
2702         instead of a literal ':'.
2703         (python-shell-calculate-exec-path-2)
2704         (python-shell-calculate-exec-path-3)
2705         (python-shell-calculate-exec-path-4)
2706         (python-shell-with-environment-1)
2707         (python-shell-with-environment-2): Run "/env/bin" through
2708         expand-file-name before comparing with exec-path.  (Bug#21375)
2710 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2712         Use Core Text types/functions/variables/enumerators directly
2713         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
2714         (CharacterCollection): Remove typedefs.  All uses replaced with
2715         definitions.
2716         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
2717         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
2718         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
2719         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
2720         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
2721         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
2722         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
2723         definitions.
2724         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
2725         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
2726         (MAC_FONT_FORMAT_BITMAP)
2727         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
2728         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.  All
2729         uses replaced with definitions.
2730         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
2731         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
2732         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault): Add
2733         compatibility enumerators for older versions.
2734         (mac_font_descriptor_create_with_attributes)
2735         (mac_font_descriptor_create_matching_font_descriptors)
2736         (mac_font_descriptor_create_matching_font_descriptor)
2737         (mac_font_descriptor_copy_attribute)
2738         (mac_font_descriptor_supports_languages)
2739         (mac_font_create_with_name, mac_font_get_size)
2740         (mac_font_copy_family_name, mac_font_copy_character_set)
2741         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
2742         (mac_font_get_descent, mac_font_get_leading)
2743         (mac_font_get_underline_position)
2744         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
2745         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
2746         replaced with definitions.
2747         (mac_font_create_preferred_family_for_attributes)
2748         (mac_font_get_advance_width_for_glyph)
2749         (mac_font_get_bounding_rect_for_glyph)
2750         (mac_font_create_available_families, mac_font_shape): Remove
2751         macros for renamed functions.
2752         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
2753         * src/macterm.m (mac_font_descriptor_supports_languages): Rename
2754         from mac_ctfont_descriptor_supports_languages.
2755         (mac_font_create_preferred_family_for_attributes): Rename from
2756         mac_ctfont_create_preferred_family_for_attributes.
2757         (mac_font_get_advance_width_for_glyph): Rename from
2758         mac_ctfont_get_advance_width_for_glyph.  Use
2759         kCTFontOrientationDefault also for older versions.
2760         (mac_font_get_bounding_rect_for_glyph): Rename from
2761         mac_ctfont_get_bounding_rect_for_glyph. Use
2762         kCTFontOrientationDefault also for older versions.
2763         (mac_font_create_available_families): Rename from
2764         mac_ctfont_create_available_families.
2765         (mac_font_equal_in_postscript_name): Rename from
2766         mac_ctfont_equal_in_postscript_name.  All uses changed.
2767         (mac_font_create_line_with_string_and_font): Rename from
2768         mac_ctfont_create_line_with_string_and_font.  All uses changed.
2769         (mac_font_shape): Rename from mac_ctfont_shape.
2770         (mac_font_family_compare): Remove unused declaration.
2772 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
2774         Fix minor text quoting in calc, calendar, vc
2775         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
2776         * lisp/calc/calc-help.el (calc-j-prefix-help):
2777         * lisp/calc/calc-misc.el (calc-help):
2778         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
2779         Escape an apostrophe in a docstring.
2780         * lisp/calc/calc-forms.el (calc-hms-notation):
2781         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
2782         Escape an apostrophe in a diagnostic.
2783         * lisp/calc/calc-misc.el (calc-help):
2784         * lisp/calendar/diary-lib.el (diary-include-files):
2785         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
2786         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
2787         * lisp/vc/ediff-diff.el (ediff-same-contents):
2788         * lisp/vc/ediff-merg.el (ediff-re-merge):
2789         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
2790         * lisp/vc/ediff-util.el (ediff-test-save-region)
2791         (ediff-status-info):
2792         * lisp/vc/ediff.el (ediff-merge-revisions)
2793         (ediff-merge-revisions-with-ancestor):
2794         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
2795         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
2796         Respect text quoting style in doc string or diagnostic.
2797         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
2798         * lisp/vc/add-log.el (change-log-goto-source):
2799         Avoid double-formatting.
2800         * lisp/vc/ediff-init.el (format-message):
2801         New backward-compatibility alias.
2803 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
2805         Fix minor text quoting problems in lisp top level
2806         * lisp/apropos.el (apropos-describe-plist):
2807         * lisp/cus-theme.el (customize-themes):
2808         * lisp/dired.el (dired-log):
2809         * lisp/help-fns.el (describe-variable):
2810         * lisp/hexl.el (hexl-insert-multibyte-char):
2811         * lisp/info.el (Info-finder-find-node):
2812         * lisp/json.el (json-read-string):
2813         * lisp/novice.el (disabled-command-function)
2814         (disabled-command-function):
2815         * lisp/startup.el (normal-mouse-startup-screen):
2816         * lisp/woman.el (WoMan-log, WoMan-warn):
2817         Respect text quoting style in doc string or diagnostic.
2818         * lisp/replace.el (replace-character-fold):
2819         * src/syntax.c (Fmodify_syntax_entry):
2820         Escape an apostrophe in a docstring.
2821         * lisp/tempo.el (tempo-define-template):
2822         Remove confusing apostrophe from docstring.
2823         * lisp/whitespace.el (whitespace-mark-x):
2824         Use directed quotes in docstring.
2826 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
2828         Fix indentation rule in css-mode
2829         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
2830         brackets in presence of pseudo-selectors.  (Bug#21328)
2832 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
2834         Fix a bug in recording a macro while flyspell-mode is active
2835         * lisp/subr.el (sit-for): Don't call read-event when recording a
2836         macro.  (Bug#21329)
2838 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
2840         Tweak startup screen quoting
2841         * lisp/startup.el (normal-splash-screen): Use standard
2842         "M-" abbrevation rather than a confusingly-different one.
2843         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
2845 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
2847         Add test case for ‘format’ bug and refactor
2848         * src/editfns.c (styled_format): Refactor internally, mostly by
2849         moving declarations closer to uses.  This should not affect behavior.
2850         * test/automated/textprop-tests.el (textprop-tests-format): New test.
2852         Fix ‘format’ bug with property offsets
2853         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
2854         bug in calculating string property offsets (Bug#21351).
2856         Use straight quotes in lib-src diagnostics
2857         These auxiliary programs can’t use Emacs’s text-quoting-style,
2858         and it’s too much trouble to redo that mechanism by hand.
2859         So just use straight quotes for now.
2860         * lib-src/ebrowse.c (main):
2861         * lib-src/emacsclient.c (decode_options, main):
2862         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
2863         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
2864         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
2865         (none_help, print_language_names, print_help, add_regex)
2866         (suggest_asking_for_help):
2867         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
2868         Use straight quotes in diagnostics.
2870         ‘text-quoting-style’ fixes for admin
2871         * admin/admin.el (cusver-scan, cusver-check):
2872         * admin/authors.el (authors-canonical-file-name):
2873         * admin/bzrmerge.el (bzrmerge-missing):
2874         Respect ‘text-quoting-style’ in diagnostics.
2876 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
2878         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
2879         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
2880         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
2881         * doc/lispref/internals.texi (Writing Emacs Primitives):
2882         * etc/NEWS:
2883         Document the change.
2884         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
2885         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
2886         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
2887         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
2888         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
2889         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
2890         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
2891         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
2892         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
2893         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
2894         Remove.  All uses removed.  The code now assumes
2895         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
2896         * src/bytecode.c (relocate_byte_stack):
2897         Rename from unmark_byte_stack, since it now only relocates.
2898         All callers changed.
2899         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
2900         with GCPROs removed.
2901         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
2902         * test/automated/finalizer-tests.el (finalizer-basic)
2903         (finalizer-circular-reference, finalizer-cross-reference)
2904         (finalizer-error):
2905         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
2906         Remove tests, as they depend on gc-precise.
2908 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
2910         Improve seq-concatenate for new sequence types
2911         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
2912         ensure that concatenation happens on sequences only.  This makes it
2913         possible to use `seq-concatenate' for new types of seqs.
2914         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate): New
2915         function used in `seq-concatenate'.
2916         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
2917         for seq-into-sequence.
2919 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
2921         Add mode local overrides to xref-find-definitions
2922         * lisp/cedet/mode-local.el (xref-mode-local--override-present,
2923         xref-mode-local-overload): New; add mode local overrides to
2924         xref-find-definitions.
2925         * test/automated/elisp-mode-tests.el: Add mode local override tests.
2926         (xref-elisp-test-run): Handle indented defuns.
2927         (xref-elisp-generic-*): Improve doc strings.
2928         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
2929         (elisp--xref-find-definitions): Use it.
2931         Add mode local overrides to describe-function
2932         * lisp/cedet/mode-local.el (describe-mode-local-overload): New; add mode
2933         local overrides to describe-function.
2934         * etc/NEWS: Document change.
2936 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
2938         Prefer straight quoting in some etc text files
2939         These files are plain text and might be used by non-Emacs apps.
2940         They’re mostly ASCII, so just use straight quotes.
2942         Fix quoting in ‘message_with_string’
2943         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
2944         should work now.
2945         * src/xdisp.c (message_to_stderr): New function, refactored from
2946         part of ‘message3_nolog’.
2947         (message3_nolog): Use it.
2948         (message_with_string): Use it.  Don’t mishandle NUL bytes when
2949         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
2950         Use ‘format-message’, not ‘format’, so that quotes are translated.
2952 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
2954         Mention false positives of file-accessible-directory on w32
2955         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
2956         (Bug#21346)
2958 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
2960         Treat error strings as help
2961         * src/print.c (print_error_message): Translate quotes and command
2962         keys in errmsg so that users see, e.g., "Symbol’s value as
2963         variable is void: foo" when text-quoting-style is curved.
2965 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
2967         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
2969 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
2971         Top-level elisp files respect ‘text-quoting-style’
2972         In top-level elisp files, use format-message in diagnostic formats,
2973         so that they follow user preference as per ‘text-quoting-style’
2974         rather than being hard-coded to quote `like this'.
2975         * lisp/allout.el (allout-get-configvar-values):
2976         * lisp/apropos.el (apropos-symbols-internal):
2977         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
2978         (dired-do-create-files-regexp, dired-create-files-non-directory):
2979         * lisp/dired-x.el (dired-do-run-mail):
2980         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
2981         * lisp/disp-table.el (standard-display-european):
2982         * lisp/find-dired.el (find-dired):
2983         * lisp/forms.el (forms-mode):
2984         * lisp/ido.el (ido-buffer-internal):
2985         * lisp/info.el (Info-index-next):
2986         * lisp/outline.el (outline-invent-heading):
2987         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
2988         * lisp/proced.el (proced-log):
2989         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
2990         * lisp/recentf.el (recentf-open-files, recentf-save-list):
2991         * lisp/savehist.el (savehist-save):
2992         * lisp/server.el (server-ensure-safe-dir):
2993         * lisp/ses.el (ses-rename-cell):
2994         * lisp/simple.el (list-processes--refresh):
2995         * lisp/startup.el (command-line):
2996         * lisp/strokes.el (strokes-unset-last-stroke)
2997         (strokes-execute-stroke):
2998         Use format-message so that quotes are restyled.
2999         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
3000         Don’t quote ‘raised’.
3001         * lisp/descr-text.el (describe-char):
3002         * lisp/dirtrack.el (dirtrack-debug-message):
3003         * lisp/hexl.el (hexl-insert-multibyte-char):
3004         Apply substitute-command-keys to help string.
3005         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
3006         (wdired-do-perm-changes):
3007         Let dired-log do the formatting.
3009 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
3011         Go back to grave quoting in Tramp
3012         * lisp/net/tramp-adb.el:
3013         * lisp/net/tramp-cache.el:
3014         * lisp/net/tramp-compat.el:
3015         * lisp/net/tramp-gvfs.el:
3016         * lisp/net/tramp-gw.el:
3017         * lisp/net/tramp-sh.el:
3018         * lisp/net/tramp-smb.el:
3019         * lisp/net/tramp.el:
3020         Stick with grave quoting in diagnostics strings.  This is more
3021         portable to older Emacs, desirable for Tramp.
3022         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
3023         for diagnostic that needs requoting.
3024         * lisp/net/tramp-compat.el (format-message):
3025         Fall back on simple ‘format’, since that’s good enough now.
3027         Go back to grave quoting in Gnus
3028         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
3029         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
3030         (gnus-agent-fetch-headers):
3031         * lisp/gnus/gnus-int.el (gnus-start-news-server):
3032         * lisp/gnus/gnus-registry.el:
3033         (gnus-registry--split-fancy-with-parent-internal)
3034         (gnus-registry-post-process-groups):
3035         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
3036         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
3037         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
3038         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
3039         * lisp/gnus/spam.el (spam-check-blackholes):
3040         Stick with grave quoting in diagnostics strings.  This is more
3041         portable to older Emacs, desirable for Gnus.
3043         Fix customization of text-quoting-style
3044         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
3045         * lisp/wid-edit.el (widget-docstring):
3046         Get raw docstring here since it’s cooked later and should not be
3047         cooked twice.
3048         * lisp/cus-edit.el (custom-group-value-create):
3049         Cook the docstring before inserting it.
3050         * lisp/cus-start.el (text-quoting-style): Quote the customization
3051         docstrings according to the new rules.  Give curved examples.
3053         format-message now curves ` and '
3054         That way, the caller doesn’t have to use curved quotes to
3055         get diagnostics that match the text-quoting-style preferences.
3056         Suggested by Dmitry Gutov in:
3057         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
3058         This means we no longer need %qs, so remove that format.
3059         While we’re at it, fix an unlikely bug and lessen the pressure
3060         on the garbage collector by processing the string once rather
3061         than twice in the usual case.
3062         * doc/lispref/strings.texi (Formatting Strings):
3063         * etc/NEWS: Document this.
3064         * lisp/subr.el (format-message): Remove; now done in C.
3065         * src/callint.c (Fcall_interactively):
3066         * src/editfns.c (Fmessage, Fmessage_box):
3067         Use Fformat_message instead of Finternal__text_restyle
3068         followed by Fformat.
3069         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
3070         uLSQM and uRSQM.
3071         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
3072         when pure ASCII now suffices.  Fix unlikely bug when parsing
3073         unibyte string containing non-ASCII bytes.  Use inline code
3074         rather than memcpy, as it’s a tiny number of bytes.
3075         (Finternal__text_restyle): Remove; no longer used.
3076         (syms_of_doc): Don’t declare it.
3077         * src/editfns.c (Fformat): Rewrite in terms of new function
3078         ‘styled_format’.
3079         (Fformat_message): New function, moved here from subr.el.
3080         (styled_format): New function, with the old guts of Fformat,
3081         except it now optionally transliterates quotes, and it transliterates
3082         traditional grave accent and apostrophe quoting as well.
3083         Remove recently-added q flag; no longer needed or used.
3084         (syms_of_editfns): Define format-message.
3085         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
3086         Remove; no longer need to be global symbols.
3087         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
3088         so that callers can use `%s'.
3089         * src/image.c (image_size_error, xbm_load_image, xbm_load)
3090         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
3091         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
3092         (svg_load_image, gs_load, x_kill_gs_process):
3093         * src/lread.c (load_warn_old_style_backquotes):
3094         * src/xfaces.c (load_pixmap):
3095         * src/xselect.c (x_clipboard_manager_error_1):
3096         Use `%s' instead of %qs in formats.
3098 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
3100         Minor fixes in doc/emacs/search.texi
3101         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
3102         (Special Isearch): Use @w{} to generate several consecutive spaces
3103         with Texinfo 6.  (Bug#21345)
3105 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
3107         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
3108         (tramp-awk-coding-test): New defconsts.
3109         (tramp-remote-coding-commands): Use them.
3110         (tramp-find-inline-encoding): Check for Perl only if necessary.
3112 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
3114         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
3115         index entries for the special form `quote'.
3117 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
3119         Spelling fixes
3121         Gnus format-message typo fix
3122         * lisp/gnus/gnus-util.el (gnus-format-message):
3123         Fix typo when running in older Emacs.
3125         Prefer directed to neutral quotes
3126         Prefer directed to neutral quotes in docstings and diagnostics.
3127         In docstrings, escape apostrophes that would otherwise be translated
3128         to curved quotes using the newer, simpler rules.
3129         * admin/unidata/unidata-gen.el (unidata-gen-table):
3130         * lisp/align.el (align-region):
3131         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
3132         * lisp/bookmark.el (bookmark-default-annotation-text):
3133         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
3134         * lisp/calc/calc-lang.el (math-read-giac-subscr)
3135         (math-read-math-subscr):
3136         * lisp/calc/calc-misc.el (report-calc-bug):
3137         * lisp/calc/calc-prog.el (calc-fix-token-name)
3138         (calc-read-parse-table-part):
3139         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
3140         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
3141         * lisp/dabbrev.el (dabbrev-expand):
3142         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
3143         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
3144         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
3145         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
3146         * lisp/erc/erc-button.el (erc-nick-popup):
3147         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
3148         * lisp/eshell/em-dirs.el (eshell/cd):
3149         * lisp/eshell/em-glob.el (eshell-glob-regexp):
3150         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
3151         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
3152         * lisp/eshell/esh-opt.el (eshell-show-usage):
3153         * lisp/files-x.el (modify-file-local-variable):
3154         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
3155         (filesets-update-pre010505):
3156         * lisp/find-cmd.el (find-generic, find-to-string):
3157         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
3158         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
3159         (gnus-agent-fetch-headers):
3160         * lisp/gnus/gnus-int.el (gnus-start-news-server):
3161         * lisp/gnus/gnus-registry.el:
3162         (gnus-registry--split-fancy-with-parent-internal):
3163         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
3164         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
3165         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
3166         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
3167         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
3168         * lisp/gnus/spam.el (spam-check-blackholes):
3169         * lisp/mail/feedmail.el (feedmail-run-the-queue):
3170         * lisp/mpc.el (mpc-playlist-rename):
3171         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
3172         * lisp/net/mairix.el (mairix-widget-create-query):
3173         * lisp/net/tramp-cache.el:
3174         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
3175         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
3176         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
3177         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
3178         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
3179         (org-babel-goto-named-result):
3180         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
3181         * lisp/org/ob-ref.el (org-babel-ref-resolve):
3182         * lisp/org/org-agenda.el (org-agenda-prepare):
3183         * lisp/org/org-bibtex.el (org-bibtex-fields):
3184         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
3185         (org-clock-resolve):
3186         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
3187         * lisp/org/org-habit.el (org-habit-parse-todo):
3188         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
3189         (org-mouse-context-menu):
3190         * lisp/org/org-table.el (org-table-edit-formulas):
3191         * lisp/org/ox.el (org-export-async-start):
3192         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
3193         (dun-rooms, dun-endgame-questions):
3194         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
3195         * lisp/progmodes/ada-xref.el (ada-find-executable):
3196         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
3197         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
3198         (flymake-start-syntax-check-process):
3199         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
3200         * lisp/progmodes/sql.el (sql-comint):
3201         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
3202         * lisp/server.el (server-get-auth-key):
3203         * lisp/subr.el (version-to-list):
3204         * lisp/textmodes/reftex-ref.el (reftex-label):
3205         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
3206         * lisp/vc/ediff-diff.el (ediff-same-contents):
3207         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
3208         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
3209         Use directed rather than neutral quotes in diagnostics.
3211         Treat ' like ’ even when not matching `
3212         This is simpler and easier to explain, and should encourage better
3213         typography.  Do this in Electric Quote mode and when translating
3214         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
3215         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
3216         * doc/emacs/text.texi (Quotation Marks):
3217         * doc/lispref/help.texi (Keys in Documentation):
3218         * etc/NEWS:
3219         Document this.
3220         * lisp/electric.el (electric-quote-post-self-insert-function):
3221         * src/doc.c (Fsubstitute_command_keys):
3222         Always treat ' like ’ even when not matched by an open quote.
3224 2015-08-25  Glenn Morris  <rgm@gnu.org>
3226         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
3227         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
3229 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3231         * src/macfont.m (macfont_create_family_with_symbol): Accept
3232         localized names.
3234 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
3236         Tramp diagnostics as per ‘text-quoting-style’
3237         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
3238         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
3239         (tramp-adb-handle-delete-directory)
3240         (tramp-adb-handle-delete-file)
3241         (tramp-adb-handle-file-local-copy)
3242         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
3243         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
3244         (tramp-adb-maybe-open-connection):
3245         * lisp/net/tramp-cache.el:
3246         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
3247         (tramp-compat-octal-to-decimal)
3248         (tramp-compat-coding-system-change-eol-conversion):
3249         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
3250         (tramp-gvfs-do-copy-or-rename-file)
3251         (tramp-gvfs-handle-delete-directory)
3252         (tramp-gvfs-handle-delete-file)
3253         (tramp-gvfs-handle-expand-file-name)
3254         (tramp-gvfs-handle-file-local-copy)
3255         (tramp-gvfs-handle-file-notify-add-watch)
3256         (tramp-gvfs-handle-make-directory)
3257         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
3258         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
3259         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
3260         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
3261         (tramp-sh-handle-set-visited-file-modtime)
3262         (tramp-sh-handle-set-file-modes)
3263         (tramp-sh-handle-file-name-all-completions)
3264         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
3265         (tramp-do-copy-or-rename-file-directly)
3266         (tramp-do-copy-or-rename-file-out-of-band)
3267         (tramp-sh-handle-make-directory)
3268         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
3269         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
3270         (tramp-sh-handle-start-file-process)
3271         (tramp-sh-handle-file-local-copy)
3272         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
3273         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
3274         (tramp-find-file-exists-command, tramp-open-shell)
3275         (tramp-find-shell)
3276         (tramp-open-connection-setup-interactive-shell)
3277         (tramp-find-inline-encoding, tramp-find-inline-compress)
3278         (tramp-compute-multi-hops, tramp-maybe-open-connection)
3279         (tramp-wait-for-output, tramp-send-command-and-check)
3280         (tramp-send-command-and-read, tramp-get-remote-path)
3281         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
3282         (tramp-get-ls-command-with-quoting-style)
3283         (tramp-get-test-command, tramp-get-remote-ln)
3284         (tramp-get-remote-perl, tramp-get-remote-stat)
3285         (tramp-get-remote-readlink, tramp-get-remote-trash)
3286         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
3287         (tramp-get-remote-inotifywait, tramp-get-remote-id)
3288         (tramp-get-remote-python):
3289         * lisp/net/tramp-smb.el (tramp-smb-errors)
3290         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
3291         (tramp-smb-handle-delete-directory)
3292         (tramp-smb-handle-delete-file)
3293         (tramp-smb-handle-file-local-copy)
3294         (tramp-smb-handle-make-directory)
3295         (tramp-smb-handle-make-directory-internal)
3296         (tramp-smb-handle-make-symbolic-link)
3297         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
3298         (tramp-smb-handle-set-file-modes)
3299         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
3300         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
3301         (tramp-process-actions):
3302         Generate diagnostics according to ‘text-quoting-style’, by
3303         using curved quotes in format strings and ‘format-message’
3304         when appropriate.
3305         * lisp/net/tramp-compat.el (format-message):
3306         Define a replacement, if it’s an older version of Emacs
3307         that doesn’t have it already.
3309         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
3311 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
3313         Fix documentation for `save-excursion'
3314         * doc/lispref/positions.texi (Excursions):
3315         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
3316         (Template for save-excursion, Point and mark): `save-excursion'
3317         does not save&restore the mark any more.
3319 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
3321         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
3322         New defconsts.
3323         (tramp-do-file-attributes-with-stat)
3324         (tramp-do-directory-files-and-attributes-with-stat): Use them.
3325         (tramp-convert-file-attributes): Remove double slashes in symlinks.
3326         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
3327         Handle symlinks with "//" in the file name.
3329         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
3331 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
3333         Fix cl-subseq and cl-concatenate
3334         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
3335         seq functions.
3336         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
3337         seq-concatenate.
3339 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
3341         Fix full-screen code when there is no window manager (Bug#21317)
3342         * src/xterm.h (x_wm_supports): Declare external.
3343         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
3344         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
3345         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
3346         `fullscreen' frame parameter.
3347         * gtkutil.c (x_wm_set_size_hint): Set size hints when running
3348         without a window manager.
3350 2015-08-24  Glenn Morris  <rgm@gnu.org>
3352         * lisp/version.el (emacs-version): No longer include build host
3353         * doc/lispref/intro.texi (Version Info): Update example.
3355 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
3357         * doc/lispref/elisp.texi: Fix typo in previous change.
3359         More-conservative ‘format’ quote restyling
3360         Instead of restyling curved quotes for every call to ‘format’,
3361         create a new function ‘format-message’ that does the restyling,
3362         and using the new function instead of ‘format’ only in contexts
3363         where this seems appropriate.
3364         Problem reported by Dmitry Gutov and Andreas Schwab in:
3365         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
3366         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
3367         * doc/lispref/commands.texi (Using Interactive):
3368         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
3369         * doc/lispref/display.texi (Displaying Messages, Progress):
3370         * doc/lispref/elisp.texi:
3371         * doc/lispref/help.texi (Keys in Documentation):
3372         * doc/lispref/minibuf.texi (Minibuffer Misc):
3373         * doc/lispref/strings.texi (Formatting Strings):
3374         * etc/NEWS:
3375         Document the changes.
3376         * lisp/abbrev.el (expand-region-abbrevs):
3377         * lisp/apropos.el (apropos-library):
3378         * lisp/calc/calc-ext.el (calc-record-message)
3379         (calc-user-function-list):
3380         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
3381         * lisp/calc/calc-lang.el (math-read-big-balance):
3382         * lisp/calc/calc-store.el (calc-edit-variable):
3383         * lisp/calc/calc-units.el (math-build-units-table-buffer):
3384         * lisp/calc/calc-yank.el (calc-edit-mode):
3385         * lisp/calendar/icalendar.el (icalendar-export-region)
3386         (icalendar--add-diary-entry):
3387         * lisp/cedet/mode-local.el (mode-local-print-binding)
3388         (mode-local-describe-bindings-2):
3389         * lisp/cedet/semantic/complete.el (semantic-completion-message):
3390         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
3391         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
3392         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
3393         * lisp/descr-text.el (describe-text-properties-1, describe-char):
3394         * lisp/dframe.el (dframe-message):
3395         * lisp/dired-aux.el (dired-query):
3396         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
3397         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
3398         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
3399         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
3400         (cconv-analyze-form):
3401         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
3402         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
3403         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
3404         * lisp/emacs-lisp/edebug.el (edebug-format):
3405         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
3406         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
3407         (eldoc-message):
3408         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
3409         * lisp/emacs-lisp/find-func.el (find-function-library):
3410         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
3411         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
3412         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
3413         * lisp/emacs-lisp/package.el (package-compute-transaction)
3414         (package-install-button-action, package-delete-button-action)
3415         (package-menu--list-to-prompt):
3416         * lisp/emacs-lisp/timer.el (timer-event-handler):
3417         * lisp/emacs-lisp/warnings.el (lwarn, warn):
3418         * lisp/emulation/viper-cmd.el:
3419         (viper-toggle-parse-sexp-ignore-comments)
3420         (viper-kill-buffer, viper-brac-function):
3421         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
3422         * lisp/facemenu.el (facemenu-add-new-face):
3423         * lisp/faces.el (face-documentation, read-face-name)
3424         (face-read-string, read-face-font, describe-face):
3425         * lisp/files.el (find-alternate-file, hack-local-variables)
3426         (hack-one-local-variable--obsolete, write-file)
3427         (basic-save-buffer, delete-directory):
3428         * lisp/format.el (format-write-file, format-find-file)
3429         (format-insert-file):
3430         * lisp/help-fns.el (help-fns--key-bindings)
3431         (help-fns--compiler-macro, help-fns--obsolete)
3432         (help-fns--interactive-only, describe-function-1)
3433         (describe-variable):
3434         * lisp/help.el (describe-mode):
3435         * lisp/info-xref.el (info-xref-output):
3436         * lisp/info.el (Info-virtual-index-find-node)
3437         (Info-virtual-index, info-apropos):
3438         * lisp/international/kkc.el (kkc-error):
3439         * lisp/international/mule-cmds.el:
3440         (select-safe-coding-system-interactively)
3441         (select-safe-coding-system, describe-input-method):
3442         * lisp/international/mule-conf.el (code-offset):
3443         * lisp/international/mule-diag.el (describe-character-set)
3444         (list-input-methods-1):
3445         * lisp/international/quail.el (quail-error):
3446         * lisp/minibuffer.el (minibuffer-message):
3447         * lisp/mpc.el (mpc--debug):
3448         * lisp/msb.el (msb--choose-menu):
3449         * lisp/net/ange-ftp.el (ange-ftp-message):
3450         * lisp/net/gnutls.el (gnutls-message-maybe):
3451         * lisp/net/newst-backend.el (newsticker--sentinel-work):
3452         * lisp/net/newst-treeview.el (newsticker--treeview-load):
3453         * lisp/net/nsm.el (nsm-query-user):
3454         * lisp/net/rlogin.el (rlogin):
3455         * lisp/net/soap-client.el (soap-warning):
3456         * lisp/net/tramp.el (tramp-debug-message):
3457         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
3458         * lisp/nxml/nxml-parse.el (nxml-parse-error):
3459         * lisp/nxml/rng-cmpct.el (rng-c-error):
3460         * lisp/nxml/rng-match.el (rng-compile-error):
3461         * lisp/nxml/rng-uri.el (rng-uri-error):
3462         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
3463         * lisp/org/org-ctags.el:
3464         (org-ctags-ask-rebuild-tags-file-then-find-tag):
3465         * lisp/proced.el (proced-log):
3466         * lisp/progmodes/ebnf2ps.el (ebnf-log):
3467         * lisp/progmodes/flymake.el (flymake-log):
3468         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
3469         * lisp/replace.el (occur-1):
3470         * lisp/simple.el (execute-extended-command)
3471         (undo-outer-limit-truncate, define-alternatives):
3472         * lisp/startup.el (command-line):
3473         * lisp/subr.el (error, user-error, add-to-list):
3474         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
3475         (tutorial--find-changed-keys):
3476         * src/callint.c (Fcall_interactively):
3477         * src/editfns.c (Fmessage, Fmessage_box):
3478         Restyle the quotes of format strings intended for use as a
3479         diagnostic, when restyling seems appropriate.
3480         * lisp/subr.el (format-message): New function.
3481         * src/doc.c (Finternal__text_restyle): New function.
3482         (syms_of_doc): Define it.
3484 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
3486         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
3488 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
3490         python.el: Fix python-shell-buffer-substring on indented code
3491         (Bug#21086)
3492         * lisp/progmodes/python.el (python-shell-buffer-substring):
3493         Respect current line indentation when calculating string.
3494         * test/automated/python-tests.el
3495         (python-shell-buffer-substring-10)
3496         (python-shell-buffer-substring-11)
3497         (python-shell-buffer-substring-12): New tests.
3499 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
3501         Fix minor glitches from ‘format’ reversion
3502         * doc/lispref/strings.texi (Formatting Strings):
3503         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
3504         Documentation’, not below.
3505         * src/syntax.c (Finternal_describe_syntax_value):
3506         Prefer AUTO_STRING to build_string where either will do, as
3507         AUTO_STRING is a bit faster.
3509 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
3511         python.el: Defer shell setup code until first interactive prompt
3512         * lisp/progmodes/python.el
3513         (python-shell-comint-watch-for-first-prompt-output-filter): New
3514         function.
3515         (inferior-python-mode): Use it.
3516         (python-shell-first-prompt-hook): New hook.
3517         (python-shell-send-setup-code)
3518         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
3519         this hook instead of inferior-python-hook.
3521 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
3523         Remove the calls to `seq-into` from `seq-concatenate`
3524         Since most new types of seq would have to be defined as sequences (cons
3525         cells or CL structs, mostly), there is no need to convert the seqs to
3526         sequences (which can be a fairly expensive operation).
3527         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
3528         sequences.
3530 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
3532         python.el: Fix completion for pdb interactions
3533         * lisp/progmodes/python.el (python-shell-completion-setup-code):
3534         Simplify.  Toggle print_mode for native wrapped completer.
3535         (python-shell-completion-native-setup): Ensure process buffer.
3536         Add print_mode attribute to completer wrapper to toggle returning
3537         or printing candidates.
3538         (python-shell-completion-native-get-completions): Cleanup.
3539         (python-shell-completion-get-completions): Cleanup.
3540         (python-shell-completion-at-point): Perform prompt checks.  Force
3541         fallback completion in pdb interactions.
3543 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
3545         Make seq.el more extensible by using cl-defmethod
3546         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
3547         make it easier to extend seq.el with new "seq types".
3548         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
3549         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
3550         subseq in cl-extra.el, and use it in seq.el.
3552 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
3554         python.el: Fix prompt detection with user overridden interpreter
3555         * lisp/progmodes/python.el (python-shell-prompt-detect): Honor
3556         buffer local python-shell-interpreter and
3557         python-shell-interpreter-interactive-arg.
3559 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
3561         Support exec-directory with non-ASCII characters on Windows
3562         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
3563         in the system's ANSI codepage, when it is used for invoking
3564         cmdproxy.
3566 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
3568         Revert "Extend ‘format’ to translate curved quotes"
3569         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
3571         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
3572         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
3574 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
3576         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers): Clarify
3577         "invisible window".
3579 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
3581         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
3582         magic-fallback-mode-alist.
3584 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
3586         python.el: fallback completion, ffap and eldoc setup enhancements
3587         Setup codes are now sent continuously so that the current frame is
3588         always taken into account.  This allows working within debuggers
3589         and always keeping a fresh version of setup codes that will return
3590         proper results.
3591         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
3592         (python-shell-send-setup-code): Send code only when
3593         python-shell-setup-codes is non-nil.
3594         (python-shell-completion-string-code): Cleanup trailing newline.
3595         (python-shell-completion-get-completions): Always use
3596         python-shell-completion-setup-code.
3597         (python-ffap-setup-code): Work with any object, not only modules.
3598         (python-ffap-string-code): Cleanup trailing newline.
3599         (python-ffap-module-path): Always use python-ffap-setup-code.
3600         (python-eldoc-string-code): Cleanup trailing newline.
3601         (python-eldoc--get-doc-at-point): Always use
3602         python-eldoc-setup-code.  Return non-nil only if docstring is
3603         found.
3605         python.el: Increase native completion robustness.
3606         * lisp/progmodes/python.el (python-shell-completion-native-setup):
3607         Make completer print real candidates and just return dummy ones to
3608         avoid input modification.
3609         (python-shell-completion-native-get-completions): Set
3610         comint-redirect-insert-matching-regexp to non-nil and make
3611         comint-redirect-finished-regexp match the last dummy candidate.
3612         Use python-shell-accept-process-output to wait for the full list
3613         of candidates.
3615 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
3617         Fix invocation of programs via cmdproxy.exe
3618         * src/w32proc.c (sys_spawnve): Use exec-directory, not
3619         invocation-directory, for finding cmdproxy.exe.  When Emacs is
3620         run from the source tree, look for cmdproxy.exe in the same source
3621         tree.  (Bug#21323)
3623 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
3625         Handle comments inside unquoted URIs in css-mode
3626         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
3627         (css-syntax-propertize-function): New defconst.
3628         (css--font-lock-keywords): Handle parens around unquoted URIs.
3629         (css-mode): Set `syntax-propertize-function'.
3631 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
3633         Support invocation of Hunspell with multiple dictionaries
3634         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file): Support
3635         lists of dictionaries of the form "DICT1,DICT2,...".
3636         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
3638         Minor formatting changes in ispell.el
3639         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
3640         (ispell-print-if-debug, ispell-aspell-find-dictionary)
3641         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
3642         (ispell-hunspell-dictionary-alist)
3643         (ispell-hunspell-fill-dictionary-entry)
3644         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
3645         (ispell-buffer-with-debug, ispell-complete-word)
3646         (ispell-current-dictionary, ispell-current-personal-dictionary)
3647         (ispell-accept-output, ispell-minor-mode)
3648         (ispell-personal-dictionary, ispell-dictionary-alist)
3649         (ispell-really-aspell, ispell-really-hunspell)
3650         (ispell-encoding8-command, ispell-aspell-supports-utf8)
3651         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
3652         Fix whitespace, inconsistent capitalization, and arguments in doc
3653         strings.
3655 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
3657         In ‘adjust-window-trailing-edge’ fix bug with size-preserved windows.
3658         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
3659         function refused to resize a size-preserved window.
3661 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
3663         Improve documentation of 'window-use-time'
3664         * doc/lispref/windows.texi (Selecting Windows): Improve
3665         documentation and indexing of 'window-use-time'.
3667 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
3669         * lisp/progmodes/cc-*.el: Fix up commenting style
3670         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
3671         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
3672         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
3673         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
3674         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
3675         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
3676         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
3677         Fix up commenting style.
3679 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
3681         text-quoting-style in emacs-lisp diagnostics
3682         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
3683         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
3684         (ad-disable-advice, ad-remove-advice, ad-set-argument)
3685         (ad-set-arguments):
3686         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
3687         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
3688         (byte-optimize-while, byte-optimize-apply):
3689         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
3690         (byte-compile-log-file, byte-compile-format-warn)
3691         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
3692         (byte-compile-cl-warn)
3693         (byte-compile-warn-about-unresolved-functions)
3694         (byte-compile-file, byte-compile-fix-header)
3695         (byte-compile--declare-var, byte-compile-file-form-defmumble)
3696         (byte-compile-form, byte-compile-normal-call)
3697         (byte-compile-variable-ref, byte-compile-variable-set)
3698         (byte-compile-subr-wrong-args, byte-compile-setq-default)
3699         (byte-compile-negation-optimizer)
3700         (byte-compile-condition-case--old)
3701         (byte-compile-condition-case--new, byte-compile-save-excursion)
3702         (byte-compile-defvar, byte-compile-autoload)
3703         (byte-compile-lambda-form)
3704         (byte-compile-make-variable-buffer-local, display-call-tree)
3705         (batch-byte-compile):
3706         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
3707         (cconv-analyze-form):
3708         * lisp/emacs-lisp/chart.el (chart-space-usage):
3709         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
3710         (check-declare-warn, check-declare-file)
3711         (check-declare-directory):
3712         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
3713         (checkdoc-message-text-engine):
3714         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
3715         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
3716         (cl-symbol-macrolet):
3717         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
3718         * lisp/emacs-lisp/copyright.el (copyright)
3719         (copyright-update-directory):
3720         * lisp/emacs-lisp/edebug.el (edebug-read-list):
3721         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
3722         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
3723         (eieio-oref, eieio-oset-default):
3724         * lisp/emacs-lisp/eieio-speedbar.el:
3725         (eieio-speedbar-child-make-tag-lines)
3726         (eieio-speedbar-child-description):
3727         * lisp/emacs-lisp/eieio.el (defclass, change-class):
3728         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
3729         (elint-init-form, elint-check-defalias-form)
3730         (elint-check-let-form):
3731         * lisp/emacs-lisp/ert.el (ert-get-test):
3732         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
3733         (find-function-library):
3734         * lisp/emacs-lisp/generator.el (iter-yield):
3735         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
3736         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
3737         * lisp/emacs-lisp/package-x.el (package-upload-file):
3738         * lisp/emacs-lisp/package.el (package-version-join)
3739         (package-disabled-p, package-activate-1, package-activate)
3740         (package--download-one-archive)
3741         (package--download-and-read-archives)
3742         (package-compute-transaction, package-install-from-archive)
3743         (package-install, package-install-selected-packages)
3744         (package-delete, package-autoremove)
3745         (package-install-button-action, package-delete-button-action)
3746         (package-menu-hide-package, package-menu--list-to-prompt)
3747         (package-menu--perform-transaction)
3748         (package-menu--find-and-notify-upgrades):
3749         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
3750         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
3751         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
3752         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
3753         * lisp/emacs-lisp/smie.el (smie-config-save):
3754         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
3755         * lisp/emacs-lisp/testcover.el (testcover-1value):
3756         Use curved quotes in diagnostic format strings.
3758 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
3760         python.el: Ensure remote process-environment on non-interactive processes
3761         * lisp/progmodes/python.el
3762         (python-shell-tramp-refresh-process-environment): New function.
3763         (python-shell-with-environment): Use it.
3764         * test/automated/python-tests.el (python-shell-with-environment-2):
3765         Update.
3767         python.el: Enhancements to process environment setup.
3768         * lisp/progmodes/python.el (python-shell-process-environment)
3769         (python-shell-extra-pythonpaths, python-shell-exec-path)
3770         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
3771         (python-shell-setup-codes): Remove :safe.
3772         (python-shell-remote-exec-path): New defcustom.
3773         (python-shell--add-to-path-with-priority): New macro.
3774         (python-shell-calculate-pythonpath): Give priority to
3775         python-shell-extra-pythonpaths.  Update docstring.
3776         (python-shell-calculate-process-environment): Give priority to
3777         python-shell-process-environment.  Update docstring.
3778         (python-shell-calculate-exec-path): Give priority to
3779         python-shell-exec-path and calculated virtualenv bin directory.
3780         Update docstring.
3781         (python-shell-tramp-refresh-remote-path): New function.
3782         (python-shell-with-environment): Use it when working remotely and
3783         do not modify tramp-remote-path.  Allow nesting.
3784         (python-shell-calculate-command): Remove useless
3785         python-shell-with-environment call.
3786         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
3787         (python-shell-calculate-pythonpath-2)
3788         (python-shell-calculate-process-environment-6)
3789         (python-shell-calculate-process-environment-7)
3790         (python-shell-calculate-process-environment-8)
3791         (python-shell-calculate-exec-path-3)
3792         (python-shell-calculate-exec-path-4)
3793         (python-shell-calculate-exec-path-5)
3794         (python-shell-calculate-exec-path-6)
3795         (python-shell-with-environment-3): New tests.
3796         (python-shell-calculate-process-environment-2)
3797         (python-shell-calculate-process-environment-3)
3798         (python-shell-calculate-process-environment-4)
3799         (python-shell-calculate-process-environment-5)
3800         (python-shell-calculate-exec-path-1)
3801         (python-shell-calculate-exec-path-2)
3802         (python-shell-with-environment-1)
3803         (python-shell-with-environment-2): Update and simplify.
3805 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
3807         Avoid hard-coding "M-x command" in docstrings
3808         * lisp/calendar/todo-mode.el (todo-mode):
3809         * lisp/desktop.el (desktop-save-mode):
3810         * lisp/edmacro.el (edit-kbd-macro):
3811         * lisp/emacs-lisp/package.el (package-menu-execute):
3812         * lisp/emulation/viper-cmd.el (viper-ask-level):
3813         * lisp/emulation/viper-init.el (viper-expert-level):
3814         * lisp/filesets.el (filesets-add-buffer):
3815         * lisp/follow.el (follow-mode):
3816         * lisp/gnus/auth-source.el (auth-sources):
3817         * lisp/international/ogonek.el (ogonek-informacja)
3818         (ogonek-information):
3819         * lisp/net/tramp.el (tramp-process-actions):
3820         * lisp/org/org-gnus.el (org-gnus-no-new-news):
3821         * lisp/org/org.el (org-ellipsis):
3822         * lisp/progmodes/python.el (python-shell-get-process-or-error):
3823         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
3824         * lisp/server.el (server-start):
3825         * lisp/type-break.el (type-break-noninteractive-query):
3826         * lisp/userlock.el (ask-user-about-supersession-help):
3827         * lisp/whitespace.el (whitespace-report-region):
3828         Prefer (substitute-command-keys "`\\[foo-command]'")
3829         to "`M-x foo-command'" in docstrings and the like.
3831 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
3833         Use add-function for prettify-symbols-compose-predicate
3834         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
3835         prettify-symbols-compose-predicate in terms of add-function.
3836         * etc/NEWS: Mention prettify-symbols-compose-predicate and
3837         prettify-symbols-mode support in tex-mode.
3839 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
3841         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun
3842         (smie-indent-exps, smie-indent-keyword): Use it.
3843         * test/indent/css-mode.css: Test alignment with leading comment.
3845 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
3847         Respect text-quoting-style in (*Finder*) menus
3848         * lisp/info.el (info--prettify-description):
3849         Treat description as a docstring, so that it's requoted as
3850         per text-quoting-style.
3852 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
3854         Document `window-use-time' in Elisp manual
3855         * doc/lispref/windows.texi (Selecting Windows): Document
3856         `window-use-time'.
3858 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
3860         A better fix for bug#21303
3861         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.  This is a
3862         cleaner fix for Bug#21260 than the previous change.
3864 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
3866         Respect text-quoting-style in calc
3867         In calc, tespect text-quoting-style preference in diagnostic
3868         formats and fix a few similar problems in docstrings.
3869         * lisp/calc/calc-aent.el (math-read-factor):
3870         * lisp/calc/calc-embed.el (calc-do-embedded):
3871         * lisp/calc/calc-ext.el (calc-user-function-list)
3872         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
3873         * lisp/calc/calc-help.el (calc-describe-key)
3874         (calc-describe-thing):
3875         * lisp/calc/calc-lang.el (calc-c-language)
3876         (math-parse-fortran-vector-end, math-parse-tex-sum)
3877         (math-parse-eqn-matrix, math-parse-eqn-prime)
3878         (calc-yacas-language, calc-maxima-language, calc-giac-language)
3879         (math-read-big-rec, math-read-big-balance):
3880         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
3881         (calc-auto-recompute):
3882         * lisp/calc/calc-prog.el (calc-user-define-invocation)
3883         (math-do-arg-check):
3884         * lisp/calc/calc-store.el (calc-edit-variable):
3885         * lisp/calc/calc-units.el (math-build-units-table-buffer):
3886         * lisp/calc/calc-vec.el (math-read-brackets):
3887         * lisp/calc/calc-yank.el (calc-edit-mode):
3888         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
3889         Use curved quotes in diagnostic format strings.
3890         * lisp/calc/calc-help.el (calc-describe-thing):
3891         Format docstrings with substitute-command-keys.
3892         * lisp/calc/calc-help.el (calc-j-prefix-help):
3893         * lisp/calc/calc-misc.el (calc-help):
3894         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
3895         Escape a docstring "`".
3897 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
3899         Fix documentation of 'menu-set-font' and 'set-frame-font'
3900         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
3901         * doc/lispref/frames.texi (Frame Font): Document that
3902         set-frame-font with the last argument 't' will also make the font
3903         the default for the future GUI frames.
3905         Document '--create-frame' option to emacsclient
3906         * doc/emacs/misc.texi (emacsclient Options): Document the
3907         '--create-frame' option.  (Bug#21308)
3909 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
3911         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
3913 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
3915         Document 'get-mru-window' in the ELisp manual
3916         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
3917         'get-mru-window'.  (Bug#21306)
3919         Clarify documentation of 'get-buffer-window-list'
3920         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
3921         current window, if relevant, will be the first in the list
3922         returned by 'get-buffer-window-list'.
3923         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
3925 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
3927         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
3928         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
3929         `switch-to-buffer'.
3931 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
3933         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
3934         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
3935         `display-buffer' instead of `switch-to-buffer'.
3937 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
3939         Follow user preference in calendar diagnostics
3940         Respect text-quoting-style preference in diagnostic formats by
3941         using curved quotes (which are translated as per text-quoting-style)
3942         instead of grave accent and apostrophe (which are not).
3943         * lisp/calendar/appt.el (appt-display-message):
3944         * lisp/calendar/diary-lib.el (diary-check-diary-file)
3945         (diary-mail-entries, diary-from-outlook):
3946         * lisp/calendar/icalendar.el (icalendar-export-region)
3947         (icalendar--convert-float-to-ical)
3948         (icalendar--convert-date-to-ical)
3949         (icalendar--convert-ical-to-diary)
3950         (icalendar--convert-recurring-to-diary)
3951         (icalendar--add-diary-entry):
3952         * lisp/calendar/time-date.el (format-seconds):
3953         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
3954         (timeclock-make-hours-explicit):
3955         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
3956         (todo-item-mark, todo-check-format)
3957         (todo-insert-item--next-param, todo-edit-item--next-key)
3958         (todo-mode):
3959         Use curved quotes in diagnostic format strings.
3960         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
3961         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
3962         Just use straight quoting for simple test case.
3964 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
3966         * src/gfilenotify.c (Fgfile_add_watch):
3967         Handle errors from g_file_monitor.
3969 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
3971         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
3972         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
3973         frame" instead of "non-minibuffer frame".
3975         Fix frame geometry related text
3976         * doc/lispref/frames.texi (Frame Layout): Rename
3977         `x-frame-geometry' to `frame-geometry'.
3978         * doc/lispref/frames.texi (Mouse Position):
3979         * doc/lispref/windows.texi (Coordinates and Windows): Use
3980         `set-mouse-absolute-pixel-position' instead of
3981         `x-set-mouse-absolute-pixel-position'.
3983         Sanitize frame geometry related functions
3984         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
3985         (Fx_frame_edges): Rename to Fns_frame_edges.
3986         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
3987         (Fx_frame_edges): Rename to Fw32_frame_edges.
3988         (Fx_mouse_absolute_pixel_position): Rename to
3989         Fw32_mouse_absolute_pixel_position.
3990         (Fx_set_mouse_absolute_pixel_position): Rename to
3991         Fw32_set_mouse_absolute_pixel_position.
3992         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
3993         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
3994         (ns-frame-edges, w32-mouse-absolute-pixel-position)
3995         (x-mouse-absolute-pixel-position)
3996         (w32-set-mouse-absolute-pixel-position)
3997         (x-set-mouse-absolute-pixel-position): Declare.
3998         (frame-geometry, mouse-absolute-pixel-position)
3999         (set-mouse-absolute-pixel-position): New functions.
4000         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
4002 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
4004         Fix MinGW64 build broken by latest w32uniscribe.c changes
4005         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
4006         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
4007         (Bug#21260)
4009 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
4011         Add TeX defaults for prettify-symbol-mode
4012         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Rename
4013         from tex-prettify-symbols-alist.
4014         (tex--prettify-symbols-compose-p): New function.
4015         (tex-common-initialization): Use them as prettify-symbols-alist
4016         and prettify-symbols-compose-predicate.
4018         Generalize prettify-symbols to arbitrary modes
4019         * lisp/progmodes/prog-mode.el
4020         (prettify-symbols-default-compose-p): New function.
4021         (prettify-symbols-compose-predicate): New variable.
4022         (prettify-symbols--compose-symbol): Use it.
4024 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
4026         Don't quote symbols 'like-this' in docstrings etc.
4027         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
4028         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
4029         * lisp/allout.el (allout-add-resumptions, allout-mode):
4030         * lisp/calculator.el (calculator-operators):
4031         * lisp/cedet/data-debug.el (dd-propertize):
4032         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
4033         * lisp/cedet/semantic/analyze/debug.el:
4034         (semantic-analyzer-debug-global-miss-text):
4035         * lisp/cedet/semantic/lex-spp.el:
4036         (semantic-lex-spp-replace-or-symbol-or-keyword):
4037         * lisp/cedet/semantic/symref.el:
4038         (semantic-symref-cleanup-recent-buffers-fcn):
4039         * lisp/cedet/semantic/tag.el (semantic-tag-class):
4040         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
4041         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
4042         * lisp/gnus/pop3.el (pop3-authentication-scheme):
4043         * lisp/help-fns.el (describe-function-orig-buffer):
4044         * lisp/imenu.el (imenu--history-list):
4045         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
4046         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
4047         (feedmail-queue-default-file-slug)
4048         (feedmail-queue-buffer-file-name):
4049         * lisp/net/mairix.el (mairix-searches-mode-map):
4050         * lisp/net/newst-backend.el (newsticker-retrieval-method)
4051         (newsticker-auto-mark-filter-list):
4052         * lisp/obsolete/vi.el (vi-mode):
4053         * lisp/progmodes/cc-engine.el (c-literal-type):
4054         * lisp/progmodes/cpp.el (cpp-face):
4055         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
4056         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
4057         * lisp/progmodes/pascal.el (pascal-auto-lineup):
4058         * lisp/progmodes/prog-mode.el (prog-widen):
4059         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
4060         (verilog-auto-lineup, verilog-auto-reset-widths)
4061         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
4062         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
4063         (flyspell-maybe-correct-doubling):
4064         * lisp/textmodes/table.el (table-justify, table-justify-cell)
4065         (table-justify-row, table-justify-column, table-insert-sequence)
4066         (table--justify-cell-contents):
4067         * lisp/url/url-auth.el (url-get-authentication):
4068         * lisp/window.el (display-buffer-record-window):
4069         * lisp/xml.el (xml-parse-file, xml-parse-region):
4070         * src/gfilenotify.c (Fgfile_add_watch):
4071         Don't quote symbols with apostrophes in doc strings.
4072         Use asymmetric quotes instead.
4073         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
4074         Likewise for symbol in diagnostic.
4075         * lisp/image.el (image-extension-data):
4076         * lisp/register.el (frame-configuration-to-register):
4077         * src/buffer.c (syms_of_buffer):
4078         Remove bogus apostrophes after symbols.
4079         * lisp/thumbs.el (thumbs-conversion-program):
4080         Quote Lisp string values using double-quotes, not apostrophes.
4082 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
4084         Describe frame geometry and related functions in Elisp manual
4085         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
4086         (Showing Images): Update references.
4087         * doc/lispref/elisp.texi (Top): Update node listing.
4088         * doc/lispref/frames.texi (Frame Geometry): New node.  Move
4089         `Size and Position' section here.
4090         (Size Parameters): Update references.
4091         (Mouse Position): Update references and nomenclature.  Describe
4092         new functions `x-mouse-absolute-pixel-position' and
4093         `x-set-mouse-absolute-pixel-position'.
4094         * doc/lispref/windows.texi (Window Sizes): Update references.
4095         (Resizing Windows): Update references.  Move description of
4096         `fit-frame-to-buffer' here.
4097         (Coordinates and Windows): Update nomenclature and references.
4098         Describe new arguments of `window-edges'.  Comment out
4099         descriptions of `window-left-column', `window-top-line',
4100         `window-pixel-left' and `window-pixel-top'.  Describe
4101         `window-absolute-pixel-position'.
4103 2015-08-20  Alan Mackenzie  <acm@muc.de>
4105         Handling of `c-parse-state'.  Fix low level bug.
4106         progmodes/cc-engine.el (c-remove-stale-state-cache-backwards): Add
4107         "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
4109 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
4111         In `widget-color--choose-action' quit *Color* window instead of deleting it
4112         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
4113         window instead of deleting it.
4115 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
4117         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
4118         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
4119         determine whether frame has a titlebar.
4120         Suggested by Eli Zaretskii <eliz@gnu.org>
4122 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
4124         Add a prettify-symbols-alist for (La)TeX
4125         * tex-mode.el (tex-prettify-symbols-alist): New variable holding
4126         an alist suitable as prettify-symbols-alist in (La)TeX modes.
4128 2015-08-19  Alan Mackenzie  <acm@muc.de>
4130         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
4131         Fixes debbugs#21275.
4132         In Emacs >= 25, let electric-pair-mode take precedence over
4133         delete-selection-mode.
4134         delsel.el (delete-selection-uses-region-p): New function, previously a
4135         lambda expression in a property value for `self-insert-command'.
4136         (top-level) Set the `delete-selection' property of `self-insert-command'
4137         to `delete-selection-uses-region-p'.
4138         progmodes/cc-cmds.el (top-level): Give the `delete-selection' property
4139         for c-electric-\(brace\|paren\) the value
4140         `delete-selection-uses-region-p' when the latter function exists.
4142 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
4144         Fix key binding quoting in tutorial *Help*
4145         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
4146         When generating help for custom key bindings, use the user-preferred
4147         quoting style rather than hardcoding the grave style.
4149 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
4151         Improve and future-proof OTF fonts support in w32uniscribe.c
4152         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
4153         about the expected results and why the new Uniscribe APIs are not
4154         used in this function.
4155         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
4156         (ScriptGetFontFeatureTags_Proc): New function typedefs.
4157         (uniscribe_new_apis): New static variable.
4158         (uniscribe_check_features): New function, implements OTF features
4159         verification while correctly accounting for features in the list
4160         after the nil member, if any.
4161         (uniscribe_check_otf_1): New function, retrieves the features
4162         supported by the font for the requested script and language using
4163         the Uniscribe APIs available from Windows Vista onwards.
4164         (uniscribe_check_otf): If the new Uniscribe APIs are available,
4165         use them in preference to reading the font data directly.  Call
4166         uniscribe_check_features to verify that the requested features are
4167         supported, replacing the original incomplete code.
4168         (syms_of_w32uniscribe): Initialize function pointers for the new
4169         Uniscribe APIs.  (Bug#21260)
4170         (otf_features): Scan the script, langsys, and feature arrays back
4171         to front, so that the result we return has them in alphabetical
4172         order, like ftfont.c does.
4173         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
4174         New variable for debugging w32uniscribe.c code.
4176 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
4178         * isearch.el (isearch-search-fun-default): Revert a5bdb87
4179         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
4180         clause of `isearch-search-fun-default'. That lax variable does not
4181         refer to lax-whitespacing.  Related to (bug#21777).
4182         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
4183         * character-fold.el (character-fold-search): Set to nil.
4184         Default to nil for now, until someone implements proper
4185         lax-whitespacing with char-fold searching.
4187 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
4189         Fix doc-string of `help-mode-finish'.
4190         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
4192         In nsimage.m include coding.h (Bug#21292)
4193         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
4195         Move window edge functions to Elisp.
4196         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
4197         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
4198         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
4199         Move to window.el.
4200         (calc_absolute_offset): Remove.
4201         * lisp/frame.el (frame-edges): New function.
4202         * lisp/window.el (window-edges, window-pixel-edges)
4203         (window-absolute-pixel-edges): Move here from window.c.
4204         (window-body-edges, window-body-pixel-edges)
4205         (window-absolute-body-pixel-edges): Move here from window.c and
4206         rename "inside" to "body".  Keep old names as aliases.
4207         (window-absolute-pixel-position): New function.
4209 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
4211         [Gnus]: Use overlay functions directly
4212         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
4213         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
4214         (gnus-article-highlight-signature, gnus-article-extend-url-button)
4215         (gnus-article-add-button, gnus-insert-prev-page-button)
4216         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
4217         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
4218         (gnus-cite-add-face):
4219         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
4220         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
4221         (gnus-tree-recenter, gnus-highlight-selected-tree):
4222         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
4223         (gnus-summary-show-thread, gnus-summary-hide-thread)
4224         (gnus-highlight-selected-summary):
4225         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
4226         * lisp/gnus/message.el (message-fix-before-sending)
4227         (message-toggle-image-thumbnails):
4228         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
4229         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
4230         Use overlay functions directly instead of using gnus-overlay-*,
4231         message-overlay-*, and sieve-overlay-*.
4232         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
4233         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
4234         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
4235         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
4236         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
4237         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
4238         (message-overlay-get, message-overlay-put, message-overlays-in):
4239         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
4240         (sieve-overlays-at): Remove.
4242 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
4244         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version.
4245         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
4246         builds can use the declaration from the system headers.
4247         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
4248         definition of TITLEBAR_INFO.
4249         Suggested by Eli Zaretskii  <eliz@gnu.org>
4251 2015-08-19  Glenn Morris  <rgm@gnu.org>
4253         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
4255 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
4257         Use new q ‘format’ flag when fixing quotes in C
4258         * src/image.c (image_size_error): New function.  All uses of
4259         image_error with "Invalid image size ..."  changed to use it.
4260         * src/image.c (image_size_error, xbm_load_image, xbm_load)
4261         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
4262         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
4263         (imagemagick_load, svg_load, svg_load_image, gs_load)
4264         (x_kill_gs_process):
4265         * src/lread.c (load_warn_old_style_backquotes):
4266         * src/xfaces.c (load_pixmap):
4267         * src/xselect.c (x_clipboard_manager_error_1):
4268         Use %qs, not uLSQM and uRSQM.
4269         * src/syntax.c (Finternal_describe_syntax_value):
4270         Prefer Fsubstitute_command_keys to Fformat, as this lets
4271         us use AUTO_STRING.
4272         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
4273         as it's now guaranteed to be ASCII.
4274         * src/xselect.c (x_clipboard_manager_error_2):
4275         Avoid grave accent in low-level stderr diagnostic.
4277 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
4279         New q flag for ‘format’
4280         * doc/lispref/processes.texi (Sentinels):
4281         Don't hardwire grave quoting style in example.
4282         * doc/lispref/strings.texi (Formatting Strings):
4283         * etc/NEWS:
4284         Document new q flag.
4285         * src/editfns.c (Fformat): Implement it.
4287 2015-08-18  Daiki Ueno  <ueno@gnu.org>
4289         pinentry.el: Add debugging support
4290         * lisp/net/pinentry.el (pinentry-debug): New variable.
4291         (pinentry-debug-buffer): New variable.
4292         (pinentry--process-filter): Send input to the debug buffer, if
4293         `pinentry-debug' is set.
4295         pinentry.el: Improve multiline prompt
4296         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
4297         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
4298         command.
4300 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
4302         Fix multibyte confusion in diagnostics
4303         * src/print.c (print_error_message):
4304         Don't assume that the caller's name is unibyte.
4305         * src/xdisp.c (vadd_to_log):
4306         Don't assume that the formatted diagnostic is unibyte.
4308         Fix file name encodings in diagnostics
4309         Also, close some minor races when opening image files, by opening
4310         them once instead of multiple times.
4311         * src/gtkutil.c (xg_get_image_for_pixmap):
4312         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
4313         (svg_load):
4314         * src/nsimage.m (allocInitFromFile:):
4315         * src/xfns.c (xg_set_icon):
4316         Encode file name, since x_find_image_file no longer does that.
4317         * src/image.c (x_find_image_fd): New function.
4318         (x_find_image_file): Use it.  Do not encode resulting file name,
4319         since callers sometimes need it decoded.
4320         (slurp_file): File arg is now a fd, not a file name.
4321         All callers changed.  This saves us having to open the file twice.
4322         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
4323         (svg_load):
4324         Use x_find_image_fd and fdopen to save a file-open.
4325         Report file name that failed.
4326         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
4328 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
4330         Allow blink-matching-paren to jump off screen
4331         * doc/emacs/programs.texi (Matching): Mention the
4332         `blink-matching-paren' value `jump-offscreen'.
4333         * lisp/simple.el (blink-matching-paren): New possible value.
4334         (blink-matching-paren-on-screen): Clarify the docstring.
4335         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
4337         Refine the previous change
4338         * lisp/simple.el (blink-matching-open): Use minibuffer-message
4339         outside of save-excursion (bug#21286).
4341 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
4343         Rewrite and add frame geometry related functions.
4344         * src/frame.c (Fframe_position): New function.
4345         (Fset_frame_position): Rename parameters and rewrite doc-string.
4346         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
4347         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
4348         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
4349         Qtitle_bar_size.
4350         * src/nsfns.m (frame_geometry): New function.
4351         (Fx_frame_geometry): Call frame_geometry.
4352         (Fx_frame_edges): New function.
4353         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
4354         (GetTitleBarInfo_Proc): Define these so we can use the
4355         GetTitleBarInfo API.
4356         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
4357         (Fx_frame_geometry): Rewrite.
4358         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
4359         (Fx_set_mouse_absolute_pixel_position): New functions.
4360         * src/xfns.c (frame_geometry): New function.
4361         (Fx_frame_geometry): Call frame_geometry.
4362         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
4363         (Fx_set_mouse_absolute_pixel_position): New functions.
4365 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
4367         Improve Tramp's compatibility
4368         * lisp/net/tramp.el (tramp-get-method-parameter):
4369         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
4370         (tramp-adb-get-device):
4371         * lisp/net/trampver.el (tramp-repository-get-version):
4372         Use `tramp-compat-replace-regexp-in-string'.
4374 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
4376         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
4377         Encode/decode string.
4379 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
4381         Clarify what happens to match data on failure
4382         Problem reported by Ernesto Alfonso (Bug#21279).
4383         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
4384         Document more carefully what happens to match data after a failed
4385         search.
4386         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
4387         the return value is undefined if the last search failed.
4388         (Fmatch_data): Simplify doc string line 1.
4390 2015-08-18  Daiki Ueno  <ueno@gnu.org>
4392         Revert "pinentry.el: Support external passphrase cache"
4393         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
4394         pinentry.el shouldn't directly interact with the secrets service,
4395         but ask the caller to cache the passphrase.
4397 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
4399         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
4400         Message mode hooks.
4402 2015-08-17  Daiki Ueno  <ueno@gnu.org>
4404         epg.el: Make gpgconf output parsing future proof
4405         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
4406         --list-options" output.
4408         pinentry.el: Support external passphrase cache
4409         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
4410         (pinentry--allow-external-password-cache): New local variable.
4411         (pinentry--key-info): New local variable.
4412         (secrets-enabled, secrets-search-items, secrets-get-secret):
4413         Declare.
4414         (pinentry--send-passphrase): New function, split from
4415         `pinentry--process-filter'.
4416         (pinentry--process-filter): Use secrets.el to retrieve passphrase
4417         from login keyring.
4419         pinentry.el: Popup window for multiline prompt
4420         * lisp/net/pinentry.el (pinentry): New custom group.
4421         (pinentry-popup-prompt-window): New user option.
4422         (pinentry-prompt-window-height): New user option.
4423         (pinentry--prompt-buffer): New variable.
4424         (pinentry-prompt-mode-map): New variable.
4425         (pinentry-prompt-mode): New function.
4426         (pinentry--prompt): New function.
4427         (pinentry--process-filter): Use `pinentry--prompt' instead of
4428         `read-passwd' and `y-or-n-p'.
4430 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
4432         message.el: Silent the byte compiler
4433         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
4434         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
4435         (message-delete-overlay, message-window-inside-pixel-edges):
4436         Declare before using.
4438         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
4439         (message-window-inside-pixel-edges): XEmacs compatible functions.
4441 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
4443         * message.el (message-toggle-image-thumbnails): New command.
4445 2015-08-17  Noah Friedman  <friedman@splode.com>
4447         (blink-matching-open): Restore point before calling minibuffer-message.
4449 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
4451         * lisp/play/dunnet.el: Update version number in header (now
4452         matches help).
4454 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
4456         Curved quotes in --batch diagnostics in non-UTF-8
4457         When run with --batch, check that curved quotes are compatible with
4458         the system locale before outputting them in diagnostics.
4459         Problem reported by Eli Zaretskii in:
4460         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
4461         * lisp/startup.el (command-line): Set internal--text-quoting-flag
4462         after the standard display table is initialized.
4463         * src/doc.c (default_to_grave_quoting_style): New function.
4464         (text_quoting_style): Use it.
4465         (text_quoting_flag): New static var, visible to Lisp as
4466         internal--text-quoting-flag.
4467         * src/emacs.c: Include <wchar.h> if available.
4468         (using_utf8): New function.
4469         (main): Use it to initialize text_quoting_flag.
4470         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
4471         Don't define, as it's not needed and it clashes with wchar.h.
4473 2015-08-17  Glenn Morris  <rgm@gnu.org>
4475         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
4476         from makeinfo about spurious "Note:" cross-reference, and for grammar.
4478 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
4480         Minor change in variable initialization on MS-Windows
4481         * src/w32fns.c <after_dead_key>: Initialize to -1.
4482         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
4483         non-zero.
4485         Fix a bug with LWindow key remapping on MS-Windows
4486         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
4488 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
4490         Improve fontset support for latest OTF script tags
4491         * lisp/international/fontset.el (otf-script-alist): Add some
4492         missing script tags.
4493         (setup-default-fontset): Include settings for v2 versions of the
4494         script tags used by some modern OTF/TTF fonts.
4496 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
4498         Spelling fixes
4500 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
4502         Use curved quotes in core elisp diagnostics
4503         In the core elisp files, use curved quotes in diagnostic formats,
4504         so that they follow user preference as per ‘text-quoting-style’
4505         rather than being hard-coded to quote `like this'.
4506         * lisp/abbrev.el (expand-region-abbrevs):
4507         * lisp/button.el (button-category-symbol, button-put)
4508         (make-text-button):
4509         * lisp/cus-start.el:
4510         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
4511         (custom--sort-vars-1, load-theme):
4512         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
4513         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
4514         (cl-generic-generalizers):
4515         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
4516         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
4517         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
4518         (advice--make, define-advice):
4519         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
4520         * lisp/emacs-lisp/timer.el (timer-event-handler):
4521         * lisp/env.el (setenv):
4522         * lisp/facemenu.el (facemenu-add-new-face)
4523         (facemenu-add-new-color):
4524         * lisp/faces.el (face-documentation, read-face-name)
4525         (face-read-string, read-face-font, face-spec-set-match-display)
4526         (read-color, x-resolve-font-name):
4527         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
4528         (set-auto-mode, hack-local-variables)
4529         (hack-one-local-variable--obsolete)
4530         (dir-locals-set-directory-class, write-file)
4531         (basic-save-buffer, delete-directory, copy-directory)
4532         (recover-session, recover-session-finish, insert-directory)
4533         (file-modes-char-to-who, file-modes-symbolic-to-number)
4534         (move-file-to-trash):
4535         * lisp/font-lock.el (font-lock-fontify-buffer):
4536         * lisp/format.el (format-write-file, format-find-file)
4537         (format-insert-file):
4538         * lisp/frame.el (get-device-terminal, select-frame-by-name):
4539         * lisp/fringe.el (fringe--check-style):
4540         * lisp/help.el (describe-minor-mode-from-indicator):
4541         * lisp/image.el (image-type):
4542         * lisp/international/fontset.el (x-must-resolve-font-name):
4543         * lisp/international/mule-cmds.el (prefer-coding-system)
4544         (select-safe-coding-system-interactively)
4545         (select-safe-coding-system, activate-input-method)
4546         (toggle-input-method, describe-current-input-method):
4547         * lisp/international/mule-conf.el (code-offset):
4548         * lisp/mouse.el (minor-mode-menu-from-indicator):
4549         * lisp/replace.el (query-replace-read-from)
4550         (occur-after-change-function, occur-1):
4551         * lisp/scroll-bar.el (scroll-bar-columns):
4552         * lisp/simple.el (execute-extended-command)
4553         (undo-outer-limit-truncate, compose-mail, set-variable)
4554         (choose-completion-string, define-alternatives):
4555         * lisp/startup.el (site-run-file, tty-handle-args, )
4556         (command-line, command-line-1):
4557         * lisp/subr.el (noreturn, define-error, add-to-list)
4558         (read-char-choice):
4559         * lisp/term/common-win.el (x-handle-xrm-switch)
4560         (x-handle-name-switch, x-handle-args):
4561         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
4562         Use curved quotes in diagnostics.
4563         * lisp/international/mule.el (find-auto-coding):
4564         Use " to quote in a diagnostic, to be consistent with the rest of
4565         this file.
4567         Convert lisp/term/x-win.el to UTF-8
4568         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
4569         runtime behavior, and the file is multilingual so compile-time
4570         appearance shouldn't be an issue.
4571         * admin/notes/unicode: Document this.
4573 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
4575         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
4576         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
4577         issues and comments, bug#943.
4578         (verilog-type-font-keywords): Cycle delay operators like ##1 and
4579         ##[0:$] are now highlighted in their entirety similarly to the #
4580         delay-control operator.  Likewise, the followed-by operators #-#
4581         and #=# are no longer partially highlighed.
4582         (verilog-backward-syntactic-ws-quick)
4583         (verilog-skip-backward-comments): Minor performance improvements
4584         to buffer traversal functions for reduced latency.
4585         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
4586         keyword 'final' follows 'assert/assume/cover', then it is part of
4587         a deferred immediate assertion item and should not be treated as a
4588         final construct for indentation.  Reported by Yuri Sugihara.
4589         (verilog-do-indent): Virtual task/function/class definition lines
4590         should not be considered as declarations.  Reported by Enzo Chi.
4591         (verilog-do-indent): Do not falsely indent to '=' of
4592         property/sequence operators on subsequent lines of a multi-line
4593         statement.
4594         (verilog-assignment-operator-re): Fix '!==' operator and add
4595         support for '<->', ':/', '#-#', and '#=#' operators.
4596         (verilog-calculate-indent, verilog-label-be): Enable
4597         case-sensitive regular expression parsing when looking for
4598         keywords.
4599         (verilog-calc-1): Detect 'pure virtual method' declarations which
4600         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
4601         (verilog-backward-ws&directives): When moving back to the start of
4602         a line and the preceeding line ended with an escaped-newline, then
4603         jump up one line.  This properly consumes a multi-line
4604         pre-processor directive.  Reported by Kaushal Modi.
4605         (verilog-dpi-import-export-re, verilog-extended-complete-re)
4606         (verilog-calc-1): Teach verilog-mode to properly indent after a
4607         DPI import/export statement that resides outside of a module.
4608         Reported by Kaushal Modi.
4609         (verilog-extended-complete-re): Update regexp to match both
4610         "DPI-C" and "DPI".  Reported by Kaushal Modi.
4612 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
4614         substitute-command-keys a few more doc strings
4615         * lisp/allout.el (outlineify-sticky):
4616         * lisp/files.el (hack-one-local-variable--obsolete):
4617         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
4618         Use substitute-command-keys on some doc strings so that
4619         they don't use hard-coded key bindings or quoting styles.
4621         Fix quoting in Fformat calls
4622         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
4623         (xpm_load, xpm_load_image, pbm_load, png_load_body)
4624         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
4625         (imagemagick_load, svg_load, svg_load_image, gs_load)
4626         (x_kill_gs_process):
4627         * src/lread.c (load_warn_old_style_backquotes):
4628         * src/xfaces.c (load_pixmap):
4629         * src/xselect.c (x_clipboard_manager_error_1):
4630         Quote diagnostics according to user preference when calling
4631         Fformat or its derivatives.
4633 2015-08-15  Glenn Morris  <rgm@gnu.org>
4635         * admin/admin.el (set-version, set-copyright): Remove deleted files.
4637 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
4639         Allow describe-function helpers to access buffer-local values.
4640         This will be used by cedet/mode-local.el `describe-mode-local-override'
4641         on `help-fns-describe-function-functions' in upstream CEDET.
4642         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
4643         `describe-function'.
4644         (describe-function): Bind it, save it on the help xref stack.
4646         Handle pulse-background being nil
4647         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
4648         pulse-background, handle it being nil.
4650 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
4652         Fix "\`" confusion in Lisp strings
4653         * admin/authors.el (authors-canonical-author-name):
4654         Fix typo by using "\\`" not "\`" in string RE.
4655         * lisp/obsolete/complete.el (PC-complete-as-file-name):
4656         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
4657         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
4658         Use plain "`", not the equivalent-but-confusing "\`", in strings.
4659         * lisp/textmodes/texinfmt.el: Fix comment likewise.
4661 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
4663         Remove 'nt/zipdist.bat' (no longer used)
4664         * nt/zipdist.bat: Remove -- no longer used.
4666 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
4668         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
4669         rather than "getenforce".
4670         (tramp-sh-handle-set-file-selinux-context): Do not
4671         cache SELinux context if not all context components are given.
4673 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
4675         Add doc strings to 2 help-mode.el functions
4676         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
4677         strings.  (Bug#21263)
4679         Remove files used by the old MS-Windows specific build procedure
4680         * admin/unidata/makefile.w32-in:
4681         * doc/emacs/makefile.w32-in:
4682         * doc/lispintro/makefile.w32-in:
4683         * doc/lispref/makefile.w32-in:
4684         * doc/misc/makefile.w32-in:
4685         * leim/makefile.w32-in:
4686         * lib-src/makefile.w32-in:
4687         * lib/makefile.w32-in:
4688         * lisp/makefile.w32-in:
4689         * nt/INSTALL.OLD:
4690         * nt/config.nt:
4691         * nt/emacs-src.tags:
4692         * nt/envadd.bat:
4693         * nt/gmake.defs:
4694         * nt/makefile.w32-in:
4695         * nt/multi-install-info.bat:
4696         * nt/nmake.defs:
4697         * nt/paths.h:
4698         * src/makefile.w32-in: Files deleted.
4699         * nt/configure.bat: Remove everything except the blurb about the
4700         new build procedure.
4701         * make-dist: Remove references to makefile.w32-in in various
4702         directories, and to files in nt/ that were deleted.
4703         * etc/NEWS: Mention the fact that the files were dropped.
4705 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
4707         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
4708         (Bug#21248)
4710 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
4712         Default to inotify instead of gfile
4713         * configure.ac (with_file_notification): Fix typo that
4714         prevented suppression of file notification if HAVE_NS.
4715         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
4716         with_file_notification is 'yes' (Bug#21241).
4717         * etc/NEWS: Mention this.
4719         Fix broken URLs for ISO-IR
4720         * doc/emacs/mule.texi (Charsets):
4721         * lisp/international/mule-conf.el:
4722         Fix broken URL (Bug#21248).
4724         Low-level diagnostics now use ‘text-quoting-style’
4725         * src/doprnt.c (doprnt):
4726         Format ` and ' as per ‘text-quoting-style’.
4727         * src/xdisp.c (vmessage, message): Mention that the format should
4728         not contain ` or '.
4730         Prefer ‘format’ to ‘substitute-command-keys’
4731         * src/character.h (uLSQM, uRSQM): Move here ...
4732         * src/doc.c (uLSQM, uRSQM): ... from here.
4733         * src/doc.c (Fsubstitute_command_keys):
4734         * src/syntax.c (Finternal_describe_syntax_value):
4735         * lisp/cedet/mode-local.el (mode-local-print-binding)
4736         (mode-local-describe-bindings-2):
4737         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
4738         * lisp/cus-theme.el (describe-theme-1):
4739         * lisp/descr-text.el (describe-text-properties-1, describe-char):
4740         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
4741         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
4742         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
4743         * lisp/emacs-lisp/package.el (describe-package-1):
4744         * lisp/faces.el (describe-face):
4745         * lisp/help-fns.el (help-fns--key-bindings)
4746         (help-fns--compiler-macro, help-fns--parent-mode)
4747         (help-fns--obsolete, help-fns--interactive-only)
4748         (describe-function-1, describe-variable):
4749         * lisp/help.el (describe-mode):
4750         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
4751         to implement quoting style.  This generally makes the code simpler.
4753         Extend ‘format’ to translate curved quotes
4754         This is a followup to the recent doc string change, and deals with
4755         diagnostics and the like.  This patch is more conservative than
4756         the doc string change, in that the behavior of ‘format’ changes
4757         only if its first arg contains curved quotes and the user prefers
4758         straight or grave quotes.  (Come to think of it, perhaps we should
4759         be similarly conservative with doc strings too, but that can wait.)
4760         The upside of this conservatism is that existing usage is almost
4761         surely unaffected.  The downside is that we'll eventually have to
4762         change Emacs's format strings to use curved quotes in places where
4763         the user might want curved quotes, but that's a simple and
4764         mechanical translation that I'm willing to do later.  (Bug#21222)
4765         * doc/lispref/help.texi (Keys in Documentation):
4766         Move description of text-quoting-style from here ...
4767         * doc/lispref/strings.texi (Formatting Strings):
4768         ... to here, and describe new behavior of ‘format’.
4769         * etc/NEWS: Describe new behavior.
4770         * lisp/calc/calc-help.el (calc-describe-thing):
4771         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
4772         * lisp/info.el (Info-find-index-name):
4773         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
4774         of recently-added curved quotes.
4775         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
4776         Move from here ...
4777         * src/lisp.h: ... to here.
4778         * src/doc.c (text_quoting_style): New function.
4779         (Fsubstitute_command_keys): Use it.
4780         * src/editfns.c (Fformat): Implement new behavior.
4781         * src/lisp.h (enum text_quoting_style): New enum.
4783 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
4785         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
4786         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
4788 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
4790         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
4791         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
4793 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
4795         Flush file properties in Tramp
4796         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
4797         (tramp-sh-handle-set-file-times):
4798         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
4799         (tramp-adb-handle-set-file-times): Flush the file properties of
4800         the directory.
4802 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
4804         * doc/emacs/misc.text (Amusements): Fixed typo.
4806 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
4808         Don't miss warnings about removing string text properties while dumping
4809         * src/alloc.c (purecopy): Warn about removing a string's text
4810         properties even when the same string was already pure-copied
4811         earlier.
4812         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
4813         (elisp--xref-format-extra): Fix the commentary.
4815 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
4817         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049)
4819 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
4821         * lisp/progmodes/compile.el: Assume 8-wide TABs (bug#21038)
4822         * lisp/progmodes/compile.el: Use lexical-binding.
4823         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
4825 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
4827         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
4828         * lisp/uniquify.el: Remove redundant `:group's.
4830 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
4832         * lisp/net/tramp-adb.el
4833         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
4834         result to prevent modification of the tramp-cache by side effects.
4835         Use the correct cache key.
4837 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
4839         Make add_to_log varargs
4840         * src/alloc.c (run_finalizer_handler):
4841         * src/charset.c (load_charset_map_from_vector):
4842         * src/nsimage.m (ns_load_image):
4843         * src/xfaces.c (load_pixmap, load_color2):
4844         Simplify, now that add_to_log has a variable number of args.
4845         * src/image.c (image_error): Take a variable number of args.
4846         Callers simplified.
4847         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
4848         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
4849         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
4850         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
4852         Optional args for holiday-greek-orthodox-easter
4853         * etc/NEWS: Document this.
4854         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
4855         Add optional args N and STRING, mimicking the API and code of
4856         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
4858 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
4860         xref-find-definitions: Exclude more generic function items.
4861         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method): Add doc string.
4862         (cl--generic-find-defgeneric-regexp): New.
4863         (find-function-regexp-alist): Add it.
4864         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
4865         elisp-mode.el, change to search for ";;; Code:"
4866         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
4867         (find-function-regexp-alist): Add them.
4868         * lisp/progmodes/elisp-mode.el:
4869         (elisp--xref-format, elisp--xref-format-extra): Change back to defvar due
4870         to bug#21237.
4871         (elisp--xref-find-definitions): Exclude co-located default methods for
4872         generic functions. Also exclude implicitly declared defgeneric.
4873         (elisp--xref-find-definitions): Handle C source properly. Exclude minor
4874         mode variables defined by 'define-minor-mode'.
4875         * test/automated/elisp-mode-tests.el: Declare generic functions, add
4876         tests for them.
4877         (xref-elisp-test-run): Fix bug.
4878         (emacs-test-dir): Improve initial value.
4879         (find-defs-defun-defvar-el): Don't expect defvar.
4880         (find-defs-feature-el): Match change to find-feature-regexp.
4882 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
4884         Improve warning about purecopy of strings with properties
4885         * src/alloc.c (purecopy): Show the offending string with the
4886         warning about removing its text properties.
4888 2015-08-12  Alan Mackenzie  <acm@muc.de>
4890         Introduce new macros to cover Emacs's new names in cl-lib.el.
4891         This also eliminates `mapcan' warnings in XEmacs.
4892         progmodes/cc-defs.el (c--mapcan-status): new variable to characterise
4893         [X]Emacs versions.
4894         (top-level): Require either 'cl or 'cl-lib, depending on
4895         c--mapcan-status.
4896         Change this back to cc-external-require from an eval-when-compile
4897         require.
4898         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
4899         (c--delete-duplicates): New macros which expand into either old or new
4900         names.
4901         (c-make-keywords-re, c-lang-defconst, c-lang-const) Use the new macros
4902         rather than the old names.
4903         progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan rather
4904         than mapcan.
4905         progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
4906         progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
4907         depending on c--mapcan-status.
4908         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
4909         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
4910         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
4911         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
4912         (c-decl-block-key, c-keywords, c-keywords-obarray)
4913         (c-regular-keywords-regexp, c-primary-expr-regexp)
4914         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
4915         (c-known-type-key, c-nonlabel-token-key)
4916         (c-make-init-lang-vars-fun): Use the new macros rather than the old
4917         names.
4919 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
4921         loadhist.el (read-feature): Conform to completing-read
4922         * lisp/loadhist.el (read-feature): According to `completing-read'
4923         documentation, if collection is a list, then it must be a list of
4924         strings, not a list of symbols like before.
4926 2015-08-12  David Kastrup  <dak@gnu.org>
4928         Deal gracefully with up-events (Bug#19746)
4929         * keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
4930         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
4931         those may easily be injected by user-level Lisp code.
4932         (read_key_sequence): Discard unbound up-events like unbound
4933         down-events: they are even more likely only relevant for special
4934         purposes.
4935         While Emacs will not produce up-events on its own currently (those are
4936         converted to drag or click events before being converted to
4937         Lisp-readable structures), the input queue can be made to contain them
4938         by synthesizing events to `unread-command-events'.  Emacs should deal
4939         consistently with such events.
4941 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
4943         Fix display of thin lines whose newline has line-height property of t
4944         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
4945         and descent values of non-empty glyph rows, since they could have
4946         forced low values deliberately.  (Bug#21243)
4948 2015-08-12  Richard Stallman  <rms@gnu.org>
4950         Offer to combine multiple To or CC fields.
4951         * sendmail.el (mail-combine-fields): New function.
4952         (mail-send): Call 'mail-combine-fields'.
4954         Don't decrypt encrypted files.
4955         * mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
4957         Handle encrypted mbox files.
4958         * rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt the mbox
4959         file if necessary.
4961         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
4962         * rmail.el (rmail-epa-decrypt-1): New subroutine.
4963         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
4964         In a mime message, reenable Mime and show the parts that
4965         were shown before.
4966         Add keyword "decrypt" if anything decrypted.
4968         epa-inhibit inhibits auto-recognition of .gpg files
4969         * lisp/epa-file.el (epa-inhibit): New variable.
4970         (epa-file-handler): Check epa-inhibit.
4972 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
4974         * emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
4976 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
4978         Respect python.el imenu when semantic-mode is off
4979         Fixes debbugs:21220
4980         * lisp/cedet/semantic/wisent/python.el: Do not force
4981         wisent-python-default-setup on python-mode-hook.
4983 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
4985         Give names to Unicode code points in C code
4986         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
4987         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
4988         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
4989         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
4990         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
4991         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
4992         (OBJECT_REPLACEMENT_CHARACTER):
4993         New named constants for Unicode code points.
4994         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
4995         * src/composite.c (char_composable_p):
4996         * src/lread.c (readevalloop, read1):
4997         * src/xdisp.c (get_next_display_element):
4998         Use them.
4999         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
5000         Remove; now in character.h.
5002 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
5004         elisp--xref-find-definitions handle cl-defstuct default constructor
5005         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
5006         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
5007         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
5008         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
5009         from xref-elisp-test for ease of debugging.
5010         (xref-elisp-deftest): Rename from xref-elisp-test.
5011         (find-defs-constructor): New test.
5012         (find-defs-defgeneric-el): Match batch test config.
5013         (compile): Required for find-defs compilation-minor-mode test.
5014         (find-defs-defvar-el): Match code change.
5015         (find-defs-face-el): Match code change.
5016         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
5017         Improve doc string.
5019 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
5021         * lisp/replace.el (perform-replace): Document `replacements'.
5022         (perform-replace): Move the description of the format of `replacements'
5023         from the body's comment to the doc string.
5025 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
5027         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
5028         sequence.  Recent adb version send initial escape sequences, even
5029         when terminal type is set to TERM=dumb.
5031 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
5033         Rewrite elisp--xref-find-definitions to handle many more cases; add tests.
5034         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
5035         Function deleted.
5036         (elisp--xref-format-cl-defmethod): New defconst.
5037         (find-feature-regexp, find-alias-regexp): New defcustoms.
5038         (elisp--xref-make-xref): New function.
5039         (elisp--xref-find-definitions): Rewrite using the above, handle many
5040         more cases.  Always output all available definitions.
5041         (xref-location-marker): No need for special cases.
5042         * test/automated/elisp-mode-tests.el: Add more tests of
5043         elisp--xref-find-definitions, improve current tests.
5045 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
5047         Fix recording of events pushed onto unread-command-events
5048         * src/keyboard.c (read_char): Make sure events read from
5049         unread-command-events and unread-post-input-method-events are
5050         always recorded by record_char.  Reported by David Kastrup
5051         <dak@gnu.org>, see
5052         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
5054 2015-08-10  Samer Masterson  <samer@samertm.com>
5056         Set file buffer as current for "--file"
5057         * lisp/startup.el (command-line-1): Set file buffer as current before
5058         it is displayed so it can be used with options like "--eval".
5059         (Bug#21095)
5061 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
5063         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
5064         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
5065         after setting LC_ALL to the desired locale, to avoid affecting how
5066         numbers are read and printed.  (Bug#21223)
5068 2015-08-10  Alan Mackenzie  <acm@muc.de>
5070         Fix "Invalid search bound (wrong side of point)" in fontification
5071         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
5072         an initialization expression, check point is not beyond the
5073         fontification limit.
5075 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
5077         Fix DPI calculation when Xft/DPI is default
5078         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
5079         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
5080         Remove unnecessary cast while we're in the neighborhood.
5082 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
5084         Add project-vc-search-path and project-vc-ignores
5085         * lisp/progmodes/project.el (project-vc): New group.
5086         (project-vc-search-path, project-vc-ignores): New variables.
5087         (project--value-in-dir): Utility function.
5088         (project-search-path, project-ignores): Use them.
5089         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
5090         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
5092 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
5094         Fix some minor quoting issues with grave accent
5095         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
5096         Remove redundant quotes.
5097         * src/doc.c (uLSQM, uRSQM): New macros.
5098         * src/doc.c (Fsubstitute_command_keys):
5099         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
5100         preference for quotes rather than hardcoding the ‘grave’ style.
5101         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
5102         (re_match_2_internal) [DEBUG]: In debugging output, quote C
5103         strings with "...", not `...'.
5105         ChangeLog.2 ignores remote-tracking merges
5106         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
5107         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
5108         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
5110 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
5112         Use kpsewhich in ffap-latex-mode, if available
5113         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
5114         (ffap-latex-mode): Use kpsewhich if available.
5116         ffap: disallow braces in filenames for tex modes
5117         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
5118         braces in tex-related modes.
5120         Remove useless backslashes from ffap-string-at-point-mode-alist
5121         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
5122         misleading backslashes from default value.
5124         Augment docstring of ffap-string-at-point-mode-alist
5125         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
5126         and END are handled.
5128 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
5130         Remove no-op calls to substitute-command-keys
5131         * lisp/org/org-src.el (org-edit-src-code)
5132         (org-edit-fixed-width-region):
5133         * lisp/simple.el (completion-setup-function):
5134         Remove calls to substitute-command-keys that always just return
5135         their argument.
5137 2015-08-09  Daiki Ueno  <ueno@gnu.org>
5139         Utilize `quit-window' in epa.el
5140         * epa.el (epa-exit-buffer-function): Set to `quit-window'.
5141         (Bug#21210)
5143 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
5145         Fix link to source code in help window
5146         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
5147         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
5148         'No longer include timestamp in header of .elc files'.  Add code
5149         that will return .el source file in load-path.
5151 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
5153         * isearch.el (isearch-search-fun-default): (Bug#21164)
5154         Respect `isearch-lax-whitespace' when searching through
5155         `isearch-word'.
5157 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
5159         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
5161         * org.el: Fix up some lexical scoping warnings, and use dolist
5162         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
5163         (org-set-regexps-and-options, org-assign-fast-keys)
5164         (org-contextualize-keys, org-contextualize-validate-key)
5165         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
5166         (org-find-olp, org-find-exact-heading-in-directory)
5167         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
5168         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
5169         (org-replace-escapes): Use dolist.
5170         (org-mode): Optimize away XEmacs-only code.
5171         (org-refile-get-targets): Remove unused var `f'.
5172         (org-fast-todo-selection): Remove unused var `e'.
5173         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
5174         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
5175         (org-format-latex): Use dolist.  Remove unused var `e'.
5176         (org-toggle-heading): Access vars lexically rather than dynamically.
5177         (org-backward-sentence, org-forward-sentence, org-meta-return)
5178         (org-kill-line): Mark arg as unused.
5179         (org-submit-bug-report): Silence compiler warning.
5180         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
5181         (org-get-cursor-date): Remove unused var `tm'.
5182         (org-comment-or-uncomment-region): Use standard name `_'.
5183         (reftex-docstruct-symbol, reftex-cite-format): Declare to
5184         silence byte-compiler.
5185         (org-reftex-citation): Add `org--' prefix to dynamically scoped
5186         `rds' var.
5188 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
5190         Electric quote if coding is undecided or no conv
5191         * lisp/electric.el (electric--insertable-p): Also say that a
5192         string is insertable if the buffer file coding system is undecided
5193         or uses no conversion, as curved quotes will work in either case.
5195         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
5197 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
5199         Fix overlay string display regressions introduced in Emacs 24.5
5200         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
5201         buffer position, if we move the iterator to a new position as
5202         result of jumping over text covered by a "replacing" display
5203         property.
5204         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
5206         Support recovery from C stack overflow on MS-Windows
5207         * src/w32fns.c (w32_reset_stack_overflow_guard)
5208         (stack_overflow_handler): New functions for handling C stack
5209         overflow exceptions.
5210         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
5211         specially, and zero out except_addr if we do.
5212         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
5213         mode.
5214         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
5215         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
5216         the MinGW build, but the code guarded by that is for Posix hosts.
5217         * src/keyboard.c (command_loop) [WINDOWSNT]: Call
5218         w32_reset_stack_overflow_guard.
5219         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
5220         (sigsetjmp): New macro.
5221         (w32_reset_stack_overflow_guard): Declare the prototype.
5222         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
5224 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
5226         Improve error signalling for seq-subseq
5227         * lisp/seq.el (seq-subseq): The existing behaviour is to error
5228         when indexes are too large, but to silently ignore numbers which
5229         are too negative for lists.  String and vector handling errors in
5230         both cases.  This has been regularized.  Error signaling behavior
5231         has been explicitly added to the doc string.
5233         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
5234         therefore also impacted by this change.  Update the doc string
5235         to reflect this.
5237         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
5238         added for these exceptional cases, as well as one non exceptional
5239         base case.
5241 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
5243         Improve error checking in tramp-adb.el
5244         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
5245         Improve error checking.  "ls -l" on Android in Enforcing mode can
5246         print "lstat './FILENAME failed: Permission denied".
5248 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
5250         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
5251         non-struct vectors.
5253 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
5255         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
5256         * lisp/window.el: Fix typo that broke build.
5257         (display-buffer--action-function-custom-type): Add
5258         `display-buffer-use-some-frame'.
5259         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
5261         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
5262         * lisp/window.el (display-buffer-use-some-frame): Add support for
5263         'inhibit-same-window in alist.
5264         * doc/windows.texi (display-buffer-use-some-frame): Doc support for
5265         'inhibit-same-window in alist.
5267 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
5269         Avoid infinite loop in display of invisible text in strings
5270         * src/xdisp.c (handle_invisible_prop): If the next change of
5271         invisibility spec does not mean the beginning of a visible text,
5272         update the string position from which to start the search for the
5273         next invisibility change.  This avoids an infinite loop when we
5274         have more than one invisibility spec that are made inactive by
5275         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
5276         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
5277         for the situation that caused bug #21200.
5279 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5281         * lisp/emacs-lisp/package.el: Simplify describe-package-1
5282         (package-help-section-name-face): New face.
5283         (package--print-help-section): New function.
5284         (describe-package-1): Refactor section printing.
5285         (package-make-button): Use face instead of font-lock-face, which
5286         doesn't work on buttons.
5288         * lisp/emacs-lisp/package.el: Define custom faces
5289         (package-name-face, package-description-face)
5290         (package-status-built-in-face, package-status-external-face)
5291         (package-status-available-face, package-status-new-face)
5292         (package-status-held-face, package-status-disabled-face)
5293         (package-status-installed-face, package-status-dependency-face)
5294         (package-status-unsigned-face, package-status-incompat-face)
5295         (package-status-avail-obso-face): New faces.
5296         (package-menu--print-info-simple): Use them.
5298 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
5300         Fix some confusion with ‘format’
5301         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
5302         (allout-graphics-modification-handler):
5303         Protect arbitrary string in a format context with "%s" format.
5304         * lisp/avoid.el:
5305         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
5306         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
5307         * lisp/erc/erc-button.el (erc-button-beats-to-time):
5308         * lisp/gnus/message.el (message-send-form-letter):
5309         * lisp/org/ob-core.el (org-babel-check-evaluate)
5310         (org-babel-confirm-evaluate):
5311         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
5312         * lisp/org/ox-latex.el (org-latex-compile):
5313         * lisp/org/ox-man.el (org-man-compile):
5314         * lisp/org/ox-odt.el (org-odt-template):
5315         * lisp/org/ox-texinfo.el (org-texinfo-compile):
5316         * lisp/progmodes/prolog.el (prolog-help-info)
5317         (prolog-view-predspec):
5318         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
5319         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
5320         * lisp/textmodes/rst.el (rst-replace-lines):
5321         Change (message (format ...)) to (message ...), and likewise
5322         for ‘error’.  This lessens the probability of confusion when the
5323         output of ‘format’ contains ‘%’.
5325 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
5327         * lisp/replace.el (replace-character-fold): Default to nil.
5329         * lisp/character-fold.el: Fix lax whitespace.
5330         (character-fold-table): Don't make space match other whitespace chars.
5331         (character-fold-to-regexp): Simplify lax behavior.
5333 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
5335         Preserve window point in xref-find-definitions-other-window
5336         Fix the problem reported by Ingo Logmar in
5337         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
5338         * lisp/progmodes/xref.el (xref--goto-char): Extract from
5339         xref--goto-location.
5340         (xref--pop-to-location): Use it. Replace xref--goto-location with
5341         a direct xref-location-marker call.
5342         (xref--show-location): Likewise.
5343         (xref--display-position): Use xref--goto-char.
5345         * lisp/progmodes/project.el: Add a paragraph to the front matter.
5347 2015-08-04  David Kastrup  <dak@gnu.org>
5349         Do not overwrite preexisting contents of unread-command-events
5350         * lisp/vc/emerge.el (emerge-show-file-name):
5351         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
5352         (vhdl-comment-insert, vhdl-hooked-abbrev):
5353         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
5354         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
5355         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
5356         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
5357         * lisp/obsolete/vip.el (vip-escape-to-emacs)
5358         (vip-prefix-arg-value, vip-prefix-arg-com):
5359         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
5360         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
5361         (quail-tibkey-update-translation):
5362         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
5363         * lisp/leim/quail/lao.el (quail-lao-update-translation):
5364         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
5365         (quail-japanese-self-insert-and-switch-to-alpha):
5366         * lisp/leim/quail/hangul.el (hangul2-input-method)
5367         (hangul3-input-method, hangul390-input-method):
5368         * lisp/language/hanja-util.el (hangul-to-hanja-char):
5369         * lisp/international/robin.el (robin-input-method):
5370         * lisp/international/quail.el (quail-start-translation)
5371         (quail-start-conversion):
5372         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
5373         (gnus-article-describe-key-briefly):
5374         * lisp/eshell/em-hist.el (eshell-list-history):
5375         * lisp/term.el (term-dynamic-list-input-ring)
5376         (term-dynamic-list-completions):
5377         * lisp/subr.el (momentary-string-display):
5378         * lisp/simple.el (read-quoted-char):
5379         * lisp/pcomplete.el (pcomplete-show-completions):
5380         * lisp/kmacro.el (kmacro-repeat-on-last-key):
5381         * lisp/info.el (Info-summary):
5382         * lisp/ehelp.el (electric-help-command-loop):
5383         * lisp/ebuff-menu.el (electric-buffer-list)
5384         (Electric-buffer-menu-exit):
5385         * lisp/double.el (double-translate-key):
5386         * lisp/comint.el (comint-dynamic-list-input-ring)
5387         (comint-dynamic-list-completions): Do not overwrite preexisting
5388         contents of `unread-command-events' when putting new events into
5389         it.
5391 2015-08-04  Daniel Colascione  <dancol@dancol.org>
5393         Improve ansi-color filtering of unrecognized escape sequences
5394         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
5395         escape sequences.
5396         (ansi-color-filter-apply, ansi-color-apply): Filter out
5397         unrecognized escape sequences.
5399 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
5401         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
5402         definitions to `easy-menu-define', improve a couple to account for
5403         async, and add a couple of new commands.
5405 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
5407         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
5409 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
5411         Add new 'calendar-weekend-days' option
5412         Make the days receiving the 'calendar-weekend-header' face freely
5413         customizable, as they differ by region/culture.
5414         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
5415         new variable.
5416         * lisp/calendar/calendar.el (calendar-generate-month): New variable
5417         calendar-weekend-days to customize day header fontification.
5419 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
5421         Redo text-quoting-style variable
5422         Rename help-quote-translation to text-quoting-style,
5423         and use symbols rather than characters as values.
5424         This follows suggestions along these lines by Alan Mackenzie in:
5425         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
5426         and by Drew Adams in:
5427         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
5428         * doc/lispref/help.texi (Keys in Documentation)
5429         * etc/NEWS:
5430         * lisp/cus-start.el (standard):
5431         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
5432         Document and/or implement the new behavior instead of the old.
5433         (syms_of_doc): New symbols 'grave' and 'straight'.
5435 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
5437         nnimap.el: Use IMAP MOVE extension if available
5438         * lisp/gnus/nnimap.el (nnimap-request-move-article)
5439         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
5440         Use MOVE extension if available.
5442         nnimap.el: Explicitly ask for server capabilities
5443         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
5444         capabilities will be returned in the login-result.
5446 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
5448         Treat help strings like other doc strings
5449         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
5450         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
5451         substitute-command-keys.
5452         * src/keyboard.c (show_help_echo, parse_menu_item): Call
5453         substitute-command-keys on the help string before displaying it.
5455         Also mention "curly quotes"
5456         See Drew Adams's email in:
5457         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
5458         * doc/lispref/help.texi (Keys in Documentation):
5459         Add index entry "curly quotes".
5460         * etc/NEWS: Use the phrase "curly quotes" too.
5462         ede-proj-target-makefile docstring tweaks
5463         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
5464         Consistently use "all:" to describe the all: target,
5465         replacing three different and confusingly-quoted usages.
5467 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
5469         Don't abort emacsclientw when -a was specified
5470         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
5471         out if we are in emacsclientw and -a was specified.
5473 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
5475         Fix handling of 1st keystroke on MS-Windows
5476         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
5477         This is needed to correctly handle the session's first keystroke,
5478         if it has any modifiers.  (Bug#19994)
5480 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
5482         Substitute some customization etc. doc strings
5483         These changes apply substitute-command-keys to some
5484         doc strings that were going through untranslated
5485         when creating customization or other widgets.
5486         * lisp/cus-edit.el (custom-group-value-create):
5487         * lisp/wid-edit.el (widget-default-create):
5488         (widget-push-button-value-create):
5489         Treat the widget tag as a doc string.
5490         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
5491         Treat the :documentation value as a doc string.
5492         * lisp/wid-edit.el (widget-choose):
5493         Treat the choice names as doc strings.
5494         (widget-default-create): Treat the :doc value as a doc string.
5495         (widget-toggle-value-create): Treat the :on and :off values
5496         as doc strings.
5497         (widget-documentation-string-value-create):
5498         Substitute the doc string.
5500 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
5502         Add a second argument to project-ignores
5503         * lisp/progmodes/project.el (project-ignores): Add a second
5504         argument DIR.
5505         * lisp/progmodes/project.el (project-ignores): Only include the VC
5506         ignores if DIR is the VC root.
5507         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
5509 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
5511         Prevent incorrect display when 'line-spacing' variable is set
5512         * src/xdisp.c (try_window_id): Give up this optimization if the
5513         buffer has its 'line-spacing' variable set non-nil.
5515 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
5517         Don't pass NOVISIT to find-file
5518         * lisp/progmodes/etags.el (next-file):
5519         Don't pass NOVISIT to find-file (bug#21175).
5521         Ignore buffer restriction for tags-loop-eval
5522         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
5523         restriction (bug#21167).
5525 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
5527         Fix a thinko in 'ffap-gopher-at-point'
5528         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
5530         Honor 'line-spacing' for empty lines
5531         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
5532         property and 'line-spacing' frame parameter or variable or
5533         property for empty lines, by doing the same processing as in
5534         x_produce_glyph for newline characters.  (Bug#21165)
5536 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
5538         Simplify by assuming C99 integer division
5539         * src/floatfns.c (ceiling2, floor2, truncate2):
5540         Assume C99 (i.e., Fortran) semantics for integer division.
5541         This simplifies the code.
5543 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
5545         Don't overflow if computing approximate percentage
5546         * lisp/align.el (align-region):
5547         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
5548         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
5549         * lisp/cus-edit.el (custom-buffer-create-internal):
5550         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
5551         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
5552         (checkdoc-next-message-error):
5553         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
5554         * lisp/epa.el (epa-progress-callback-function):
5555         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
5556         * lisp/ffap.el (ffap-menu-rescan):
5557         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
5558         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
5559         * lisp/gnus/nneething.el (nneething-retrieve-headers):
5560         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
5561         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
5562         * lisp/gnus/nnml.el (nnml-retrieve-headers):
5563         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
5564         * lisp/gnus/nntp.el (nntp-retrieve-headers)
5565         (nntp-retrieve-articles):
5566         * lisp/imenu.el (imenu--relative-position):
5567         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
5568         (skkdic-convert-okuri-nasi):
5569         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
5570         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
5571         * lisp/org/org-list.el (org-update-checkbox-count):
5572         * lisp/org/org.el (org-table-map-tables)
5573         (org-update-parent-todo-statistics):
5574         * lisp/play/decipher.el (decipher-insert-frequency-counts)
5575         (decipher-analyze-buffer):
5576         * lisp/profiler.el (profiler-format-percent):
5577         * lisp/progmodes/cc-cmds.el (c-progress-update):
5578         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
5579         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
5580         (idlwave-list-load-path-shadows):
5581         * lisp/progmodes/opascal.el (opascal-step-progress):
5582         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
5583         (vhdl-scan-directory-contents):
5584         * lisp/textmodes/bibtex.el (bibtex-progress-message):
5585         * lisp/textmodes/flyspell.el (flyspell-small-region)
5586         (flyspell-external-point-words):
5587         * lisp/textmodes/table.el (table-recognize):
5588         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
5589         progress-report percentages and the like.  This avoids problems
5590         if (* 100 NUMERATOR) would overflow.
5591         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
5592         * lisp/gnus/registry.el (registry-reindex):
5593         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
5594         * lisp/descr-text.el (describe-char):
5595         * lisp/org/org-colview.el (org-nofm-to-completion):
5596         * lisp/ps-print.el (ps-plot):
5597         * lisp/simple.el (what-cursor-position):
5598         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
5599         more-complicated and less-accurate approximation.
5601         Fix some int overflows in profiler.c
5602         * src/profiler.c (make_log): Make args EMACS_INT, not int,
5603         to avoid unwanted behavior on 'int' overflow.
5604         (make_log, evict_lower_half, record_backtrace):
5605         Use ptrdiff_t, not int, for object indexes.
5607         Port to pedantic memcpy
5608         * src/keyboard.c (menu_bar_items, tool_bar_items):
5609         * src/xrdb.c (magic_db):
5610         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
5612         Merge from gnulib
5613         This incorporates:
5614         2015-07-29 time_rz: port to pedantic memcpy
5615         * lib/time_rz.c: Copy from gnulib.
5617 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
5619         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print): Fix bug
5620         When updating the very last entry, tabulated-list-print would
5621         erase it and then try to look at the next one (which obviously
5622         isn't there).
5624 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
5626         Allow to use the old key processing code on MS-Windows
5627         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
5628         New variable.
5629         (w32_wnd_proc): Use it to invoke the old code that processed
5630         character keys, as fallback, when this variable is non-nil.  Fix
5631         typos in comments.  (Bug#19994)
5633 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
5635         Improve handling of Unicode keyboard input on MS-Windows
5636         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
5637         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
5638         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
5639         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
5640         successful, don't call TranslateMessage.  (Bug#19994)
5642 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
5644         Fix default-directory in changeset diffs after vc-print-log
5645         * lisp/vc/log-view.el (log-view-diff-common): Move the
5646         revision-granularity check back into log-view-diff-changeset.
5647         (log-view-diff-changeset): Bind default-directory to the current
5648         VC root.
5650         Rename project-directories to project-roots
5651         * lisp/progmodes/project.el (project-search-path-function)
5652         (project-search-path): Update the docstring.
5653         (project-directories): Rename to `project-roots', update all
5654         callers and implementations accordingly.
5655         (project-root): Remove.
5656         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
5657         as the default file mask.
5659 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
5661         Support long URLs in w32-shell-execute
5662         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
5663         and filename_to_ansi to convert the DOCUMENT argument, as it could
5664         be a URL that is not limited to MAX_PATH characters.  Instead, use
5665         MultiByteToWideChar directly, and allocate heap storage as
5666         required to accommodate the converted string.  Likewise with
5667         non-Unicode operation.  Ensure OPERATION is null-terminated, even
5668         if it is longer than 32K bytes.  (Bug#21158)
5670 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
5672         vc-mtn-find-revision handle null rev.
5673         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): handle null rev
5675 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
5677         Add docs for display-buffer action display-buffer-use-some-frame
5678         * lisp/window.el (display-buffer-use-some-frame): improve doc string
5679         * doc/lispref/windows.texi (Display Action Functions): add
5680           display-buffer-use-some-frame
5681         * etc/NEWS: mention display-buffer-use-some-frame
5683         Add display-buffer action display-buffer-use-some-frame
5684         * lisp/window.el (display-buffer-use-some-frame): new
5686         Handle vc-mtn error more gently
5687         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): return "" when branch is nil
5689 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
5691         Fix Tramp problems with multihops, and nc.
5692         * lisp/net/tramp-cache.el (tramp-get-file-property)
5693         (tramp-set-file-property, tramp-flush-file-property)
5694         (tramp-get-connection-property, tramp-set-connection-property)
5695         (tramp-flush-connection-property): Remove hop from vector.
5696         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
5697         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
5698         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
5699         netstat to 60".
5700         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
5701         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
5702         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
5703         Keep hop in result.
5704         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
5705         Add hop tests.
5707 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
5709         Resurrect highlighting of repeated words by Flyspell Mode
5710         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
5711         characters between point and the doublon candidate, so that
5712         flyspell-word-search-backward finds it.  (Bug#21157)
5714         Fix redisplay of large images on expose events
5715         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
5716         between signed negative values and unsigned values.  This
5717         prevented redisplay on expose events when the window showed a very
5718         large image.
5720 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
5722         Remove unnecessary stack overflow dependency
5723         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
5724         Don't worry about $ac_cv_header_sys_resource_h and
5725         $ac_cv_func_getrlimit, as they're no longer needed for this.
5726         Problem reported by Eli Zaretskii in:
5727         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
5729 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
5731         Pacify compilation -Wincompatible-pointer-types warnings
5732         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
5733         warning.
5734         (CompareStringW_Proc): New typedef.
5735         (w32_compare_strings): Use it, to pacify compiler warnings under
5736         "-Wincompatible-pointer-types".
5737         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
5738         (GetDiskFreeSpaceExA_Proc): New typedefs.
5739         (Ffile_system_info): Use them, to pacify compiler warnings under
5740         "-Wincompatible-pointer-types".
5742 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
5744         Fix subscript error in calculate_direct_scrolling
5745         Use slightly-longer cost vectors.  Without this change,
5746         calculate_direct_scrolling can have a subscript violation when
5747         FRAME_LINES (frame) <= delta.
5748         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
5749         (line_ins_del, do_line_insertion_deletion_costs):
5750         Allocate and use slightly-larger cost vectors, ones based on
5751         FRAME_TOTAL_LINES instead of FRAME_LINES.
5753         Fix uninitalized value in encode_coding_object
5754         * src/coding.c (encode_coding_object): Also initialize
5755         coding->src_pos and coding->src_pos_byte when NILP (src_object).
5756         This avoids later use of uninitialized storage.
5758 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
5760         * doc/lispref/variables.texi (Variable Aliases): Typo fix.  (Bug#21141)
5762 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
5764         Merge from gnulib
5765         This incorporates:
5766         2015-07-27 time_rz: port better to MinGW
5767         2015-07-27 time: port __need_time_t to MinGW
5768         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
5769         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
5770         * lib/time-internal.h: New file, from gnulib.
5772 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
5774         Handle NULL pointers in w32heap.c allocation routines
5775         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
5776         freeable".
5777         (realloc_after_dump, realloc_before_dump, free_before_dump):
5778         Handle NULL pointers gracefully, as Emacs now seems to expect
5779         that.
5781         Fix Cairo build without PNG
5782         * src/image.c: Define PNG function when USE_CAIRO is defined, even
5783         if HAVE_PNG is not.  (Bug#21133)
5785         MS-Windows follow-up for recent TZ-related changes
5786         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
5787         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
5788         picking up 'struct timespec' from pthread.h, if it is installed on
5789         the user's system.  We want either the definitions from MinGW
5790         system headers, if available, or the Gnulib replacements if not.
5791         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
5792         lib/time.h.
5793         * lib/time.in.h: Don't let __need_* symbols affect what happens on
5794         MinGW.  These symbols are defined by MinGW system headers, but we
5795         don't want that to affect whether Gnulib portions of the header
5796         are or aren't used.
5798 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
5800         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
5802         New optional ZONE arg for format-time-string etc.
5803         This simplifies time conversions in other time zones.
5804         It also prevents display-time-world tampering with TZ (Bug#21020).
5805         * admin/admin.el (add-release-logs):
5806         Use improved add-log-time-format API.
5807         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
5808         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
5809         * configure.ac (tzalloc): Remove test for this, since
5810         Emacs no longer uses HAVE_TZALLOC directly.
5811         * doc/lispref/os.texi (Time of Day, Time Conversion)
5812         (Time Parsing):
5813         * etc/NEWS: Document the new behavior.
5814         Merge from gnulib, incorporating:
5815         2015-07-25 strftime: fix newly-introduced bug on Solaris
5816         2015-07-23 fprintftime, strftime: use timezone_t args
5817         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
5818         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
5819         * m4/time_h.m4:
5820         Update from gnulib.
5821         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
5822         New files from gnulib.
5823         * lisp/time-stamp.el (time-stamp-string):
5824         * lisp/time.el (display-time-world-list)
5825         (display-time-world-display):
5826         Use new API, with time zone arg.
5827         * lisp/time.el (display-time-world-display):
5828         Fix race when current-time advances while we're running.
5829         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
5830         (add-log-iso8601-time-string): Accept optional time zone arg.
5831         * lisp/vc/add-log.el (add-change-log-entry):
5832         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
5833         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
5834         Add rules for the time module, since they're now needed
5835         for tzalloc etc.
5836         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
5837         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
5838         * src/editfns.c: Include errno.h.
5839         (set_time_zone_rule): Omit unnecessary forward decl.
5840         (initial_tz): Remove, replacing with ...
5841         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
5842         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
5843         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
5844         (tzlookup): New static functions.
5845         (init_editfns): New arg DUMPING.  All uses changed.
5846         (init_editfns): Omit most initialization if dumping, not if
5847         !initialized.  Initialize wall_clock_tz and local_tz.
5848         (emacs_nmemftime, format_time_string): Time zone argument can now
5849         be any time zone, not just a boolean for UTC or local time.  All
5850         callers changed.
5851         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
5852         (Fcurrent_time_zone): New optional arg ZONE.
5853         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
5854         the same form as with the other new additions.
5855         (decode_time_zone): Remove; no longer needed.
5856         (tzvalbuf): Now file-scope.
5857         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
5858         (syms_of_editfns): Define Qwall.
5859         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
5860         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
5861         [!HAVE_TZALLOC]:
5862         Remove; now supplied by gnulib.
5863         * src/emacs.c (main):
5864         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
5866 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
5868         Fix infinite loop in delete-consecutive-dups
5869         * lisp/subr.el (delete-consecutive-dups): Work even if the last
5870         element is nil (Bug#20588).  Avoid rescan of a circular list in
5871         deletion of last element.
5873 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
5875         Have `x-frame-geometry' return nil for terminal and initial frames (Bug#21132)
5876         * src/nsfns.m (Fx_frame_geometry):
5877         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
5878         terminal frames.
5879         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
5880         (Fx_frame_geometry): Return nil for terminal frames
5882 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
5884         * etc/tutorials/TUTORIAL.ja: Improve translation.
5886 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
5888         Avoid crashes when w32 GUI functions are called in -batch
5889         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
5890         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
5891         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
5893         Fix flyspell-check-previous-highlighted-word
5894         * lisp/textmodes/flyspell.el
5895         (flyspell-check-previous-highlighted-word): Really accept a
5896         numeric argument, as the doc string describes.  Fix an off-by-one
5897         error in looking up overlays, so invocation with point immediately
5898         after a word would check that word.  Clarify the doc string as
5899         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
5901 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
5903         Minor cleanup in tramp-tests.el
5904         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
5905         Implement using the documented interface
5906         `tramp-connection-properties', rather than with internal functions.
5908 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
5910         Pass lambdas to `skeleton-read'
5911         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
5912         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
5913         lambdas to `skeleton-read' (bug#20386).
5915 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
5917         * INSTALL (DETAILED BUILDING AND INSTALLATION): Mention --without-imagemagick.
5919         Don't require GUI frames and mouse for Flyspell menus
5920         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
5921         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
5922         support, since pop-up menus work with text terminals and can be
5923         controlled via the keyboard.
5925         Improve documentation of Flyspell commands
5926         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
5927         can be invoked via the keyboard.  Mention those commands by name
5928         and add them to the fn index.  (Bug#21125)
5930 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
5932         Fix some Tramp problems with HP-UX
5933         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
5934         Add "tab0" to stty call.
5935         * test/automated/tramp-tests.el (tramp-persistency-file-name):
5936         Set to nil.
5937         (tramp--test-hpux-p): New defun.
5938         (tramp--test-utf8): Use it.
5940 2015-07-22  Glenn Morris  <rgm@gnu.org>
5942         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
5944 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
5946         Fix point positioning in ffap-next-guess
5947         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
5948         as our callers expect.  This was clobbered as part of fixing
5949         bug#5673.  (Bug#21107)
5950         (ffap-gopher-at-point): Set ffap-string-at-point-region.
5952 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
5954         Fix customization type of `even-window-sizes'.
5955         * lisp/window.el (even-window-sizes): Fix customization type.
5957         Optionally even widths of `display-buffer' windows.  (Bug#21100)
5958         * lisp/window.el (quit-restore-window): Restore width if
5959         requested.
5960         (display-buffer-record-window): Record width when window is
5961         reused and horizontally combined.
5962         (even-window-sizes): New option to allow evening window widths.
5963         (even-window-heights): Defalias to `even-window-sizes'.
5964         (window--even-window-heights): Rename to
5965         `window--even-window-sizes'.  Handle side-by-side windows.
5966         (display-buffer-use-some-window): Call `window--even-window-sizes'
5967         instead of `window--even-window-heights'.
5968         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
5969         * doc/lispref/windows.texi (Choosing Window Options): Describe
5970         `even-window-sizes'.
5971         (Coordinates and Windows): Fix typo.
5973 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
5975         add file name to autoload error messages.
5976         * lisp/emacs-lisp/autoload.el (autoload-save-buffers): add condition-case
5977           to add file name to error message.
5979 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
5981         Use 0.0.0.1 as test host in Tramp
5982         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
5983         Use 0.0.0.1 as test host.
5985 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
5987         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
5988         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
5989         Fix inf-loop (bug#21083).
5991 2015-07-21  Glenn Morris  <rgm@gnu.org>
5993         * test/automated/package-test.el (package-test-signed):
5994         Update for recent changes.
5996         * test/automated/elisp-mode-tests.el
5997         (elisp-xref-finds-both-function-and-variable)
5998         (elisp-xref-finds-only-function-for-minor-mode):
5999         Update for recent xref name changes.
6001 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
6003         Make eldoc timer non-repeatable
6004         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
6005         non-repeatable.  Since it's on post-command hook, that just wasted
6006         CPU cycles.
6008 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
6010         Mention `tramp-connection-properties' in NEWS
6012         Sync with Tramp repository
6013         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
6014         required prior changing its configuration.
6015         (Connection caching, Predefined connection information)
6016         (Remote shell setup): Fix typos.
6017         (Predefined connection information): Describe, how to overwrite
6018         parameters of `tramp-methods'.
6019         (Remote programs, Remote processes, Traces and Profiles):
6020         Simplify example.
6021         (Remote programs): Remove superfluous comment.
6022         * doc/misc/trampver.texi: Update release number.
6023         * lisp/net/tramp-cache.el (tramp-connection-properties): Adapt docstring.
6024         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
6025         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
6026         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
6027         "gvfs-mkdir -p ..." does not work robust.
6028         (tramp-gvfs-maybe-open-connection): Adapt `tramp-get-method-parameter' call.
6029         * lisp/net/tramp-sh.el (tramp-methods):
6030         Add `tramp-remote-shell-login' parameter where it fits.
6031         (tramp-get-remote-path): Use it.
6032         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
6033         (all): Adapt `tramp-get-method-parameter' calls.
6034         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
6035         (tramp-get-method-parameter): Replace argument METHOD by VEC.
6036         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
6037         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
6038         (all): Adapt `tramp-get-method-parameter' calls.
6039         * lisp/net/trampver.el Update release number.
6040         * test/automated/tramp-tests.el (tramp--instrument-test-case):
6041         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
6042         (tramp-test13-make-directory, tramp--test-adb-p)
6043         (tramp--test-smb-or-windows-nt-p): Simplify.
6044         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
6045         (tramp--test-special-characters): Fix docstring.  Add gvfs and ftp tests.
6046         (tramp--test-utf8): Fix docstring.
6048 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
6050         Add new xref-query-replace command
6051         * lisp/progmodes/xref.el (xref--match-buffer-bounds): New
6052         function, extracted from xref-pulse-momentarily.
6053         (xref-query-replace): New command.
6054         (xref--query-replace-1): New helper function.
6055         (xref--xref-buffer-mode-map): Add `r' binding.
6057 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
6059         Simplify icalendar decoding of Z dates
6060         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
6061         Simplify calculation of time strings with trailing "Z".
6063 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
6065         Do not corrupt grep-find-ignored-files
6066         * lisp/progmodes/project.el (project-ignores): Change the order of
6067         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
6069         Add xref-match-item, and use it
6070         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
6071         (xref-file-location): Add reader for the column slot.
6072         (xref-match-item): New class.
6073         (xref-match-bounds): A method implementation for it.
6074         (xref-make-match): New constructor function.
6075         (xref--current-item): New private variable.
6076         (xref-pulse-momentarily): Use it.
6077         (xref--pop-to-location): Change the first argument to an xref
6078         item, instead of location, bind xref--current-item.
6079         Update all callers.
6080         (xref-next-line, xref-prev-line, xref--next-error-function)
6081         (xref--mouse-2): Look for the property `xref-item',
6082         instead of `xref-location'.
6083         (xref--item-at-point): Likewise.  This function replaces
6084         `xref-location-at-point'.  Update all callers.
6085         (xref--insert-xrefs): Add the `xref-item' text property, instead
6086         of `xref-location'.
6087         (xref--collect-match): Use xref-make-match.
6089         Rename xref--xref to xref-item
6090         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
6091         Update all references.
6093         Rename xref description slot to summary
6094         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
6095         slot to `summary'.
6097         vc-hg: Perform the print-log call asynchronously
6098         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
6099         asynchronously (bug#21067).
6101         Add xref-after-jump-hook and xref-after-return-hook
6102         * lisp/progmodes/xref.el (xref-after-jump-hook)
6103         (xref-after-return-hook): New hooks.
6104         (xref-pulse-on-jump): Remove, in favor of the above.
6105         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
6106         (xref--pop-to-location, xref--display-position)
6107         (xref-pop-marker-stack): Use the new hooks, as requested in
6108         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
6110 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
6112         Correct js-mode's lighter
6113         * lisp/progmodes/js.el (js-mode): Correct the lighter.
6115 2015-07-19  Leo Liu  <sdl.web@gmail.com>
6117         Fix a bug in cfengine3-mode
6118         * progmodes/cfengine.el (cfengine3-mode): Handle nil
6119           eldoc-documentation-function.
6121 2015-07-18  Julien Danjou  <julien@danjou.info>
6123         sieve-mode: support "body" test command
6124         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
6125         Add missing "body" test command.
6127 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
6129         Fix info-apropos when the default encoding is Latin-N
6130         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
6131         'undecided', so that it is set to the encoding of the Info file we
6132         are about to insert.  Otherwise, 'info-apropos' will fail to find
6133         some index nodes in some UTF-8 encoded files, if the buffer's
6134         previous encoding is Latin-N or some such.
6136 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
6138         * epg.el (epg--start): Check that gpgconf can be found before calling it.
6140         Expose more file types to OS X that Emacs understands.
6141         * Cocoa/Emacs.base/Contents/Info.plist: Add editor role for sty, dtx,
6142         json, and org files.  Export UTIs for el, elc, and org files.
6144 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
6146         Fix visual-order cursor movement when lines are truncated
6147         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
6148         simulate display in a window of infinite width, to allow move_it_*
6149         functions reach positions outside of normal window dimensions.
6150         Remove code that tried to handle a subset of these situations by
6151         manual iteration of buffer text.  (Bug#17777)
6153         Fix following Info cross-references to anchors
6154         * lisp/info.el (Info-read-subfile): Add to the returned value the
6155         length of subfile preamble, after converting it to file's byte
6156         offset, as expected by the caller.  Use bufferpos-to-filepos.
6157         (Info-find-node-2): If searching for a node with a
6158         1000-character slop fails, try again with a 10000-character slop,
6159         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
6160         * lisp/international/mule-util.el (bufferpos-to-filepos): New
6161         function.
6162         * etc/NEWS: Mention bufferpos-to-filepos.
6164         Fix scrolling backwards on TTY frames under scroll-conservatively
6165         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
6166         in moving backwards on TTY frames.  (Bug#21080)
6168 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
6170         Consider a jsdoc tag to be a beginning of a paragraph as well
6171         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
6172         consider a jsdoc tag to be a beginning of a paragraph as well.
6174 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
6176         * lisp/emacs-lisp/package.el: Fix warnings
6178         * lisp/emacs-lisp/package.el (package-buffer-info):
6179         Add author and maintainers to `package-buffer-info'.
6181         * lisp/emacs-lisp/package.el: Many small changes
6182         Replace all instances of 'face with 'font-lock-face.
6183         (describe-package-1): Improve some strings and move the summary up the
6184         list.
6185         (package-install-file): Update docstring.
6186         (package-menu-hide-package): Bind to `H'.
6188         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
6189         Fix error handling.
6191 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
6193         Fix hang with large yanks This should fix the bug fixed by Mike
6194         Crowe's patch in:
6195         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
6196         A problem in this area has been reported by several users; see
6197         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
6198         This fix differs from Mike Crowe's patch in that it should avoid a
6199         race condition that could lose SIGIO signals.  ignore_sigio dates
6200         back to the 1980s when some platforms couldn't block signals, and
6201         could only ignore them, which led to races when signals arrived
6202         while being ignored.  We shouldn't have to worry about those old
6203         platforms now.
6204         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
6205         * src/emacs.c (shut_down_emacs):
6206         Don't call ignore_sigio; unrequest_sigio should suffice.
6207         * src/keyboard.c (kbd_buffer_store_buffered_event):
6208         Use unrequest_sigio, not ignore_sigio.
6209         (kbd_buffer_get_event):
6210         Call request_sigio when getting the ball rolling again.
6212 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
6214         * lisp/obsolete/longlines.el (longlines-search-function):
6215         Fallback on `isearch-search-fun-default'.
6217 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
6219         Support @-mentions
6220         * rcirc.el (rcirc-completion-at-point): Support completion of
6221         mentions/messages with @nick instead of just nick.
6223 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
6225         Fix Bug#20943.
6226         * lisp/autorevert.el (auto-revert-handler): Do not check for
6227         `buffer-modified-p'.
6228         * lisp/files.el (buffer-stale--default-function): Check for
6229         `buffer-modified-p'.
6230         * test/automated/auto-revert-tests.el
6231         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
6233 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
6235         Fix delete-dups bug on long lists
6236         * lisp/subr.el (delete-dups):
6237         Don't mistakenly keep some dups when applied to long lists.
6239 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
6241         Better heuristic for C stack overflow
6242         Improve the heuristic for distinguishing stack overflows from
6243         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
6244         the getrlimit method wasn't portable to Cygwin; see:
6245         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
6246         Corinna suggested pthread_getattr_np but this also has problems.
6247         Instead, replace the low-level system stuff with a simple
6248         heuristic based on known good stack addresses.
6249         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
6250         * src/sysdep.c: Don't include <sys/resource.h>.
6251         (stack_direction): Remove.  All uses removed.
6252         (stack_overflow): New function.
6253         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
6254         Make SEGV fatal in non-main threads.
6256 2015-07-16  Daiki Ueno  <ueno@gnu.org>
6258         epg: Automatically start pinentry server
6259         * epg-config.el (epg-gpgconf-program): New variable.
6260         * epg.el (epg--start): Call `pinentry-start' if
6261         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
6263 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
6265         * lisp/gnus/nnimap.el: Fix my last bogus change
6266         Reinstall Stefan Monnier's change that was made in
6267         <83d824bc4041332f338ad7e5e830f443535aa300>.
6269 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
6271         Merge from gnulib
6272         This incorporates:
6273         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
6274         2015-07-05 acl-permissions: Fix on FreeBSD
6275         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
6276         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
6277         * lib/set-permissions.c: Copy from gnulib.
6279         Port to stricter C99
6280         * src/keyboard.h (kbd_buffer_store_event_hold):
6281         Don't return a void expression.
6283 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
6285         * doc/emacs/frames.texi (Creating Frames): Fix the command `C-x 5 m' runs.
6287 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
6289         New autorevert tests.
6290         * test/automated/auto-revert-tests.el: New file.
6292 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
6294         Clear gcprolist etc. after stack overflow
6295         After stack overflow, command_loop calls init_eval, and this needs to
6296         clear gcprolist and byte_stack_list (Bug#20996).
6297         * src/alloc.c (init_alloc):
6298         Move gcprolist and byte_stack_list initialization from here ...
6299         * src/eval.c (init_eval): ... to here.
6301 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
6303         * doc/emacs/windows.texi (Pop Up Window): Fix the description of `C-x 4 m'.
6305 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6307         Avoid deprecated enums in mac-ct font backend driver
6308         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
6309         (mac_ctfont_get_advance_width_for_glyph)
6310         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
6312         Cache font family in mac-ct font backend driver
6313         * src/macfont.m (macfont_family_cache): New variable.
6314         (syms_of_macfont): Initialize it.
6315         (macfont_available_families_cache): New variable.
6316         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
6317         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
6318         (macfont_handle_font_change_notification)
6319         (macfont_init_font_change_handler)
6320         (macfont_copy_available_families_cache): New functions.
6321         (macfont_create_family_with_symbol): Use font family caches.
6322         (macfont_list, macfont_list_family): Use
6323         macfont_copy_available_families_cache instead of
6324         mac_font_create_available_families.
6326 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
6328         Show the default value in the prompt
6329         * lisp/progmodes/xref.el: Add `M-?' binding for
6330         xref-find-references.  Declare functions `grep-read-files' and
6331         `grep-expand-template'.
6332         (xref--read-identifier): Show the default value in the prompt.
6334         When called with prefix argument, ask for file patterns to search as well
6335         * lisp/progmodes/xref.el (xref-find-regexp): When called with
6336         prefix argument, ask for file patterns to search as well.  When
6337         prompting for the directory, require an existing one.
6338         (xref-collect-matches): Add a new argument, FILES.  Use it in the
6339         above function.
6341         Add `project-ignores'
6342         * lisp/progmodes/project.el (project-ignores): New generic
6343         function, and an implementation for the VC project type.
6344         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
6345         variant of rgrep-default-command that handles a generic list of
6346         ignores.
6347         (xref-collect-matches): Use it, and pass through to it the value
6348         of the newly added argument.
6349         (xref-find-regexp): Handle ignored paths within the project.
6350         Remove outdated comment.
6351         * lisp/vc/vc.el (vc-default-ignore-completion-table):
6352         Skip the comments and the empty lines.
6354 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
6356         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
6358 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
6360         gnus-registry.el: Correct function argument order
6361         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
6362         Reverse the order of function arguments.
6364 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
6366         Bind grep-highlight-matches to nil
6367         * lisp/progmodes/xref.el (xref-collect-matches):
6368         Bind grep-highlight-matches to nil (bug#20728).
6370 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
6372         nnimap.el: Fix IMAP message size parsing
6373         * lisp/gnus/nnimap.el (nnimap-transform-headers):
6374         Don't assume that UID comes before RFC822.SIZE.
6376 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
6378         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
6379         (auth-source-creation-prompts): Declare.
6380         (nnimap-retrieve-headers, nnimap-status-message)
6381         (nnimap-request-create-group, nnimap-request-delete-group)
6382         (nnimap-close-group, nnimap-request-move-article)
6383         (nnimap-request-accept-article, nnimap-request-newgroups)
6384         (nnimap-request-post, nnimap-dummy-active-number)
6385         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
6386         (nnimap-parse-flags): Remove unused var `p'.
6387         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
6388         (nnimap-flags-to-marks): Remove unused var `totalp'.
6390 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
6392         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
6394 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6396         * src/macfont.m (macfont_list): Ignore font families lacking font descriptors.
6398 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
6400         Don't check the exit status, it can be misleading
6401         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
6402         exit status, it can be misleading.
6404         Introduce a Project API
6405         * lisp/progmodes/project.el: New file.
6406         * lisp/cedet/ede.el: (project-try-ede): New function.
6407         (project-root): New implementation.
6408         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
6409         Set project-search-path-function.
6410         (elisp--xref-find-references): Delegate some logic to
6411         project-search-path.
6412         (elisp-search-path): New function.
6413         (elisp-xref-find): Don't implement `matches' anymore.
6414         * lisp/progmodes/etags.el: Don't implement `matches'.
6415         Delegate some logic to project-search-path.
6416         (etags-search-path): New function.
6417         * lisp/progmodes/xref.el (xref-find-function):
6418         Remove `matches' from the API.
6419         (xref-find-regexp): Move whatever common logic was in elisp and
6420         etags implementations, and search the directories returned by
6421         project-directories and project-search-path.
6423 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
6425         * test/automated/map-tests.el (test-map-delete-return-value): Uncomment test.
6427         Add support for gv.el in map.el
6428         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
6429         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
6430         * test/automated/map-tests.el: Update tests to work with the new
6431         implementations of map-elt and map-put.
6433 2015-07-09  Glenn Morris  <rgm@gnu.org>
6435         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
6437 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
6439         Syntax-propertize until the end of the line first
6440         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
6441         until the end of the line first.
6443 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
6445         * doc/emacs/files.texi (File Archives): Add a cross reference.
6447 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
6449         nnimap.el: Handle plain value for nnimap-stream
6450         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
6451         capabilities, so that a 'plain value for the `nnimap-stream' server
6452         variable is handled correctly.
6453         * doc/misc/gnus.texi (Customizing the IMAP Connection):
6454         Document the 'plain option.
6456 2015-07-08  Leo Liu  <sdl.web@gmail.com>
6458         Fix bug in thing-at-point--bounds-of-well-formed-url
6459         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
6460           sure boundary contains current point.
6462 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
6464         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse' in the end.
6466         Declare whitespace-line-column a safe file-local
6467         * lisp/whitespace.el (whitespace-line-column): Declare to be a
6468         safe file-local when the value is an integer.
6470 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
6472         gnus-group.el: Check if group names are already strings
6473         * lisp/gnus/gnus-group.el (gnus-group-group-name):
6474         The group name may already be a string.
6475         Specifically, in the group list reached from the *Server* buffer,
6476         the 'gnus-group text property returns a string.  Everywhere else
6477         it returns a symbol.
6479         nnimap.el: Remove unused let variables
6480         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
6482 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
6484         Support "maximized" property of runemacs's shortcut
6485         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
6486         the '--maximized' switch to Emacs.
6488         Support "minimized" property of runemacs's shortcut
6489         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
6490         pass the '--iconic' switch to Emacs.  (Bug#20991)
6492 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
6494         Doc fixes
6495         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
6496         C-w' in Diff mode.
6497         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
6498         Add a cross reference.
6500 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
6502         * lisp/obsolete/landmark.el: Add Obsolete-since header
6504 2015-07-07  Glenn Morris  <rgm@gnu.org>
6506         * test/automated/ert-tests.el (ert-test-deftest):
6507         Update for recent changes.
6509 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
6511         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
6512         * lisp/emacs-lisp/gv.el (gv-setter): New function.
6513         (gv-invalid-place): New error.
6514         (gv-get): Use them.
6515         (gv-synthetic-place, gv-delay-error): New places.
6516         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
6517         (cl-defgeneric, cl-defmethod): Use gv-setter.
6519 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
6521         Make vc-tests work with MSYS svn program
6522         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
6523         svn is an MSYS program.
6525 2015-07-07  Ken Brown  <kbrown@cornell.edu>
6527         Improve recent change to emacsclient on Cygwin
6528         * lisp/server.el (server-process-filter): Remove redundant check
6529         that 'cygwin-convert-file-name-from-windows' is defined as a
6530         function on Cygwin.  Don't call that function unless its argument
6531         starts with a drive letter.
6533 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
6535         * lisp/emacs-lisp/package.el (package-compute-transaction): Bug fix
6536         Fix void variable due to `found-something' being in the wrong `let'.
6538 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
6540         * lisp/play/landmark.el: Move to lisp/obsolete/
6542 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
6544         Have `x-show-tip' handle `right' and `bottom' frame parameters.
6545         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
6546         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
6547         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
6548         tooltips also via `right' and `bottom' frame parameters.
6550 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
6552         Add online-help support to describe types
6553         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
6554         (describe-symbol): Improve the selection of default.
6555         * lisp/help-mode.el: Require cl-lib.
6556         (describe-symbol-backends): Move from help-fns.el.
6557         (help-make-xrefs): Use it.
6558         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
6559         for types.
6560         (cl--typedef-regexp): New const.
6561         (find-function-regexp-alist): Add entry for types.
6562         (cl-help-type, cl-type-definition): New buttons.
6563         (cl-find-class): New function.
6564         (cl-describe-type): New command.
6565         (cl--describe-class, cl--describe-class-slot)
6566         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
6567         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
6568         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
6569         New functions.  Moved from eieio-opt.el.
6570         (cl--generic-class-parents): New function, extracted from
6571         cl--generic-struct-specializers.
6572         (cl--generic-struct-specializers): Use it.
6573         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
6574         Improve constructor's docstrings.
6575         (cl-struct-unknown-slot): New error.
6576         (cl-struct-slot-offset): Use it.
6577         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
6578         definition in current-load-list.
6579         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
6580         (eieio--add-new-slot): Set it.
6581         (eieio-defclass-internal): Use new name for current-load-list.
6582         (eieio-oref): Add compiler-macro to warn about unknown slots.
6583         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
6584         as compile-time as well.  Improve constructor docstrings.
6585         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
6586         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
6587         (eieio-class-def): Remove button.
6588         (eieio-help-constructor): Use new name for load-history element.
6589         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
6590         (eieio-method-documentation): Move to cl-generic.el.
6591         (eieio-display-method-list): Use new names.
6592         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
6593         Add "define-linline".
6594         (lisp-fdefs): Remove "defsubst".
6595         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
6596         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
6597         (macroexp--warn-and-return): Use it to avoid inf-loops.
6598         Add `compile-only' argument.
6600 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
6602         python.el: Fix local/remote shell environment setup
6603         * lisp/progmodes/python.el (python-shell-with-environment): Fix
6604         remote/local environment setup.
6605         * test/automated/python-tests.el (python-shell-with-environment-1)
6606         (python-shell-with-environment-2): New tests.
6608 2015-07-06  Glenn Morris  <rgm@gnu.org>
6610         * lisp/simple.el (set-variable): Tweak recent doc fix.
6612 2015-07-06  Ken Brown  <kbrown@cornell.edu>
6614         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE
6616 2015-07-06  Glenn Morris  <rgm@gnu.org>
6618         * lisp/simple.el (set-variable): Use user-error for type mismatch.
6620 2015-07-06  Ken Brown  <kbrown@cornell.edu>
6622         * src/emacs.c (main): Don't increase the stack size on Cygwin
6624 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
6626         (describe-symbol): Rewrite describe-function-or-variable
6627         * lisp/help-fns.el (describe-symbol-backends): New var.
6628         (help-xref-stack-item): Declare.
6629         (describe-symbol): Rename from describe-function-or-variable.
6630         Rewrite using describe-symbol-backends instead of help-xref-interned.
6631         * lisp/help.el (help-map): Use it.
6632         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
6633         (help-xref-interned): Make it into an obsolete alias.
6635         (eieio-persistent-save): Don't ignore `file' arg (bug#20972)
6636         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
6637         `file' arg.  Always use utf-8-emacs.  Use with-temp-buffer and cl-letf.
6639 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
6641         Fix parsing glitches in dired-mark-sexp (bug#13575)
6642         * lisp/dired-x.el (dired-x--string-to-number): New function.
6643         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
6644         of directory-listing-before-filename-regexp.  Consider
6645         forward-word harmful and replace it.  Add more verbiage in
6646         comments and doc string.
6648 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
6650         python.el: Respect process environment for remote shells
6651         * lisp/progmodes/python.el
6652         (python-shell-calculate-process-environment): Calculate
6653         process-environment or tramp-remote-process-environment depending
6654         whether current file is remote.
6655         (python-shell-calculate-exec-path): Calculate exec-path or
6656         tramp-remote-path depending whether current file is remote.
6657         (python-shell-with-environment): New macro.
6658         (python-shell-prompt-detect, python-shell-calculate-command)
6659         (python-shell-make-comint, python-check): Use it.
6661         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
6662         * lisp/progmodes/python.el (python-shell--interpreter)
6663         (python-shell--interpreter-args): New vars.
6664         (inferior-python-mode, python-shell-make-comint): Use them.
6666         python.el: Fixes for IPython 3.x  (Bug#20580)
6667         * lisp/progmodes/python.el:
6668         (python-shell-completion-native-setup): Fix IPython 3.x setup.
6669         (python-shell-completion-native-get-completions): Fix timeout
6670         logic.
6672         python.el: Fix mark-defun behavior  (Bug#19665)
6673         * lisp/progmodes/python.el: (python-mark-defun): New function.
6674         * test/automated/python-tests.el (python-mark-defun-1)
6675         (python-mark-defun-2, python-mark-defun-3): New tests.
6677 2015-07-05  Glenn Morris  <rgm@gnu.org>
6679         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
6680         such as "extends(parent), private".  (Bug#20969)
6681         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
6682         New tests.
6684 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
6686         Avoid duplicate calls to current_timespec
6687         * src/process.c (wait_reading_process_output):
6688         Cache current_timespec results as long as we're not waiting.
6690 2015-07-05  Ian Kelling  <ian@iankelling.org>
6692         Avoid returning early reading process output due to SIGIO
6693         * src/process.c (wait_reading_process_output): Extend the behavior of
6694         not breaking due to not finding output when a timer has lowered the
6695         timeout to include when SIGIO lowers the timeout.
6697         Don't return as fast reading any process output
6698         * src/process.c (wait_reading_process_output):
6699         The patch for Bug#17647 returns too fast sometimes when reading
6700         from any processes. Revert part of it, and limit the timeout more
6701         sensibly (Bug#20978).
6703         Refactor timeouts in wait_reading_process_output
6704         * src/process.c (wait_reading_process_output):
6705         Simplify timeouts with an enum.  Remove a redundant condition.
6706         (Bug#20978)
6708         Remove ADAPTIVE_READ_BUFFERING ifdef
6709         * src/process.c (make-process, make-pipe-process, deactivate_process)
6710         (wait_reading_process_output, read_process_output, send_process)
6711         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
6712         added in case there was an operating system in which it was not
6713         useful.  That was 11 years ago and it hasn't happened.  Make
6714         development easier by not considering the effect of changes on a
6715         theoretical OS where this is disabled (Bug#20978).
6717 2015-07-05  Glenn Morris  <rgm@gnu.org>
6719         * lisp/simple.el (set-variable): Doc fix.
6721         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
6723 2015-07-05  Ian Kelling  <ian@iankelling.org>
6725         accept-process-output fix
6726         This is a followon to the fix for Bug#17647 (Bug#20976).
6727         * src/process.c (status_notify): Fix too high return in some cases.
6729 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
6731         * lisp/character-fold.el (character-fold-table):
6732         Only fold decompositions if at least one character is non-spacing.
6733         (Bug#20975)
6735 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
6737         Merge from gnulib
6738         This incorporates:
6739         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
6740         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
6741         2015-07-02 update-copyright: fix test failure with perl >= 5.22
6742         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
6743         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
6744         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
6745         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
6747 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
6749         Respect `prog-indentation-context' in python.el
6750         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
6751         (python-indent-context, python-indent--calculate-indentation)
6752         (python-info-current-defun)
6753         (python-info-dedenter-opening-block-message)
6754         (python-info-line-ends-backslash-p)
6755         (python-info-beginning-of-backslash)
6756         (python-info-continuation-line-p): Use `prog-widen'.
6757         (python-indent--calculate-indentation)
6758         (python-indent--calculate-levels)
6759         (python-indent-calculate-indentation): Use `prog-first-column'.
6760         (python-indent--calculate-levels): Simplify.
6761         Ignore also initial empty lines for syntax calculation.
6762         * lisp/progmodes/python.el (python-indent-context): Return
6763         :no-indent for first non-empty line, not just in line 1.
6764         * test/automated/python-tests.el (python-indent-base-case)
6765         (python-indent-inside-paren-1, python-indent-inside-paren-2)
6766         (python-indent-inside-paren-3, python-indent-inside-paren-4)
6767         (python-indent-inside-paren-5, python-indent-inside-paren-6)
6768         (python-indent-after-backslash-1)
6769         (python-indent-after-backslash-2)
6770         (python-indent-after-backslash-3)
6771         (python-indent-after-backslash-4, python-indent-inside-string-1):
6772         Expect :no-indent for first non-empty line.
6774 2015-07-04  Daniel Colascione  <dancol@dancol.org>
6776         Factor isearch word description into new function
6777         * lisp/isearch.el (isearch--describe-word-mode): New function.
6778         (isearch-message-prefix, isearch-query-replace): Use it.
6780 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
6782         Fix mouse pointer on w32 when a menu is active
6783         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
6784         shape while a menu is in use.  This started happening since we now
6785         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
6787 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
6789         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
6790         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
6791         parameter.  (Bug#17344)
6793         Have `compilation-set-window' use right window for getting fringes (Bug#20829)
6794         * lisp/progmodes/compile.el (compilation-set-window): Take
6795         `window-fringes' from argument window.  (Bug#20829)
6797 2015-07-03  Glenn Morris  <rgm@gnu.org>
6799         Update eieio tests for recent eieio-core change.
6800         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
6801         * test/automated/eieio-tests.el
6802         (eieio-test-32-slot-attribute-override-2):
6803         Replace the deleted eieio--class-v with cl--find-class.
6805 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
6807         Fix some issues with `window-divider-mode'
6808         * lisp/frame.el (window-divider-default-places): New option.
6809         (window-divider-mode): Remove option.
6810         (window-divider-mode): Make it a "regular" minor mode.
6811         (window-divider-width-valid-p): Drop frame- prefix.
6812         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
6813         prefix.  Handle `window-divider-default-places'.
6814         (frame--window-divider-mode-set-and-apply): Remove.
6815         (window-divider-default-bottom-width)
6816         (window-divider-default-right-width): Drop :group entries.
6817         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
6818         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
6819         (menu-bar-no-window-divider): Set `window-divider-default-places'
6820         and call `window-divider-mode'.
6821         * doc/emacs/frames.texi (Window Dividers): Document
6822         `window-divider-default-places'.
6824 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
6826         Add cross references in documentation
6827         * doc/emacs/display.texi (Displaying Boundaries):
6828         * doc/emacs/search.texi (Word Search): Add cross references.
6830 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
6832         -batch should not affect ‘’ -> `' display
6833         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
6834         -batch (Bug#20926).
6836 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
6838         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
6839         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el,
6840           lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
6841         Use cl--find-class instead.
6843         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
6845 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
6847         Some further fixes in Change Window node.  (Bug#20183)
6848         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
6849         by "resizing" in section title.  Add some concept indices.
6850         Suggested by N. Jackson (Bug#20183).
6852         Reference window dividers in Change Window section.
6853         * doc/emacs/windows.texi (Change Window): Reference window
6854         dividers.
6856         Document new `window-divider-mode'.
6857         * lisp/frame.el (window-divider-mode): Fix doc-string.
6858         * doc/emacs/frames.texi (Window Dividers): New section.
6860         Improve accessibility of window dividers.  (Bug#20183)
6861         * lisp/faces.el (window-divider)
6862         (window-divider-first-pixel, window-divider-last-pixel): Change
6863         membership from `frames' to `window-divider' customization group.
6864         * lisp/frame.el (window-divider): New customization group.
6865         (window-divider-mode): New minor mode.
6866         (window-divider-default-bottom-width)
6867         (window-divider-default-right-width): New options.
6868         (frame--window-divider-previous-mode): New variable.
6869         (frame-window-divider-width-valid-p)
6870         (frame--window-divider-mode-apply)
6871         (frame--window-divider-mode-set-and-apply): New functions.
6872         * lisp/menu-bar.el (menu-bar-options-save): Save
6873         window-divider-mode settings.
6874         (menu-bar-window-divider-customize)
6875         (menu-bar-bottom-and-right-window-divider)
6876         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
6877         (menu-bar-no-window-divider): New functions.
6878         (menu-bar-showhide-window-divider-menu): New variable.
6879         (menu-bar-showhide-menu): Show/hide window divider menu.
6880         * lisp/mouse.el (mouse-split-window-vertically)
6881         (mouse-split-window-horizontally): Replace `error' by
6882         `user-error'.  Bind `window-combination-resize' to nil.
6883         (top-level): Add/reorder mouse key bindings on mode- and
6884         vertical-line.
6886 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
6888         Don't display ‘’ as `' under X in en_GB
6889         The curved quote setup code invokes (char-displayable-p ?‘),
6890         but this isn’t reliable until after the X frame replaces the
6891         terminal frame (Bug#20926).
6892         * lisp/international/mule-cmds.el (set-locale-environment):
6893         Move curved quote setup code from here ...
6894         * lisp/startup.el (command-line): ... to here, after creating
6895         the X frame.
6897 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
6899         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring
6901         Add argument to reverse the meaning of ido-restrict-to-matches
6902         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
6903         to reverse the meaning (Bug#15631).
6905 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
6907         Be more tolerant to fonts named "Foobar-12"
6908         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
6909         don't barf; instead, request a new fontset to be generated.  This
6910         avoids unnecessarily rejecting fonts named against XLFD rules.  See
6911         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
6912         for the description of the original problem.
6913         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
6914         by a hyphen in a font's name.
6916         Fix value of posn-at-pont in R2L lines
6917         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
6918         coordinate of -1, for a newline in a right-to-left line that
6919         overflowed into the left fringe.
6921 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
6923         (cl--copy-slot-descriptor): Copy the `props' alist as well
6924         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
6925         Rename from cl--copy-slot-descriptor.
6926         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
6928 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
6930         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
6931         (xterm-query-timeout): New var.
6932         (xterm--query): Use it.  Fallback on async method if we timeout before
6933         getting the first byte of the reply (bug#12354).
6935 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
6937         Spelling fixes
6939 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
6941         * doc/emacs/frames.texi (Frame Commands): Typo fix. (Bug#20946)
6943 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
6945         In strings, prefer plain ` and ' to \` and \'
6946         * lisp/allout.el (allout-insert-listified):
6947         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
6948         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
6949         (ls-lisp-string-lessp):
6950         * lisp/menu-bar.el (menu-bar-open):
6951         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
6952         * lisp/progmodes/compile.el (compile):
6953         * lisp/progmodes/etags.el (tags-loop-scan):
6954         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
6955         * lisp/subr.el (posn-actual-col-row):
6956         * lisp/term/pc-win.el (x-list-fonts):
6957         * lisp/textmodes/texinfmt.el (texinfmt-version):
6958         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
6959         * lisp/time.el (display-time-world-list):
6960         * lisp/tmm.el (tmm-menubar):
6961         * src/buffer.c (syms_of_buffer):
6962         * src/fileio.c (syms_of_fileio):
6963         Omit unnecessary and confusing backslash before quote.
6964         * lisp/erc/erc.el (erc-cmd-LASTLOG):
6965         * lisp/progmodes/flymake.el (flymake-fix-file-name):
6966         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
6967         Fix string that was intended to escape a backslash and not a quote.
6969 2015-06-30  Glenn Morris  <rgm@gnu.org>
6971         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
6973         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
6974         Replace hard-coded lists with wildcard + filter-out.
6976         * configure.ac (system-configuration-features): Add X11, NS.
6978         Improve reproducibility of generated loaddefs file.
6979         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
6980         Make the return value the modtime of the input file (if no autoloads).
6981         (update-directory-autoloads): In the "no autoloads" section,
6982         use "most recent modtime" rather than "current time".
6984 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
6986         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic
6987         (Bug#20930)
6989 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
6991         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
6993         Add seq-min and seq-max
6994         Bump version number.
6995         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
6996         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
6998 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
7000         Make sure sleep-for always delays for as long as it's told
7001         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
7002         a loop, to ensure we always wait exactly the required amount of
7003         time.  (Bug#15990)
7005 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
7007         Fix pointer signedness glitch
7008         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
7010 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
7012         Don't block changes in mouse pointer inside 'track-mouse'
7013         * etc/NEWS:
7014         * doc/lispref/frames.texi (Mouse Tracking): Document the special
7015         effect of setting 'track-mouse' to 'dragging'.
7016         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
7017         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
7018         * lisp/mouse-drag.el (mouse-drag-throw):
7019         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
7020         to avoid changes in the shape of the mouse pointer.
7021         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
7022         pointer shape when do_mouse_tracking has the value of 'dragging',
7023         not just any non-nil value.  (Bug#20934)
7024         (syms_of_xdisp): DEFSYM 'dragging'.
7026 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
7028         * lisp/isearch.el (isearch-toggle-word): Fix toggle
7030         * lisp/emacs-lisp/package.el (package-compute-transaction):
7031         Don't assume version sorting.
7033         * lisp/emacs-lisp/package.el (package--save-selected-packages):
7034         Don't save before init time, to avoid overwriting configurations.
7035         (Bug#20855)
7037 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
7039         Add cross references.
7040         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
7041         references.
7043 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
7045         cfengine.el: update for the upcoming CFEngine 3.7 release
7046         Update for the upcoming CFEngine 3.7 release: support macros and
7047         quoted context strings; reformat JSON; indent promise attributes 2
7048         units by default; give function parameter descriptions in the eldoc
7049         glue.
7050         * cfengine.el: Update version and docs and fix name.  Autoload
7051         `json-pretty-print'.  Support new features in 3.7.
7052         (cfengine-parameters-indent): Set default promise attribute indent to
7053         2 more than the promise itself.
7054         (cfengine3-macro-regex): New variable to match the new macro syntax.
7055         (cfengine3-font-lock-keywords): Use it to highlight macros.
7056         (cfengine3-indent-line): Use it to indent macros to column 0.
7057         (cfengine3-class-selector-regex): Update for the new quoted strings
7058         format.
7059         (cfengine3-reformat-json-string): New function to reformat a JSON
7060         string using `json-pretty-print'.
7061         (cfengine3-format-function-docstring): Use function parameter
7062         description if it's provided by the cf-promises syntax dump.
7064 2015-06-29  Michael R. Mauger  <michael@mauger.com>
7066         Cygwin emacsclient handles w32 file names
7068 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
7070         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice (bug#20925).
7072 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
7074         * doc/lispref/text.texi (Sticky Properties): Improve wording.
7075         (Bug#20924)
7077         Allow font names that end in "-NN", where NN is a number
7078         * src/font.c (font_load_for_lface): If the font-spec didn't match
7079         any available fonts, try again without interpreting trailing "-NN"
7080         as the font size.  For the description of the original problem, see
7081         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
7083         .gdbinit followup to changes in !USE_LSB_TAG
7084         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
7085         !USE_LSB_TAG, as Emacs no longer does.
7087 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
7089         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
7090         Otherwise `s p' of f and F will stomp on each other's value.  (Bug#20916)
7092 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
7094         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
7095         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
7097 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
7099         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point as additional guess
7101         * lisp/emacs-lisp/package.el (describe-package): Convert the guess to a string
7103 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
7105         apropos-library quoting fix
7106         * lisp/apropos.el (apropos-library): Quote library consistently
7107         with the rest of the quoting used by apropos.
7109         Clarify interpreter-mode-alist doc
7110         * lisp/files.el (interpreter-mode-alist):
7111         Reword to avoid confusing quoting that wasn't working anyway.
7113 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
7115         Sync with Tramp 2.2.12
7116         * doc/misc/trampver.texi:
7117         * lisp/net/trampver.el: Update release number.
7118         * test/automated/tramp-tests.el (tramp-test13-make-directory):
7119         Fix cleanup.
7121 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
7123         * lisp/isearch.el (isearch-mode): Don't char-fold regexps
7124         (bug#20913)
7126 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
7128         Bind grep-highlight-matches around the rgrep call
7129         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
7130         around the rgrep call (bug#20728).
7132         Put "--color" before the other options in grep-command
7133         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
7134         before the other options in grep-command (bug#20912).
7136         Add --color Grep option to the command dynamically
7137         * lisp/progmodes/grep.el (grep-template, grep-find-template):
7138         Update the description for <C>.  (Bug#20728)
7139         (grep-compute-defaults): Don't add the --color option to
7140         grep-options.  Only add it to grep-command.
7141         (grep-expand-keywords): Expand the env value opts into <C>.
7142         (grep-expand-template): Replace cf in the env with the opts list,
7143         that can include -i and --color.
7144         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
7145         "--color=always" from the template, because we don't have to.
7147 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
7149         cl-extra fixes for most-negative-fixnum
7150         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
7151         Don't mishandle an argument equal to most-negative-fixnum,
7152         whose absolute value equals itself.
7153         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
7155         Initialize cl--gensym-counter to 0
7156         Previously it was initialized to a random value, which made it
7157         harder to reproduce earlier Emacs runs.  The need for a random
7158         value went away when Emacs introduced and used the #: syntax for
7159         uninterned symbols (Bug#20862).
7160         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
7161         Document that cl--gensym-counter now starts with 0.
7162         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
7163         (cl--random-time): Move to near only remaining use.
7164         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
7166         Improve docstring for macroexp-let2
7167         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
7168         Improve as per suggestion by RMS in:
7169         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
7170         Also, rename args to match new doc string.
7172 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
7174         Fix VC test suite on MS-Windows
7175         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
7176         always starts with 3 slashes after the colon.
7177         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
7178         'w32-application-type' to invoke CVS on MS-Windows with properly
7179         formatted CVSROOT directory name.
7181         Add a new function w32-application-type
7182         * src/w32proc.c (Fw32_application_type): New function.
7184         Avoid error in TLS connections due to incorrect format
7185         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
7186         the call to 'error', instead of the unsupported %u.  Reported by
7187         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
7189 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
7191         * lisp/replace.el (replace-search): Fix regexp case (bug#20901)
7193 2015-06-26  Leo Liu  <sdl.web@gmail.com>
7195         Fix indentation for with-output-to-string
7196         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
7197           `with-output-to-string' in elisp.
7198           Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string"
7199           This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
7201 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
7203         Minor corrections in ELisp manual
7204         * doc/lispref/nonascii.texi (Character Properties): Correct
7205         inaccuracies in description of values of the Unicode properties.
7207         Fix invisible mouse pointers on Windows.
7208         * src/w32fns.c: Include windowsx.h.
7209         (w32_wnd_proc): If the mouse moved and the mouse pointer is
7210         invisible, make it visible again even when the main (Lisp)
7211         thread is busy.
7212         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
7213         garbaging the frame have the input thread call SetCursor.
7215 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
7217         Provide invisible mouse pointers on Windows.  (Bug#6105) (Bug#12922)
7218         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
7219         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
7220         * src/w32term.c (w32_hide_hourglass): Handle
7221         f->pointer_invisible.
7222         (w32_toggle_invisible_pointer): New function.
7223         (w32_create_terminal): Add w32_toggle_invisible_pointer as
7224         toggle_invisible_pointer_hook for this terminal.
7226 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
7228         Doc fix for deletion commands
7229         'delete-char' does not respect the value of 'delete-active-region'.
7230         * doc/emacs/killing.texi (Deletion):
7231         Fix documentation for some single-char deletion commands.
7233         * doc/emacs/help.texi (Apropos):
7234         Improve documentation of 'apropos-do-all'.
7236         * doc/emacs/help.texi (Help Summary):
7237         Improve documentation of 'describe-mode'.
7239 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
7241         Fix submake dependency bug with .h files
7242         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
7243         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
7244         before the submake in $(libsrc) would spin off a subsubmake
7245         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
7247 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
7249         * lisp/character-fold.el (character-fold-table): Reuse `table'
7251 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
7253         Translate undisplayable ‘ to `
7254         * doc/lispref/help.texi (Keys in Documentation):
7255         * lisp/international/mule-cmds.el (set-locale-environment):
7256         * lisp/term/w32console.el (terminal-init-w32console):
7257         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
7258         If ‘ is not displayable, transliterate it to `, not to '.  See:
7259         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
7261         Fix C99 incompatibilities in Cairo code
7262         * src/image.c (xpm_load) [USE_CAIRO]:
7263         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
7264         Fix pointer signedness problem.
7266 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
7268         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
7269         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
7270           `with-output-to-string' should have the same indent as `progn'.
7271           This is in line with the declaration of `with-output-to-string'.
7273 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
7275         Get ‘./configure; make -C src emacs’ to work
7276         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
7277         * lib-src/Makefile.in (../lib/libgnu.a):
7278         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
7280 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
7282         Fix GC bugs --with-wide-int and Qnil == 0
7283         Use the same alignment for the !USE_LSB_TAG case as for the
7284         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
7285         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
7286         once we changed the representation of symbols so that Qnil == 0.
7287         Problem reported by Eli Zaretskii (Bug#20862).
7288         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
7289         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
7290         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
7291         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
7292         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
7293         This optimization in the !USE_LSB_TAG case is no longer valid when
7294         symbols are represented via offsets.  Change the only use to
7295         assume that pointers might hide in objects.
7296         * src/lisp.h (alignas) [!USE_LSB_TAG]:
7297         Require support in this case, too.
7298         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
7299         This is OK, because the !USE_LSB_TAG case now applies only when
7300         Lisp_Object is wider than void *, so there's no longer any need
7301         to shift the offset.  Not shifting the offset means that
7302         symbol representations have the same alignment as pointers,
7303         which the GC assumes.
7305 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
7307         * doc/lispintro/emacs-lisp-intro.texi (Data types):
7308         Improve documentation of 'substring'.
7310 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
7312         * lisp/character-fold.el (character-fold-table): Fix table generation
7314 2015-06-24  Glenn Morris  <rgm@gnu.org>
7316         * nextstep/Makefile.in (all): Make it the first target.
7317         (../src/emacs${EXEEXT}): Add rule for making it.
7319 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
7321         * etc/NEWS: Fix mention to old function name
7323         * lisp/character-fold.el: New file (Bug#20887)
7324         (character-fold-to-regexp): New function.
7325         * lisp/replace.el (replace-search): Check value of
7326         `character-fold-search'.
7327         * lisp/isearch.el: Move character-folding code to
7328         character-fold.el
7329         (isearch-toggle-character-fold): New command.
7330         (isearch-mode-map): Bind it to "\M-sf".
7331         (isearch-mode): Check value of `character-fold-search'.
7333 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
7335         * lisp/subr.el (remove-from-invisibility-spec): Handle the t case
7336         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
7337         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
7339         * lisp/progmodes/xref.el: Avoid init-args in oref.
7340         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
7341         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
7343 2015-06-24  Glenn Morris  <rgm@gnu.org>
7345         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
7347 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
7349         * lisp/gnus/nnmaildir.el: Silence lexical warnings
7350         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
7351         functional style.
7352         (nnmaildir--update-nov): Remove unused var `numdir'.
7353         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
7354         (nnmaildir-request-group, nnmaildir-request-create-group)
7355         (nnmaildir-request-post, nnmaildir-request-move-article)
7356         (nnmaildir-request-accept-article, nnmaildir-active-number): Mark unused args.
7357         (nnmaildir-get-new-mail, nnmaildir-group-alist)
7358         (nnmaildir-active-file): Declare.
7359         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
7360         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
7361         `mark', `end', `new-mark', and `mark-sym'.
7362         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
7363         `nlist2'.
7364         (nnmaildir-request-expire-articles):
7365         Remove unused vars `article', `stop' and `nlist2'.
7366         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
7367         `end'.  Use nnmaildir--article when dyn-binding is needed.
7368         Give the value directly in the `let' for `del-mark', `del-action',
7369         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
7370         (nnmaildir-close-server): Declare those local vars that need to be
7371         dyn-bound.
7373 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
7375         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
7377         Port selection info fix to clang
7378         * src/keyboard.h (kbd_buffer_store_event_hold):
7379         Don't assume C11 semantics for alignof (Bug#20756).
7381         Fix bug that munged selection info
7382         On some optimizing C compilers, copying a structure did not
7383         copy the padding bytes between elements, and the type punning
7384         between struct input_data and struct selection_input_data did
7385         not work.  Change the C code to use a proper union type instead.
7386         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
7387         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
7388         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
7389         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
7390         (mark_kboards):
7391         Use union buffered_input_event, not struct input_event.
7392         (clear_event, deliver_input_available_signal, process_special_events):
7393         Remove unnecessary forward decls.
7394         (kbd_buffer_store_buffered_event): New function, mostly just the
7395         old kbd_buffer_store_event_hold, except its argument is of type
7396         union buffered_input_event, not struct input_event.
7397         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
7398         not needed otherwise.  Argument is now of type
7399         struct selection_input_event *, not struct input_event *.
7400         All callers changed.
7401         (clear_event): Arg is now of type union buffered_input_event *,
7402         not struct input_event *.  All callers changed.
7403         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
7404         (union buffered_input_event): New type.
7405         (kbd_buffer_store_event_hold): Now an inline function,
7406         defined here.
7407         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
7408         (struct input_event): Use it.
7409         * src/xselect.c (struct selection_event_queue):
7410         Make elements be of type struct selection_input_event,
7411         not struct input_event.
7412         (selection_input_event_equal): New static function.
7413         (x_queue_event): Use it.
7414         (x_queue_event, x_decline_selection_request)
7415         (x_selection_current_request, x_reply_selection_request)
7416         (x_handle_selection_request, x_handle_selection_clear)
7417         (x_handle_selection_event): Use struct selection_input_event,
7418         not struct input_event.  All callers changed.
7419         (x_convert_selection): Omit unused first arg.  All callers changed.
7420         (Fx_disown_selection_internal): Omit unnecessary union.
7421         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
7422         rather than rolling our own equivalent.  Prefer sie.kind when
7423         setting up that kind of structure.
7424         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
7425         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
7426         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
7427         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
7428         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
7429         (SELECTION_EVENT_TIME, x_handle_selection_event):
7430         Arg is now of type struct selection_input_event *)
7431         not struct input_event *.  All callers changed.
7433 2015-06-23  Glenn Morris  <rgm@gnu.org>
7435         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
7437 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
7439         * lisp/isearch.el: Fold many unicode characters to ASCII
7440         (isearch-character-fold-search, isearch--character-fold-extras)
7441         (isearch--character-fold-table): New variable.
7442         (isearch--character-folded-regexp): New function.
7443         (isearch-search-fun-default): Use them.
7444         * lisp/replace.el (replace-character-fold): New variable.
7445         (replace-search): Use it.
7446         * etc/NEWS: Document it.
7448 2015-06-23  Glenn Morris  <rgm@gnu.org>
7450         Check for an input event before showing a dialog box.  (Bug#20813)
7451         * lisp/subr.el (y-or-n-p):
7452         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
7453         as last-nonmenu-event.
7455 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
7457         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
7458         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
7459         (switch-to-prev-buffer, switch-to-next-buffer): Respect
7460         switch-to-visible-buffer independent of the windows history.
7462 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
7464         * src/keyboard.c (last_timer_event): Remove unused var.
7466 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
7468         * test/automated/package-test.el (package-test-update-listing):
7469         Fix test.
7471 2015-06-23  Glenn Morris  <rgm@gnu.org>
7473         Revert 2014-06-25 nextstep/Makefile change.
7474         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
7475         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
7476         not as an order-only prerequisite.
7478         * configure.ac (--with-ns): Enable by default on OS X.
7480 2015-06-23  Leo Liu  <sdl.web@gmail.com>
7482         Fix shell-for/backward-command to exclude spaces
7483         * lisp/shell.el (shell-forward-command, shell-backward-command):
7484           Handle the 'move case from re-search-forward/backward.
7485           fixes debbugs:20873
7487 2015-06-22  Juri Linkov  <juri@linkov.net>
7489         * lisp/replace.el (query-replace-read-from): Add separator to
7490         the local binding of text-property-default-nonsticky.  (Bug#20690)
7492         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
7493         (Bug#20785)
7495 2015-06-22  Ken Brown  <kbrown@cornell.edu>
7497         Enable CPU profiling on Cygwin
7498         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
7499         change that undefined this.
7500         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
7501         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
7502           Cygwin.
7504         Improve diagnostics of profiler-cpu-start
7505         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
7506         return -1 if the sampling interval is invalid.
7507         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
7508         fails.  (Bug#20843)
7510 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
7512         * lisp/emacs-lisp/package.el: Exclude packages by name
7513         (package-hidden-regexps): New variable.
7514         (package-menu--refresh): Use it.
7515         (package-menu-hide-package): New command.
7517         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding
7519 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
7521         Fix debug-timer-check on systems without HAVE_TIMERFD
7522         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
7523         the expired timers, since wait_reading_process_output doesn't.
7524         (debug_timer_callback): Enlarge the tolerance to 20 msec.
7526         Fix RCS crashes in vc-test
7527         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
7528         ports of 'ci' on MS-Windows by always passing the -t- switch.
7530 2015-06-22  Glenn Morris  <rgm@gnu.org>
7532         * doc/emacs/package.texi (Packages):
7533         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
7535         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
7537 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
7539         Port tests to help-quote-translation
7540         * test/automated/ert-x-tests.el (ert-test-describe-test):
7541         * test/automated/package-test.el (package-test-describe-package)
7542         (package-test-signed): Allow straight quotes, too.
7544 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
7546         Make find-function-on-key use the current window
7547         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
7548         Extract from `find-function-on-key', add a second argument.
7549         (find-function-on-key): Use it (bug#19679).
7550         (find-function-on-key-other-window)
7551         (find-function-on-key-other-frame): New commands.
7553 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
7555         Revert "Define `map-elt' as a generalized variable"
7556         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
7558 2015-06-21  Ken Brown  <kbrown@cornell.edu>
7560         Drop support for CPU profiling on Cygwin
7561         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
7562         (Bug#20843)
7564 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
7566         Fix some “nested” quoting confusion in doc strings
7567         * lisp/emacs-lisp/advice.el (ad-map-arglists):
7568         * lisp/kermit.el (kermit-clean-on):
7569         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
7570         * src/keyboard.c (Frecursive_edit):
7571         Use curved quotes when quoting text containing apostrophe,
7572         so that the apostrophe isn't curved in the output.
7574 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
7576         Define `map-elt' as a generalized variable
7577         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
7578         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
7579         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
7580         `setf' with `map-elt'.
7581         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
7583 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
7585         Improve error handling in tramp-adb.el
7586         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
7587         Improve error handling.
7589 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
7591         Reuse `alist-get' in map.el
7592         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
7593         elements.
7595 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
7597         Fix bytecomp-tests--warnings when $TMPDIR has a long name
7598         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
7599         Allow the warning to begin on the 3rd, not only 2nd line, which
7600         happens if temporary-file-directory has a very long name.
7602         Expect 2 icalendar tests to fail on MS-Windows
7603         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
7604         (icalendar-real-world): Make them expected failures on MS-Windows.
7606 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
7608         Improve port of settings UI to older displays
7609         * lisp/cus-start.el (standard): Don't assume curved quotes are
7610         easily distinguishable when users are tinkering with a setting
7611         that affects how curved quotes are generated.
7613         Fix quoting in electric-quote-mode doc string
7614         * lisp/electric.el (electric-quote-mode): Fix quoting.
7615         This is a fallout from the recent change introducing
7616         ‘help-quote-translation’.
7618         Spelling fix
7620         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
7622         * src/doc.c (syms_of_doc): Remove unused symbols.
7624 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
7626         In ‘window-state-put’ undedicate target window.  (Bug#20848)
7627         * lisp/window.el (window-state-put): Undedicate target window
7628         before putting STATE into it.  (Bug#20848)
7630 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
7632         Merge from origin/emacs-24
7633         a5e6f33 Fixes: debbugs:20832
7634         b9f02cf Fixes: debbugs:20832
7636 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
7638         Fix file-in-directory-p when the directory is UNC
7639         * lisp/files.el (file-in-directory-p): Support files and
7640         directories that begin with "//".  (Bug#20844)
7642 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
7644         (Bug#20832)
7645         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
7646         in the minibuffer.
7648 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
7650         (Bug#20832)
7651         * lisp/calendar/todo-mode.el (todo-show): Signal an error
7652         if buffer for adding new todo file is empty but modified.
7654 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
7656         (filepos-to-bufferpos): Further tweaks to the utf-16 code
7657         * lisp/international/mule-util.el (filepos-to-bufferpos):
7658         Fix typo.  Move non-exact check to the utf-16 branch (the only one
7659         affected).  Don't use byte-to-position for the utf-16 case.
7661 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
7663         Minor fixes in filepos-to-bufferpos
7664         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
7665         test for utf-8-emacs.  Exempt single-byte encodings from the
7666         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
7667         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
7668         UTF-16 encoded files for CR-LF EOLs.
7670 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
7672         Improve the optional translation of quotes
7673         Fix several problems with the recently-added custom variable
7674         help-quote-translation where the code would quote inconsistently
7675         in help buffers.  Add support for quoting 'like this', which
7676         is common in other GNU programs in ASCII environments.  Change
7677         help-quote-translation to use more mnemonic values: values are now the
7678         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
7679         traditional Emacs help-buffer quoting style `like this'.  Change the
7680         default behavior of substitute-command-keys to match what's done in
7681         set-locale-environment, i.e., quote ‘like this’ if displayable,
7682         'like this' otherwise.
7683         * doc/lispref/help.texi (Keys in Documentation): Document
7684         new behavior of substitute-command-keys, and document
7685         help-quote-translation.
7686         * doc/lispref/tips.texi (Documentation Tips):
7687         Mention the effect of help-quote-translation.
7688         * etc/NEWS: Mention new behavior of substitute-command-keys,
7689         and merge help-quote-translation news into it.
7690         When talking about doc strings, mention new ways to type quotes.
7691         * lisp/cedet/mode-local.el (overload-docstring-extension):
7692         Revert my recent change to this function, which shouldn't be
7693         needed as the result is a doc string.
7694         * lisp/cedet/mode-local.el (mode-local-print-binding)
7695         (mode-local-describe-bindings-2):
7696         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
7697         * lisp/cus-theme.el (describe-theme-1):
7698         * lisp/descr-text.el (describe-text-properties-1, describe-char):
7699         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
7700         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
7701         (eieio-help-constructor):
7702         * lisp/emacs-lisp/package.el (describe-package-1):
7703         * lisp/faces.el (describe-face):
7704         * lisp/help-fns.el (help-fns--key-bindings)
7705         (help-fns--compiler-macro, help-fns--parent-mode)
7706         (help-fns--obsolete, help-fns--interactive-only)
7707         (describe-function-1, describe-variable):
7708         * lisp/help.el (describe-mode):
7709         Use substitute-command-keys to ensure a more-consistent quoting
7710         style in help buffers.
7711         * lisp/cus-start.el (standard):
7712         Document new help-quote-translation behavior.
7713         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
7714         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
7715         (help-xref-url-regexp):
7716         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
7717         * lisp/wid-edit.el (widget-documentation-link-regexp):
7718         Also match 'foo', in case we're in a help buffer generated when
7719         help-quote-translation is ?'.
7720         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
7721         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
7722         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
7723         (Fsubstitute_command_keys): Document and implement new behavior.
7724         (Vhelp_quote_translation): Document new behavior.
7726 2015-06-18  Glenn Morris  <rgm@gnu.org>
7728         * lisp/cus-start.el (help-quote-translation): Add :version.
7730         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
7732 2015-06-18  Alan Mackenzie  <acm@muc.de>
7734         Make translation of quotes to curly in doc strings optional.
7735         src/doc.c (traditional, prefer-unicode): new symbols.
7736         (help-quote-translation): new variable.
7737         (Fsubstitute_command_keys): make translation of quotes dependent on
7738         `help-quote-translation'; also translate curly quotes back to ASCII
7739         ones.
7740         lisp/cus-start.el (top-level): Add a customization entry for
7741         `help-quote-translation'.
7743 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
7745         * lisp/emacs-lisp/package.el: Don't always propagate async errors
7746         (package--with-work-buffer-async): Only propagate the error if the
7747         callback returns non-nil.
7748         (package--download-one-archive): Return nil on the signature
7749         checking callback if we accept unsigned.
7750         (package--download-and-read-archives): Return non-nil on the
7751         archive download callback.
7753 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
7755         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
7756         * src/nsfns.m (Fx_create_frame):
7757         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
7758         image_cache_refcount before first x_default_parameter call.
7760 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
7762         Improve and extend filepos-to-bufferpos
7763         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
7764         Don't barf if F returns nil for some argument.
7765         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
7766         that every encoding of type 'charset' is single-byte.
7768 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
7770         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
7771         Properly delete packages.  (Bug#20836)
7773 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
7775         Update data files from just-released Unicode 8.0
7776         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
7777         status.
7778         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
7779         * admin/unidata/BidiMirroring.txt:
7780         * admin/unidata/BidiBrackets.txt:
7781         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
7783 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
7785         Document curved quotes a bit better
7786         * doc/emacs/basic.texi (Inserting Text):
7787         Mention C-x 8.  Change example to use curved quote rather
7788         than infinity, as this lets us give more ways to do it.
7789         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
7790         and quotation marks.
7791         * doc/emacs/text.texi (Quotation Marks):
7792         * doc/lispref/tips.texi (Documentation Tips):
7793         Add "curly quotes" and "curved quotes" to the index.
7794         * doc/emacs/text.texi (Quotation Marks):
7795         Give the C-x 8 shorthands for curved quotes.
7796         Cross-reference to "Quotation Marks".
7798 2015-06-17  Daiki Ueno  <ueno@gnu.org>
7800         Add pinentry.el for better GnuPG integration
7801         * lisp/pinentry.el: New file.
7802         * etc/NEWS: Add entry about pinentry.el.
7803         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
7804         (Bug#20550)
7806 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
7808         * lisp/emacs-lisp/package.el: Slightly better error reporting.
7810 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
7812         (define-minor-mode): Use setq-default for :global minor modes
7813         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
7814         Use setq-default for :global minor modes (bug#20712).
7816 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
7818         Avoid infloop in redisplay with tall images
7819         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
7820         down near ZV.  (Bug#20808)
7821         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
7822         instead of CHARPOS.
7824 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
7826         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
7827         Fix error reporting.
7829         * lisp/let-alist.el: move to lisp/emacs-lisp/let-alist.el
7831         * lisp/emacs-lisp/package.el: Revert buffer after any operation
7832         Call `package-menu--post-refresh' after any operation that changes
7833         the package database (`package-install' and `package-delete').  To
7834         avoid performance issues in large transactions, these functions
7835         add `post-refresh' to `post-command-hook' instead of calling it
7836         immediately.
7837         (package-menu--mark-or-notify-upgrades): New function.
7838         (list-packages): Add it to `package--post-download-archives-hook'.
7839         (package-menu--post-refresh): Lose the upgrade-checking code, add
7840         code to remove itself from `post-command-hook'.
7841         (package-install, package-delete): Add it to `post-command-hook'.
7842         (package-menu-execute): Don't call `package-menu--post-refresh'.
7844 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
7846         Add missing function xref-location-group for elisp-mode.
7847         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
7849 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
7851         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
7852         The behavior now matches the description in the manual.  (Bug#20783)
7854 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
7856         Update tutorials/TUTORIAL.cn
7857         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
7859 2015-06-17  Glenn Morris  <rgm@gnu.org>
7861         Generate char-script-table from Unicode source.  (Bug#20789)
7862         * admin/unidata/Makefile.in (AWK): New, set by configure.
7863         (all): Add charscript.el.
7864         (blocks): New variable.
7865         (charscript.el, ${unidir}/charscript.el): New targets.
7866         (extraclean): Also remove generated charscript.el.
7867         * admin/unidata/blocks.awk: New script.
7868         * admin/unidata/Blocks.txt: New data file, from unicode.org.
7869         * lisp/international/characters.el: Load charscript.
7870         * src/Makefile.in (charscript): New variable.
7871         (${charscript}): New target.
7872         (${lispintdir}/characters.elc): Depend on charscript.elc.
7873         (temacs$(EXEEXT)): Depend on charscript.
7875         * lisp/international/characters.el (char-script-table): Tweak
7876         some ranges to better match the source.  (Bug#20789#17)
7878         Remove "no-byte-compile: t" from a few files.
7879         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
7880         * lisp/obsolete/patcomp.el: No reason not to compile these.
7882 2015-06-16  Glenn Morris  <rgm@gnu.org>
7884         Fix some typos in copied Unicode data.  (Bug#20789)
7885         * lisp/international/characters.el (char-script-table):
7886         * lisp/international/fontset.el (script-representative-chars)
7887         (setup-default-fontset): Fix typos.
7889         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
7890         Don't print filename twice (it's in the prefix now).
7892         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
7893         No longer needed.
7895         Address a compilation warning.
7896         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
7897         Replace 't' with '_' in pcase.
7899         Address some check-declare warnings.
7900         * lisp/simple.el (tabulated-list-print):
7901         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
7902         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
7903         (ns-get-selection): Update declarations.
7905         Address some compilation warnings.
7906         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
7907         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
7908         Replace 't' with '_' in pcase.
7910         Address some compilation warnings.
7911         * lisp/face-remap.el (text-scale-adjust):
7912         * lisp/menu-bar.el (popup-menu-normalize-position):
7913         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
7914         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
7915         * lisp/emacs-lisp/generator.el (cps--transform-1):
7916         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
7917         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
7918         * lisp/progmodes/octave.el (octave-goto-function-definition)
7919         (octave-find-definition-default-filename):
7920         Replace 't' with '_' in pcase.
7922         * lisp/emacs-lisp/pcase.el (pcase--u1):
7923         Paper-over today's bootstrap failure.
7925 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
7927         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
7929         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
7931         Better confirmation message in `find-alternate-file' (Bug#20830)
7932         * lisp/files.el (find-alternate-file'): Improve the confirmation
7933         message to show the buffer name.
7935         Better docstring for null. (Bug#20815)
7936         * src/data.c (null): Improves the docstring, saying what null returns
7937         when OBJECT is non-nil.
7939 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
7941         * lisp/net/newst-treeview.el: Use lexical-binding.
7943         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
7944         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
7945         New auxiliary function, extracted from filepos-to-bufferpos.
7946         Make sure it terminates.
7947         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
7948         Add support for the `exact' quality.
7950 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
7952         Identify feeds in newsticker treeview with :nt-feed property
7953         * lisp/net/newst-treeview.el:
7954         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
7956 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
7958         * lisp/emacs-lisp/pcase.el: Improve docs and error handling
7959         (pcase--self-quoting-p): Floats aren't self-quoting.
7960         (pcase): Tweak docstring.
7961         (pcase--u1): Deprecate the t pattern.  Improve error detection for
7962         the nil pattern.
7963         (\`): Tweak docstring.  Signal an error for unrecognized cases.
7964         (bug#20784)
7966 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
7968         Fix infloop in filepos-to-bufferpos
7969         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
7970         offset calculation, and make it conditional on the eol-type of the
7971         file's encoding.  (Bug#20825)
7973 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
7975         Fix handling of image cache refcounts.  (Bug#20802)
7976         This backports Eli Zaretskii's solution of this problem for W32
7977         to X and NS.
7978         * src/nsfns.m (image_cache_refcount): Define unconditionally.
7979         (unwind_create_frame): If the image cache's reference count
7980         hasn't been updated yet, do that now.
7981         (Fx_create_frame): Set image_cache_refcount unconditionally.
7982         * src/xfns.c (image_cache_refcount): Define unconditionally.
7983         (unwind_create_frame): If the image cache's reference count
7984         hasn't been updated yet, do that now.
7985         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
7986         unconditionally.
7987         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
7988         X and NS.
7990 2015-06-16  Nils Ackermann  <nils@ackermath.info>
7992         Improve reftex-label-regexps default value
7993         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
7994         keyvals label regexp more strict to better cope with unbalanced
7995         brackets common in math documents.
7997 2015-06-16  Glenn Morris  <rgm@gnu.org>
7999         * doc/emacs/calendar.texi (Format of Diary File):
8000         Move "nonmarking" from here...
8001         (Displaying the Diary): ... to here.
8003         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
8004         Swap the order of these nodes.
8005         * doc/emacs/emacs.texi: Update detailed menu for the above change.
8007         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
8008         Update date of examples.
8009         (Diary, Format of Diary File): Move example from former to latter.
8010         Reduce duplication.
8012         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
8013         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
8014         Don't set no-byte-compile in the outputs.
8015         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
8017 2015-06-15  Glenn Morris  <rgm@gnu.org>
8019         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
8020         * doc/emacs/calendar.texi (Diary, Format of Diary File):
8021         Update for above diary-file change.
8022         : * etc/NEWS: Mention this.
8024         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
8025         (apply-macro-to-region-lines): Use user-error.
8027         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
8028         (pages-directory-for-addresses): Doc fixes.
8030 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
8032         * lisp/info.el: Cleanup bytepos/charpos issues
8033         * lisp/international/mule-util.el: Use lexical-binding.
8034         (filepos-to-bufferpos): New function.
8035         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
8036         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
8037         (Info-read-subfile, Info-search): Use 0-based file positions.
8039         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
8040         (perl--syntax-exp-intro-keywords): New var.
8041         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
8042         (bug#20800).
8044 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
8046         Fix quoting when making derived mode docstring
8047         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
8048         Nest regexp-quote inside format, not the reverse.
8049         Problem reported by Artur Malabarba in:
8050         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
8052 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
8054         Fix current-iso639-language on MS-Windows
8055         * lisp/international/mule-cmds.el (set-locale-environment):
8056         Downcase the locale name before interning it.  This is so the
8057         'current-iso639-language' on MS-Windows matches the ':lang'
8058         property of font-spec objects.
8060         Limit Symbola usage some more
8061         * lisp/international/fontset.el (setup-default-fontset): Limit
8062         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
8063         (Bug#20727)
8065 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
8067         * lisp/emacs-lisp/map.el (map-let): Better docstring.
8069 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
8071         Spelling fixes
8073 2015-06-14  Glenn Morris  <rgm@gnu.org>
8075         * lisp/version.el (emacs-repository-version-git): Demote errors.
8076         Check result is a hash.
8078 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
8080         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
8081         Catch errors that happen before going async.  (Bug#20809)
8083 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
8085         Another improvement of documentation of set-fontset-font
8086         * doc/lispref/display.texi (Fontsets): Say explicitly that
8087         CHARACTER can be a single codepoint.
8088         * src/fontset.c (Fset_fontset_font): Doc fix.
8090         Another improvement for symbol and punctuation characters
8091         * lisp/international/fontset.el (setup-default-fontset): Exclude
8092         from Symbola character ranges for symbols and punctuation covered
8093         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
8094         installed and where its coverage of symbols and punctuation is
8095         known to be good.  (Bug#20727)
8097 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
8099         Some generic support for multi-mode indentation.
8100                 * lisp/progmodes/prog-mode.el (prog-indentation-context): New
8101                 variable.
8102                 (prog-first-column, prog-widen): New convenience functions.
8104 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
8106         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
8107         Don't assume that `tabulated-list-printer' will leave point at the
8108         end of the buffer.  (Bug#20810)
8110 2015-06-13  Glenn Morris  <rgm@gnu.org>
8112         Tweaks for getting repository version; a bit more like it was for bzr.
8113         * lisp/version.el (emacs-repository-version-git)
8114         (emacs-repository--version-git-1): New functions,
8115         split from emacs-repository-get-version.
8116         (emacs-repository-get-version): Make the second argument meaningful.
8118         * lisp/startup.el (command-line-1): Inform if skipping relative
8119         file names due to deleted PWD.
8121         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
8122         when starup directory is missing.  (Bug#18851)
8123         (errno.h): Include it.
8125 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
8127         Better fix for documenting `X as "`X"
8128         Fix suggested by Stefan Monnier.
8129         * lisp/help-fns.el (help-fns--signature):
8130         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
8131         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
8132         Don't treat `X specially, as help-fns--signature now handles this.
8134 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
8136         Improve the default fontset when Symbola is not installed
8137         * lisp/international/fontset.el (setup-default-fontset): Only
8138         prepend Symbola and FreeMono font specs for symbols and
8139         punctuation; do not replace the default spec for them.  This
8140         should have better results when Symbola/FreeMono are not
8141         installed.  (Bug#20727)
8143         Improve documentation of ':lang' in font specs
8144         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
8145         use of the ':lang' property of the font spec.
8146         * doc/emacs/frames.texi (Fonts): Document the language names that
8147         can be in the STYLE part of XLFD.
8148         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
8149         property.
8151         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
8153         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
8155         Revert last change in fontset.el
8156         * lisp/international/fontset.el (setup-default-fontset): Revert
8157         the change "Configure Symbola font only if installed", since font
8158         search is evidently not yet set up when this function is called.
8159         (Bug#20727)
8161 2015-06-12  Glenn Morris  <rgm@gnu.org>
8163         Ensure early startup warnings are visible at the end.  (Bug#20792)
8164         * lisp/emacs-lisp/warnings.el (display-warning):
8165         If startup isn't complete, delay the warning.
8166         * lisp/startup.el (normal-top-level, command-line):
8167         Let display-warning automatically handle the needed delays.
8168         Run delayed-warnings-hook.
8170         * lisp/version.el (emacs-repository-get-version):
8171         Avoid calling external executable if possible.  (Bug#20799)
8173 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
8175         Document `X as "`X", not as "(` X)"
8176         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
8177         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
8179         * src/print.c (print_object): Minor simplification.
8181 2015-06-12  Glenn Morris  <rgm@gnu.org>
8183         * src/buffer.c (init_buffer): Add final newline to message.
8185 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
8187         Configure Symbola font only if installed
8188         * lisp/international/fontset.el (setup-default-fontset):
8189         Don't specify the Symbola font if it's not installed.
8190         Likewise for FreeMono.  (Bug#20727)
8192 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
8194         Configure Symbola font only for symbols and punctuation
8195         * lisp/international/fontset.el (setup-default-fontset): Leave
8196         only symbols and punctuation in the fontset setup for Symbola
8197         font; remove "Greek and Coptic" and "Cyrillic Supplement".
8198         (Bug#20798)
8200 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
8202         Fix crash in fontset-info
8203         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
8204         non-nil.
8206 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
8208         Port to Solaris 10 sparc + Sun C 5.13
8209         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
8210         Adjust to process.c change.
8211         * src/process.c (create_process): Declare volatile variables at
8212         top level of this function, so that they're less likely to be
8213         reused later in the function in the code executed by the vforked
8214         child.  Do not declare locals used only in the vforked child, as
8215         they might share memory with locals still live in the parent.
8216         Instead, use the same variables in the child as in the parent.
8217         This works around a subtle bug that causes a garbage collector
8218         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
8220 2015-06-12  Glenn Morris  <rgm@gnu.org>
8222         * lisp/startup.el (normal-top-level): Don't let *Messages* get
8223         a nil default-directory.
8225 2015-06-11  Glenn Morris  <rgm@gnu.org>
8227         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
8229         Some progress towards starting with PWD deleted.  (Bug#18851)
8230         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
8231         * lisp/startup.el (normal-top-level, command-line-1):
8232         * lisp/minibuffer.el (read-file-name-default):
8233         Handle default-directory being nil.
8235 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
8237         Fix "not a tty" bug on Solaris 10
8238         * configure.ac (PTY_OPEN): Define to plain 'open'
8239         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
8240         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
8241         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
8242         hosts that call grantpt which does its work via a setuid subcommand
8243         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
8244         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
8245         seems relevant in that case too.
8247 2015-06-11  Juri Linkov  <juri@linkov.net>
8249         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
8250         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
8251         (Bug#20785)
8253 2015-06-11  Glenn Morris  <rgm@gnu.org>
8255         * lisp/international/characters.el (char-script-table): Fix typo.
8257 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
8259         Fix quoting of help for functions with odd names
8260         While investigating Bug#20759, I discovered other quoting problems:
8261         C-h f mishandled characters like backslash and quote in function names.
8262         This fix changes the behavior so that 'C-h f pcase RET' now
8263         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
8264         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
8265         in src/lread.c's read1 function says that the backslash will be
8266         needed starting in Emacs 25, which implies that 'format' is
8267         correct and the old pcase documention was wrong to omit the backslash.
8268         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
8269         * lisp/help-fns.el (help-fns--signature):
8270         * lisp/help.el (help-add-fundoc-usage):
8271         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
8272         Use help--make-usage-docstring rather than formatting
8273         help-make-usage.
8274         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
8275         Return raw docstring.
8276         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
8277         raw docstring.  Take more care to distinguish raw from cooked dstrings.
8278         (describe-function-1): Let help-fns--signature substitute
8279         command keys.
8280         * lisp/help.el (help--docstring-quote): New function.
8281         (help-split-fundoc): Use it, to quote funny characters more
8282         systematically.
8283         (help--make-usage): Rename from help-make-usage, since this
8284         should be private.  Leave an obsolete alias for the old name.
8285         (help--make-usage-docstring): New function.
8286         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
8288 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8290         * lisp/thingatpt.el (in-string-p): Revert last change,
8291         since in-string-p is not used in thingatpt.el but only from outside.
8292         Also, use lexical binding.
8294 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
8296         * lisp/let-alist.el (let-alist--deep-dot-search): Fix cons
8297         * test/automated/let-alist.el (let-alist-cons): Test it.
8299 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
8301         * src/syntax.c (Fbackward_prefix_chars): Reword docstring
8303 2015-06-10  Glenn Morris  <rgm@gnu.org>
8305         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
8307         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
8308         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
8309         * admin/gitmerge.el (gitmerge-commit-message):
8310         Exclude "skipped" messages from ChangeLog once again.
8312         Slight namespace cleanup for thingatpt.el.
8313         * lisp/thingatpt.el (thing-at-point--in-string-p)
8314         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
8315         (thing-at-point--read-from-whole-string): Rename from
8316         old versions without "thing-at-point--" prefix.
8317         Keep old versions as obsolete aliases.  Update all uses.
8319         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
8320         Move requiring of finder from here...
8321         (checkdoc-package-keywords): ... to here.
8323         Use 'user-error' in a few calendar files.
8324         * lisp/calendar/appt.el (appt-add):
8325         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
8326         (calendar-generate):
8327         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
8328         Replace 'error' with 'user-error'.
8330         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
8332         * lisp/files-x.el (add-file-local-variable):
8333         Special-case 'lexical-binding'.  (Bug#20641)
8335         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
8336         No longer autoload.
8337         * doc/misc/autotype.texi (Executables):
8338         Undocument executable-self-display.
8340         * lisp/progmodes/executable.el (executable-self-display):
8341         Use non-obsolete tail syntax.  (Bug#20779)
8342         (executable-self-display): Doc update.
8344 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
8346         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
8347         (finder-known-keywords): Silence byte-compiler.
8349 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
8351         * lisp/simple.el (eval-expression): Macroexpand before evaluating (bug#20730)
8353         * lisp/progmodes/sh-script.el: Better handle nested quotes
8354         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
8355         (sh-font-lock-quoted-subshell): Make sure double quotes within single
8356         quotes don't mistakenly end prematurely the surrounding string.
8358         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
8360 2015-06-09  Glenn Morris  <rgm@gnu.org>
8362         * test/automated/Makefile.in (ELFILES): Sort.
8364         * Makefile.in (SUBDIR_MAKEFILES):
8365         * lwlib/Makefile.in (WARN_CFLAGS):
8366         Use built-in Make functions rather than echo+sed.
8368 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
8370         Update char-script-table
8371         * lisp/international/characters.el (char-script-table): Update
8372         from Unicode 8.0 Draft.
8374         Improve font selection for punctuation and other symbols
8375         * src/fontset.c (face_for_char): If the character's script is
8376         'symbol', and the font used for ASCII face has a glyph for it, use
8377         the font for the ASCII face instead of searching the fontsets.
8378         This comes instead of NS-specific code that used the current
8379         face's font instead, which is now disabled due to undesirable
8380         consequences.  (Bug#20727)
8382 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
8384         Skip past `#' to find BEG
8385         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Skip
8386         past `#' to find BEG (bug#20771).
8387         * test/automated/elisp-mode-tests.el
8388         (elisp-completes-functions-after-hash-quote): New test.
8390 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
8392         Fix compilation warning/error in --without-x builds
8393         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
8394         code on HAVE_WINDOW_SYSTEM.
8396         Improve the default fontset wrt symbols
8397         * lisp/international/fontset.el (setup-default-fontset): Better
8398         setup of fontset-default for symbols: use Symbola and FreeMono.
8399         (Bug#20727)
8401 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
8403         Add new command checkdoc-package-keywords
8404         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag): New
8405           defcustom.
8406         (checkdoc-list-of-strings-p): Add doc.
8407         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
8408         non-nil, call `checkdoc-package-keywords'.
8409         (checkdoc-get-keywords): New defun.
8410         (checkdoc-package-keywords): New command. Warns if the current file
8411         has package.el-style keywords that aren't in `finder-known-keywords'.
8412         * etc/NEWS: Add entry.
8414 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
8416         Avoid crashes when key-binding is called from a timer
8417         * src/keymap.c (Fkey_binding): Don't segfault if called with an
8418         empty vector as KEY.  (Bug#20705)
8420         Fix a thinko in arc-mode.el
8421         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
8422         non-Zip64 case.  (Bug#20769)
8424 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
8426         * lisp/emacs-lisp/package.el (package-delete): Make interactive
8428 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
8430         checkdoc.el (checkdoc-file): New function
8431         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When
8432           `checkdoc-diagnostic-buffer' is set to "*warn*", print the warning
8433           to the standard output.
8434         (bug#20754)
8436 2015-06-07  Glenn Morris  <rgm@gnu.org>
8438         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
8440         * src/font.c (syms_of_font) <font-log>: Doc fix.
8442         Remove the obsolete leading "*" from some C doc strings.
8443         * src/coding.c (syms_of_coding):
8444         * src/font.c (syms_of_font): Remove leading "*" from docs.
8445         * lisp/cus-start.el (enable-character-translation): Add it.
8447 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
8449         Move gen_origin from program to data
8450         That way, 'make change-history' needs to change only ChangeLog.2,
8451         instead of having to change two files.
8452         * ChangeLog.2: Add commit info for range that this file covers.
8453         * Makefile.in (new_commit_regexp): New macro.
8454         (change-history-nocommit): Simplify, by putting what used to be
8455         the gen_origin value into the data (ChangeLog.2) rather than
8456         into the program (gitlog-to-emacslog).
8457         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
8458         the input file (e.g., ChangeLog.2) rather than by having a
8459         constant in the program.  Substitute it into the output.
8461 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
8463         Escape any quotes in the function name
8464         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
8465         function name (bug#20759).
8467 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
8469         Adapt 'struct timespec' to next release of MinGW runtime
8470         * nt/inc/ms-w32.h (struct timespec): Don't declare if
8471         __struct_timespec_defined is defined.
8473 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
8475         Merge from gnulib
8476         This incorporates:
8477         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
8478         2015-06-05 stdio: Don't redefine gets when using C++
8479         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
8480         2015-06-02 file-has-acl: fix build on Mac OS X 10
8481         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
8482         2015-06-01 pthread_sigmask: discount system version if a simple macro
8483         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
8484         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
8485         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
8486         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
8487         * lib/gnulib.mk: Regenerate.
8489 2015-06-06  Juri Linkov  <juri@linkov.net>
8491         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
8492         before calling grep-compute-defaults because now it affects the
8493         command lines computed in grep-compute-defaults. (Bug#20728)
8495 2015-06-06  Glenn Morris  <rgm@gnu.org>
8497         Address some compilation warnings.
8498         * lisp/international/mule-cmds.el (w32-get-console-codepage)
8499         (w32-get-console-output-codepage):
8500         * lisp/progmodes/elisp-mode.el (xref-collect-references):
8501         * lisp/version.el (cairo-version-string): Declare.
8502         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
8504 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
8506         Fix display when a font claims large values of ascent and descent
8507         This fixes bug#20628.
8508         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
8509         coordinate of a hollow cursor glyph when the original glyph's
8510         ascent is too small.
8511         (get_font_ascent_descent, normal_char_ascent_descent)
8512         (normal_char_height): New functions.
8513         (handle_single_display_spec, append_space_for_newline)
8514         (calc_pixel_width_or_height, produce_stretch_glyph)
8515         (calc_line_height_property): Use normal_char_ascent_descent and
8516         normal_char_height.
8517         (x_produce_glyphs): When font-global values of ascent and descent
8518         are too large, use per-character glyph metrics instead, if
8519         possible.  But don't allow the glyph row's ascent and descent
8520         values become smaller than the values from the metrics of the
8521         font's "normal" character.
8522         * src/xftfont.c (xftfont_draw):
8523         * src/w32font.c (w32font_draw): Correct the values of ascent and
8524         descent used to draw glyphless characters' hex code in a box.
8525         * src/xterm.c (x_draw_glyph_string_background):
8526         * src/xdisp.c (x_produce_glyphs):
8527         * src/w32term.c (x_draw_glyph_string_background):
8528         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
8529         to detect fonts whose global ascent and descent values are too
8530         large to be used in layout decision, and redraw the background
8531         when that happens.
8532         * src/dispextern.h (FONT_TOO_HIGH): New macro.
8533         (get_font_ascent_descent): Add prototype.
8534         * src/xterm.c (x_new_font):
8535         * src/w32term.c (x_new_font):
8536         * src/nsterm.m (x_new_font):
8537         * src/font.c (font_open_entity):
8538         * src/composite.c (composition_gstring_width): Use
8539         get_font_ascent_descent to obtain reasonable values for ascent and
8540         descent of a font.
8542 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
8544         Add assertion in adjust_point_for_property
8545         * src/keyboard.c (adjust_point_for_property): Add eassert for
8546         current buffer being shown in selected window.
8548 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
8550         Replace uses of in-string-p; make it obsolete
8551         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
8552         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
8554 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
8556         Fix Dired display of an explicit list of files by ls-lisp.el
8557         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
8558         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
8559         correct for when displaying individual files separately, not as
8560         part of listing a directory, in which case these values are not
8561         recomputed by 'ls-lisp-insert-directory', but used verbatim.
8563         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
8565 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
8567         Do not adjust point in a non-selected window
8568         * src/keyboard.c (command_loop_1): Do not adjust point when
8569         current buffer is not shown in selected window (Bug#20590).
8571         * etc/DEBUG: Mention 'maybe_call_debugger'
8573 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
8575         Fix a unit test for map.el
8576         * test/automated/map-tests.el (test-map-let): Fix the test to work
8577         with the new syntax of `map-let'.
8579         * lisp/emacs-lisp/map.el (map-let): Better docstring.
8581         Better syntax for the map pcase pattern
8582         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
8583         bindings of the form (KEY PAT) or SYMBOL. KEY is not quoted.
8585         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
8587         Fix a byte-compiler error in map-put and map-delete
8588         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
8589         called with a symbol.
8591 2015-06-05  Glenn Morris  <rgm@gnu.org>
8593         * admin/gitmerge.el (gitmerge-commit-message):
8594         Revert to including "skipped" messages in ChangeLog once again.
8596 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
8598         Use string> instead of equiv lambda with string<
8599         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
8600         lambda with string<.
8602 2015-06-05  Glenn Morris  <rgm@gnu.org>
8604         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
8605         (map--delete-array): Fix typo.
8607         * test/automated/map-tests.el: Replace "assert" with "should".
8609         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
8610         (SUBDIRS_REL): Derive from SUBDIRS.
8612         Tweak some build messages.
8613         * lisp/Makefile.in ($(lisp)/loaddefs.el):
8614         * lisp/cus-dep.el (custom-make-dependencies):
8615         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
8616         * lisp/international/titdic-cnv.el (batch-titdic-convert):
8617         Don't say how to compile.
8619 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
8621         Omit U+0332 COMBINING LOW LINE in previous change
8622         It turns out that it does not work on Ubuntu 15.04.
8624         Fix transliteration of Bahá'í months
8625         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
8626         Improve quality of Latin transliteration of Bahá'í month names.
8628         Fix curved quotes in a few places
8629         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
8630         The strings in question are not doc strings, so this partially
8631         undoes the recent change that assumed they were doc strings.
8632         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
8633         * lisp/info.el (Info-finder-find-node):
8634         Use curved quotes.
8635         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
8636         Also allow curved quotes in doc strings.
8638 2015-06-04  Glenn Morris  <rgm@gnu.org>
8640         * lisp/Makefile.in (AM_V_at): Add missing definition.
8642         * lisp/Makefile.in: Quieten output a bit.
8643         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
8644         Don't echo directories, since the commands we invoke print them.
8646         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
8647         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
8648         (SUBDIRS_SUBDIRS): New variables.
8649         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
8650         Remove.
8651         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
8652         (update-subdirs, compile-main, compile-clean):
8653         Replace "setwins" usage with new "SUBDIRS" variables.
8655         * lisp/vc/compare-w.el (compare-windows-get-window-function):
8656         Fix :version tag.
8658 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8660         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
8662         Undo removal of x_clear_area call on expose for GTK3 or cairo.
8663         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]: Clear
8664         exposed area.  (Bug#20677)
8666 2015-06-04  Glenn Morris  <rgm@gnu.org>
8668         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
8670         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
8672         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
8673         Rename from quail-lao-update-translation, since lao.el defines that.
8675 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
8677         Handle new-style advice in find-funct
8678         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
8679         Handle new-style advice.  Return the symbol's function definition.
8680         (Bug#20718)
8681         (find-function-library): Update accordingly.
8683 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
8685         Merge branch 'map'
8687         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
8689         Add new function string-greaterp
8690         * lisp/subr.el (string-greaterp): New function.  Also aliased to
8691         `string>'.
8692         * test/automated/subr-tests.el (string-comparison-test): Add unit
8693         tests for `string>'and `string<'.
8694         * src/fns.c (string-lessp): Better docstring.
8696 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
8698         Fix timezone-related functions on MS-Windows
8699         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
8700         'xputenv', even if no reallocation of tzvalbuf was necessary.
8701         This fixes a bug in timezone-related functions on MS-Windows.
8702         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
8704 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
8706         Don't pass raw directory name to 'error'
8707         * lisp/files.el (basic-save-buffer-2): Avoid format error if
8708         a directory name contains a string like "%s".
8710 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
8712         Override 'grep --color=always'
8713         * lisp/progmodes/xref.el (xref-collect-matches):
8714         Override --color=always in grep-find-template.
8716 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
8718         Fix error introduced recently in file-notify-tests.el
8719         * test/automated/file-notify-tests.el
8720         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
8721         (file-notify--deftest-remote): Revert previous patch, not
8722         necessary anymore.
8724 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
8726         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
8727         Starting from a display string after a newline, point went to the
8728         previous line.  Also, fix an inadvertent use of a buffer position
8729         with FETCH_BYTE.  (Bug#20701)
8731 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
8733         Instrument file-notify-test.el in order to catch hydra error.
8734         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
8735         Wrap body by `ignore-case', in order to trap non-local errors.
8737 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8739         Undo previous changes in non-toolkit scroll bar drawing.
8740         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
8741         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
8743 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
8745         * .gitignore: Also ignore doc/*/*/*.html and .ps.
8747         Support quotes 'like this' in info files
8748         This is possible when 'makeinfo --disable-encoding' is used
8749         in Texinfo 5.
8750         * lisp/calc/calc-help.el (calc-describe-thing):
8751         * lisp/gnus/gnus-art.el (gnus-button-alist):
8752         * lisp/info.el (Info-find-index-name):
8753         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
8754         Also support quotes 'like this'.
8755         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
8756         * lisp/finder.el (finder-font-lock-keywords): Remove var that
8757         hasn't been used in years, instead of bothering to fix its quoting.
8759 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
8761         * .gitignore: Remove !test/etags/html-src/*.html.
8762         It's no longer needed, since *.html was removed.  Sort.
8764 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
8766         Restore <D> instead of '.' in grep-find-template
8767         * lisp/cedet/semantic/symref/grep.el
8768         (semantic-symref-grep-use-template): Update a comment.
8769         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
8770         instead of '.' in grep-find-template (bug#20719).
8771         (rgrep): Pass nil as the directory to rgrep-default-command.
8772         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
8773         default value for DIR.
8774         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
8775         workaround.
8777 2015-06-02  Glenn Morris  <rgm@gnu.org>
8779         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
8781         * configure.ac (emacs_config_features): Add Cairo.
8783         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
8785 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
8787         Ensure, that autorevert works for remote files in file-notify-tests.el
8788         * test/automated/file-notify-tests.el (file-notify--test-desc):
8789         New defvar.
8790         (file-notify--test-remote-enabled)
8791         (file-notify-test00-availability, file-notify-test01-add-watch)
8792         (file-notify-test02-events): Use it.
8793         (file-notify--test-event-test): Check proper descriptor.
8794         (file-notify-test03-autorevert): Ensure, that
8795         `visited-file-modtime' has changed.
8796         (Bug#20392)
8798 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
8800         Add a pcase pattern for maps and `map-let' based on it
8801         * lisp/emacs-lisp/map.el (map-let): New macro.
8802         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
8803         * test/automated/map-tests.el: New test for `map-let'.
8805 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
8807         Reuse rgrep mechanics in xref-find-regexp
8808         * lisp/progmodes/grep.el (rgrep-default-command):
8809         Extract from `rgrep'.
8810         * lisp/progmodes/xref.el (xref-collect-references): Split from
8811         `xref-collect-matches'.  Only handle the case of symbol search.
8812         (xref-collect-matches): Instead of Semantic Symref, use
8813         `rgrep-default-command', to take advantage of its directory and
8814         file ignore settings.
8815         (xref--collect-match): Remove the last argument, leaving the
8816         regexp construction up to the caller.
8817         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
8818         Change to take the xref-collect- function to use as an argument.
8819         (elisp-xref-find): Update accordingly.
8820         * lisp/progmodes/etags.el (etags--xref-find-matches)
8821         (etags-xref-find): Same.
8823         Move xref-elisp-location to elisp-mode.el
8824         * lisp/progmodes/xref.el (xref-elisp-location)
8825         (xref-make-elisp-location, xref-location-marker): Remove here.
8826         (xref--xref): Don't limit the type of the location slot.
8827         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
8828         Define as a cl-struct here.
8829         (xref-location-marker): Move here.
8831 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
8833         Minor tweaks for .gitignore
8834         * .gitignore: Don't ignore versioned *.html and *.ps files.  Don't
8835         ignore admin/notes/tags that might be ignored as TAGS on
8836         case-insensitive filesystems.  (Bug#20710)
8838 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
8840         Generate curved quotes in ert doc
8841         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
8842         (ert-results-mode-menu)
8843         (ert-results-pop-to-backtrace-for-test-at-point)
8844         (ert-results-pop-to-messages-for-test-at-point)
8845         (ert-results-pop-to-should-forms-for-test-at-point)
8846         (ert-describe-test):
8847         Quote ‘like this’, not `like this', when generating doc strings
8848         and the like.
8849         * test/automated/ert-x-tests.el (ert-test-describe-test):
8850         Allow quoting ‘like this’.
8852 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
8854         Add test for previous commit
8855         * test/automated/replace-tests.el: New file.
8856         (query-replace--split-string-tests): Add test for previous commit.
8858         Avoid confusion in query-replace history when replacing NUL chars
8859         * lisp/replace.el (query-replace--split-string): New function.
8860         (query-replace-read-from): Rely on the 'separator' property
8861         instead of searching for the NUL character (Bug#20690).
8863 2015-06-02  Glenn Morris  <rgm@gnu.org>
8865         Merge from origin/emacs-24
8866         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
8868         * admin/gitmerge.el (gitmerge-commit-message):
8869         Exclude "skipped" messages from ChangeLog.
8871 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
8873         Sync with Tramp repository
8874         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
8875         messages.
8876         (tramp-handle-make-auto-save-file-name): When calling
8877         `make-auto-save-file-name' internally, make sure it uses Unix-like
8878         behavior, not Windows-like behavior.
8879         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
8880         the local case, because "chown" might fail on w32.
8881         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
8882         for XEmacs.
8884 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
8886         MS-Windows followup for batch stdout/stderr output changes
8887         * lisp/international/mule-cmds.el (set-locale-environment): In
8888         batch mode, use console codepages for keyboard and terminal
8889         encoding.  (Bug#20545)
8891         Update .gitattributes for DOS EOL files
8892         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
8893         CRLF end-of-line format.
8895         NS equivalents of xterm.c and w32term.c changes
8896         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
8897         glyph string background also when the font in use claims
8898         preposterously large global height value.  Helps to remove
8899         artifacts left from previous displays when glyphless characters
8900         are displayed as hex code in a box.
8901         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
8902         value for FRAME_LINE_HEIGHT, even when a font claims very large
8903         value for its height.
8905 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
8907         Avoid grave accent quoting in stderr diagnostics
8908         A few Emacs diagnostics go directly to stderr, and so can't easily
8909         contain curved quotes (as non-UTF-8 locales might mishandle them).
8910         Instead of bothering to add support for this rarity, reword the
8911         diagnostics so that they don't use grave accent to quote.
8912         * src/alloc.c (mark_memory): Fix comment.
8913         * src/buffer.c (init_buffer):
8914         * src/dispnew.c (init_display):
8915         * src/emacs.c (main, sort_args):
8916         * src/lread.c (dir_warning):
8917         * src/term.c (init_tty):
8918         * src/unexmacosx.c (unexec):
8919         * src/xfns.c (select_visual):
8920         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
8921         Reword stderr diagnostics to avoid quoting `like this'.
8922         * src/unexmacosx.c: Include errno.h.
8923         * src/xfns.c (select_visual): Encode value for locale.
8925 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
8927         Treat batch stdout/stderr like standard display
8928         Calls like (print FOO) could generate improperly encoded or
8929         hard-to-read output if FOO contains characters outside the system
8930         locale.  Fix this by treating batch stdout and stderr like
8931         interactive standard display, when it comes to transliterating and
8932         encoding characters (Bug#20545).
8933         * doc/emacs/mule.texi (Communication Coding):
8934         * doc/lispref/display.texi (Active Display Table):
8935         * doc/lispref/nonascii.texi (Locales):
8936         * etc/NEWS:
8937         * src/coding.c (syms_of_coding):
8938         * src/dispnew.c (syms_of_display):
8939         Document this.
8940         * src/print.c: Include disptab.h.
8941         (printchar_to_stream): New function, with much of the guts of the
8942         old Fexternal_debugging_output, except this one also uses the
8943         standard display table.
8944         (printchar, strout, Fexternal_debugging_output): Use it.
8946 2015-05-31  Glenn Morris  <rgm@gnu.org>
8948         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
8950 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
8952         Remove unused DEFSYMs
8953         Remove DEFSYMs that aren't used at the C level.  Also:
8954         * src/decompress.c (Qzlib_dll):
8955         * src/font.c (Qunicode_sip):
8956         * src/frame.c (Qtip_frame):
8957         * src/ftfont.c (Qserif):
8958         * src/gnutls.c (Qgnutls_dll):
8959         * src/xml.c (Qlibxml2_dll):
8960         Move from here ...
8961         * src/w32fns.c (syms_of_w32fns): ... to here,
8962         as these are used only on MS-Windows.
8964 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
8966         Use another default value for tramp-histfile-override
8967         * lisp/net/tramp-sh.el (tramp-histfile-override):
8968         Use ".tramp_history" as default.
8969         Fixes: debbugs:#20446
8971 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
8973         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
8975 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
8977         * etc/NEWS: Add an entry about map.el
8979         Improve the docstring of functions in map.el
8980         Since a map is not a data structure but a concept, adding information
8981         about the possible types of maps can be useful information.
8982         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
8983         each public function.
8985 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
8987         Faster implementation of map-empty-p
8988         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
8989         specific tests depending on the type of the map.
8991         * lisp/emacs-lisp/map.el: Better docstrings.
8993 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
8995         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda
8997 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
8999         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
9001         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
9003         Fix a false negative in `map-elt' with alists and values being nil
9004         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
9005         found but its associated value is nil, do not return the default
9006         value.
9007         * test/automated/map-tests.el: Add a regression test.
9009 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
9011         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
9013         Do not signal an error when trying to delete a key from an array
9014         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
9015         the key is present to avoid signaling an error.
9016         * test/automated/map-tests.el: Add a test for deleting non-existing
9017         keys from maps.
9019         * lisp/emacs-lisp/map.el: Better docstring.
9021         Minor improvement in map-elt.
9022         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
9023         doing a lookup in arrays, but check the boundaries of the array
9024         instead.
9025         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
9026         and a negative integer as key.
9028 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
9030         * test/automated/map-tests.el: Refactoring of test methods.
9032         * test/automated/map-tests.el: Renamed from map-test.el.
9034 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
9036         * lisp/emacs-lisp/map.el (map-into): Better error message.
9038         * lisp/emacs-lisp/map.el: Removes byte-compilation warnings.
9040         Throw an error when converting a map into an unknown map type
9041         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is not valid.
9042         * test/automated/map-test.el: Add a regression test.
9044         New library map.el similar to seq.el but for mapping data structures.
9045         * test/automated/map-test.el: New file.
9046         * lisp/emacs-lisp/map.el: New file.
9048 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
9050         Make sure there's no explicit tag name
9051         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
9052         there's no explicit tag name (bug#20629).
9054 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
9056         Remove format2
9057         * src/editfns.c, src/lisp.h (format2): Remove.
9058         It is more trouble than it's worth, now that we have CALLN.
9059         This is just a minor refactoring.
9060         * src/buffer.c (Fkill_buffer):
9061         * src/dbusbind.c (XD_OBJECT_TO_STRING):
9062         * src/fileio.c (barf_or_query_if_file_exists):
9063         Adjust to format2 going away.
9065         Don't misencode C-generated messages
9066         Also, be more consistent about calls to 'Fmessage' vs 'message'.
9067         * src/alloc.c (Fgc_status):
9068         Prefer AUTO_STRING to build_string for Fmessage call.
9069         * src/data.c (Fmake_variable_buffer_local)
9070         (Fmake_local_variable, Fmake_variable_frame_local):
9071         * src/doc.c (store_function_docstring):
9072         Use Fmessage, not message, since the argument can contain
9073         non-ASCII characters, and this can cause the resulting message
9074         to be incorrectly encoded for the current environment.
9075         * src/fns.c (maybe_resize_hash_table):
9076         * src/xselect.c (x_clipboard_manager_save_all):
9077         Use message, not Fmessage, since Fmessage's power isn't needed here.
9078         * src/process.c (Fmake_network_process): Reword message to avoid %s.
9079         * src/xdisp.c (vmessage): Document restrictions on message contents.
9080         (message_nolog) [false]: Remove unused code.
9082         Use \r rather than ^M in string literals
9083         This is less likely to cause problems on platforms that
9084         use CRLF (or CR!) termination for lines.
9086         Update .gitattributes to match current sources
9087         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
9088         * .gitattributes: Accommodate tests that insist on DOS format.
9089         Remove test/automated/data/decompress/foo-gzipped.
9090         Add etc/e/eterm-color.
9092 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
9094         Document 'face-ignored-fonts'
9095         * doc/emacs/mule.texi (Modifying Fontsets): Document
9096         face-ignored-fonts.  (Bug#20628)
9098         Add etags test for the new -Q option
9099         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
9100         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
9101         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
9102         test-case changes below.
9103         * test/etags/ETAGS.good_6: New file.
9104         * test/etags/cp-src/x.cc: New file.
9105         * test/etags/Makefile (CPSRC): Add x.cc.
9106         (check): Add one more test, for -Q.
9108 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
9110         Use list for the tags completion table, not obarray
9111         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
9112         list instead of an obarray
9113         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
9114         (tags-completion-table): Combine those lists.
9115         (tags-completion-table): Update the docstring.
9117 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
9119         Restore EOL format testing in etags
9120         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
9121         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
9122         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
9123         test-case changes below.
9124         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
9125         * test/etags/cp-src/c.C (B): Add back stray CR character.
9126         * test/etags/c-src/dostorture.c: Add back.
9127         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
9129 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
9131         Declare Emacs on MS-Windows to be DPI-aware
9132         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
9133         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
9134         This avoids Windows entering compatibility mode for Emacs,
9135         which causes fonts to look less nice.
9137 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
9139         Improve Tramp traces.
9140         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
9141         * lisp/net/tramp.el (tramp-debug-message): Use it.
9143 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
9145         backup-buffer minor reworking of internals
9146         * lisp/files.el (backup-buffer): Rework to avoid a couple of
9147         unused locals inadvertently introduced in the previous change.
9149         backup-buffer now reports .emacs.d/%backup% ills
9150         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
9151         fails due to disk space exhaustion or whatever, do not pretend
9152         that it succeeded.  More generally, do a better job of checking
9153         for I/O failures, and limit the scope of the condition-case to
9154         just the operations where file errors should be caught and ignored
9155         (Bug#20595).  Also, don't bother trying to delete later backups if
9156         an earlier deletion fails, as this is a sign of trouble and it's
9157         better to stop when there's trouble.
9159         copy-file now truncates output after writing
9160         * src/fileio.c (Fcopy_file): Truncate output after writing rather
9161         than before.  This is more likely to work than truncation before
9162         writing, if the file system is out of space or the user is over
9163         disk quota (Bug#20595).  Also, check for read errors.
9165 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
9167         * lisp/emacs-lisp/package.el: Don't load from parent dir
9168         (package-load-all-descriptors): Don't load descriptors from
9169         directories above the package directories.
9171 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
9173         Merge from gnulib
9174         This incorporates the following (Bug#20681):
9175         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
9176         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
9177         * lib/set-permissions.c: Copy from gnulib.
9179 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
9181         Improve Tramp traces.
9182         * lisp/net/tramp.el (tramp-call-process-region): New defun.
9183         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
9185 2015-05-29  Glenn Morris  <rgm@gnu.org>
9187         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
9189 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
9191         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
9192         The signature was changed in the cairo branch, merged on 2015-05-23.
9193         This oversight broke compiling only the non-toolkit X version.
9195 2015-05-29  Samer Masterson  <samer@samertm.com>
9197         * doc/lispref/os.texi: Update initial-buffer-choice docs.
9199 2015-05-29  Glenn Morris  <rgm@gnu.org>
9201         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
9202         Mark as an expected failure.
9204 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
9206         Change package test to look for curved quotes
9207         * test/automated/package-test.el (package-test-describe-package)
9208         (package-test-signed): Search for curved single quotes as well as
9209         for grave accent and apostrophe.
9211 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
9213         gnus-art.el: Re-revert last change
9214         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
9215         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
9217 2015-05-28  Samer Masterson  <samer@samertm.com>
9219         Show files when `initial-buffer-choice' is non-nil
9220         * startup.el (command-line-1): When Emacs is given a file as an
9221         argument and `initial-buffer-choice' is non-nil, display both the file
9222         and `initial-buffer-choice'.  For more than one file, show
9223         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
9224         commands out of the command line arg parser.
9225         (initial-buffer-choice): Clarify docstring.
9227 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
9229         Fix last commit
9230         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
9231         (gnulib module qcopy-acl): Add back, as it is harmless.  This
9232         minimizes differences wrt lib/gnulib.mk.
9234         Fix the MS-Windows build as followup to gnulib update
9235         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
9236         set-permissions.c, as they don't compile on MinGW.
9237         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
9239 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
9241         Revert my change to gnus-art.el
9242         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
9243         It wasn't that important, and it caused a Gnus build to fail.  See:
9244         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
9246         New minor mode Electric Quote
9247         This lets you easily insert quotes ‘like this’ by typing
9248         quotes `like this', and similarly you can easily insert
9249         quotes “like this” by typing quotes ``like this'' (Bug#20545).
9250         * doc/emacs/basic.texi (Inserting Text):
9251         * doc/emacs/modes.texi (Minor Modes):
9252         * etc/NEWS: Document it.
9253         * doc/emacs/text.texi (Quotation Marks): New section.
9254         * lisp/electric.el (electric-quote-comment)
9255         (electric-quote-string, electric-quote-paragraph):
9256         New custom vars.
9257         (electric--insertable-p)
9258         (electric-quote-post-self-insert-function): New functions.
9259         (electric-quote-mode, electric-quote-local-mode): New minor modes.
9260         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
9261         Add curved single quotes to electric-pair-text-pairs.
9262         Set electric-quote-string in this buffer.
9264         A few more doc string fixes (Bug#20385)
9266         Accept curved quotes in doc strings
9267         * lisp/info-look.el (info-lookup-guess-custom-symbol):
9268         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
9270         Generate curved quotes in pseudo-info nodes
9271         * lisp/info.el (Info-virtual-index-find-node)
9272         (Info-virtual-index, Info-apropos-find-node, info-apropos):
9273         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
9275         Fix minor quoting problems in doc strings
9276         Most of these fixes involve escaping grave accents that are
9277         actually intended to be grave accents, not left quotes.
9278         (Bug#20385)
9280         Support curved quotes in doc strings
9281         Emacs's traditional doc string style has been to quote symbols
9282         `like this'.  This worked well on now-obsolete terminals where
9283         ` and ' were symmetric quotes, but nowadays curved quotes
9284         ‘like this’ look better.  Support quoting the new way too.
9285         (Bug#20385)
9286         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
9287         ‘like-this’ as well as `like-this'.
9288         * etc/NEWS: Mention this.
9289         * lisp/cedet/mode-local.el (overload-docstring-extension)
9290         (mode-local-print-binding, mode-local-describe-bindings-2):
9291         * lisp/cus-theme.el (describe-theme-1):
9292         * lisp/descr-text.el (describe-text-properties-1, describe-char):
9293         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
9294         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
9295         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
9296         (eieio-help-constructor):
9297         * lisp/emacs-lisp/package.el (describe-package-1):
9298         * lisp/faces.el (describe-face):
9299         * lisp/help-fns.el (help-fns--key-bindings)
9300         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
9301         (help-fns--interactive-only, describe-function-1):
9302         (describe-variable):
9303         * lisp/help.el (describe-mode):
9304         * lisp/international/mule-cmds.el (describe-input-method)
9305         (describe-language-environment):
9306         * lisp/international/mule-diag.el (describe-character-set)
9307         (print-coding-system-briefly, list-input-methods)
9308         (list-input-methods-1):
9309         Insert curved quotes rather than grave accent and apostrophe.
9310         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
9311         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
9312         (checkdoc-proper-noun-region-engine):
9313         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
9314         (lisp-cl-font-lock-keywords-2):
9315         * lisp/finder.el (finder-font-lock-keywords):
9316         * lisp/gnus/gnus-art.el (gnus-button-alist):
9317         * lisp/help-fns.el (help-do-arg-highlight)
9318         (describe-function-1, describe-variable):
9319         * lisp/help-mode.el (help-xref-symbol-regexp)
9320         (help-xref-info-regexp, help-xref-url-regexp):
9321         * lisp/help.el (describe-mode):
9322         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
9323         * lisp/wid-edit.el (widget-documentation-link-regexp):
9324         Parse symbols quoted ‘like-this’ as well as `like-this'.
9325         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
9326         Add "‘" and "’" to electric-pair-text-pairs.
9327         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
9328         (elisp-completion-at-point, elisp--preceding-sexp):
9329         Also treat "‘" and "’" as quoting chars.
9331         substitute-command-keys now curves quotes
9332         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
9333         * doc/lispref/help.texi (Keys in Documentation):
9334         * etc/NEWS: Document this.
9335         * src/doc.c (Fsubstitute_command_keys): Implement it.
9337 2015-05-28  Glenn Morris  <rgm@gnu.org>
9339         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
9340         (rmail-summary-by-topic, rmail-summary-by-senders):
9341         No longer strip leading/trailing whitespace.
9343         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
9344         (f90-no-block-limit): Add "enum".  (Bug#20680)
9345         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
9346         New tests.
9348 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
9350         * lisp/isearch.el (isearch--current-buffer): Give a default value.
9352         Un-revert changes mistakenly dropped by f9fabb2b
9354 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
9356         Merge from gnulib
9357         This incorporates:
9358         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
9359         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
9360         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
9361         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
9362         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
9363         2015-05-26 stdio: fix probe on mingw under gcc 5.1
9364         * admin/merge-gnulib (GNULIB_MODULES):
9365         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
9366         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
9367         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
9368         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
9369         Get latest versions from gnulib.
9370         * lib/get-permissions.c, lib/set-permissions.c: New files.
9371         * lib/gnulib.mk, m4/gnulib-comp.m4:
9372         Regenerate.
9373         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
9375 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
9377         Delete the old process in vc-setup-buffer
9378         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
9379         process here.
9380         (vc-do-command): Rather than here (bug#20608).
9382 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
9384         Avoid gratuitous delete-dups in face-at-point.
9385         * lisp/faces.el (face-at-point): Do not compute the properly
9386         ordered, duplicate-free list if only a single value is
9387         requested anyway.  (Bug#20519)
9389         Show the exact C-x 8 RET invocation in describe-char.
9390         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
9391         invocation instead of a template.  (Bug#20522)
9393 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
9395         * lisp/emacs-lisp/package.el: Don't erase tags on refresh
9396         (package-menu--post-refresh): Call `tabulated-list-print' with the
9397         UPDATE argument.  This only affects the refresh action, the revert
9398         action still erases tags.
9399         (package-menu-get-status): Change `assq' to `assoc'.
9400         (package-menu--mark-upgrades-1): New function.
9401         (package-menu--mark-upgrades-pending): New variable.
9402         (package-menu-mark-upgrades): Use them to delay marking until
9403         after refresh is done.
9404         (package-menu--post-refresh): Call mark-upgrades-1 if
9405         mark-upgrades-pending is non-nil.
9407 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
9409         Fix typo in commit 3953c4be2816537be95520605d45b866dc731f4b
9411 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
9413         * lisp/isearch.el (isearch--current-buffer): New var
9414         (isearch-update): Set cursor-sensor-inhibit here.
9415         (isearch-done): Unset cursor-sensor-inhibit in the right buffer (bug#20532).
9417         Change inhibit-point-motion-hooks to t
9418         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
9419         to t and document it as obsolete.
9421 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
9423         Support ZIP files that use Zip64 extensions
9424         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
9425         format of central directory offsets used by Zip64 extensions.
9426         (Bug#20665)
9428 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
9430         New test tramp-test30-make-auto-save-file-name
9431         * tramp-tests.el (tramp-test30-make-auto-save-file-name): New test.
9432         (tramp-test31-special-characters)
9433         (tramp-test31-special-characters-with-stat)
9434         (tramp-test31-special-characters-with-perl)
9435         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
9436         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
9437         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
9438         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
9440         Improve tramp-handle-make-auto-save-file-name
9441         * tramp.el (tramp-auto-save-directory): Add :tags.
9442         (tramp-handle-make-auto-save-file-name): Let native
9443         `make-auto-save-file-name' use `auto-save-file-name-transforms',
9444         if `tramp-auto-save-directory' is not set.
9446 2015-05-27  Glenn Morris  <rgm@gnu.org>
9448         No longer set dired-directory in eshell.  (Bug#16477)
9449         * lisp/eshell/esh-mode.el (eshell-mode):
9450         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
9452         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
9454         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
9455         * lisp/progmodes/cc-mode.el (c-mode-help-address):
9456         Change to submit@debbugs.
9457         (c-mode-bug-package): New constant.
9458         (mail-position-on-field): Declare.
9459         (c-submit-bug-report): Insert X-Debbugs-Package header.
9460         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
9461         Mention debbugs.gnu.org.
9463 2015-05-26  Glenn Morris  <rgm@gnu.org>
9465         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
9466         (rmail-summary-by-recipients, rmail-summary-by-topic)
9467         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
9468         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
9470 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
9472         Handle curved quotes in info files
9473         * lisp/calc/calc-help.el (calc-describe-thing):
9474         * lisp/info.el (Info-find-index-name)
9475         (Info-try-follow-nearest-node, Info-fontify-node):
9476         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
9477         In info files, process quotes ‘like this’ the same way we process
9478         quotes `like this'.  This catches a few places we missed earlier.
9480 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
9482         xref-prompt-for-identifier: Use a list value
9483         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
9484         value, to be interpreted as a list of commands.
9485         (xref--prompt-p): New function.
9486         (xref--read-identifier): Use it.
9488 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
9490         Teach MS-Windows font back-end return per-glyph ascent/descent
9491         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
9492         values.
9493         * src/w32font.c (w32font_text_extents): Compute, cache, and
9494         accumulate per-glyph ascent and descent values, instead of copying
9495         global values from the font.  If the values are not available from
9496         the font data, i.e., non-TTF fonts, fall back on font-global values.
9497         (compute_metrics): Compute and return per-glyph ascent and descent
9498         values, if returned by GetGlyphOutlineW, falling back on
9499         font-global values.  (Bug#20628)
9500         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
9501         height of rectangle to be drawn, to be compatible with
9502         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
9503         box, when per-glyph ascent/descent values are used.
9505 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9507         * lisp/emacs-lisp/tabulated-list.el: Don't sort without sorter
9508         (tabulated-list-print): Don't sort if sorter is nil
9510 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
9512         Fix Bug#20621
9513         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
9514         are major modes which set `auto-save-mode' on their own rules;
9515         Tramp shall not overwrite such settings.
9516         (Bug#20621)
9518 2015-05-26  Glenn Morris  <rgm@gnu.org>
9520         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
9521         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
9522         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
9523         Doc updates.
9524         (vc-dir-mode): Remove unnecessary autoload.
9526 2015-05-25  Philipp Stephani  <phst@google.com>
9528         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52
9529         (xterm--extra-capabilities-type): Add `getSelection'.
9530         (xterm--query): Add `no-async' argument.
9531         (xterm--init-activate-get-selection): New function.
9532         (terminal-init-xterm): Use it.
9533         (xterm--init-modify-other-keys): Rename from
9534         terminal-init-xterm-modify-other-keys.
9535         (xterm--init-bracketed-paste-mode): Rename from
9536         terminal-init-xterm-bracketed-paste-mode.
9537         (xterm--init-activate-set-selection): Rename from
9538         terminal-init-xterm-activate-set-selection.
9539         (xterm--selection-char): New function.
9540         (gui-backend-set-selection): Use it.  Use the &context to only apply
9541         this method in terminals where we enabled the feature.
9542         (gui-backend-get-selection): New method.
9544 2015-05-25  Daniel Colascione  <dancol@dancol.org>
9546         Add C-language keyword constants to C++
9547         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
9548         keyword constants to C++.
9550 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
9552         Make TAGS files more portable to MS-Windows
9553         * etc/NEWS: Document this.
9554         * lib-src/etags.c (readline_internal) [DOS_NT]:
9555         Don't treat CRs differently from GNUish hosts.
9556         * lisp/progmodes/etags.el (etags-goto-tag-location):
9557         Adjust STARTPOS to account for the skipped CRs in dos-style files.
9559 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
9561         Improve fix of debbugs:20634 in tramp-sh.el
9563 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
9565         Fix a typo in last commit
9566         * lib-src/etags.c (C_entries): Fix a typo.
9567         * test/etags/ETAGS.good_1:
9568         * test/etags/ETAGS.good_2:
9569         * test/etags/ETAGS.good_3:
9570         * test/etags/ETAGS.good_4:
9571         * test/etags/ETAGS.good_5:
9572         * test/etags/CTAGS.good: Update due to the change in etags.c.
9574         Fix tagging of class members in C-like OO languages
9575         * lib-src/etags.c (longopts): Add new option --class-qualify and
9576         its shorthand -Q.
9577         (print_help): Add help text for --class-qualify.
9578         (main): Add handling of -Q.
9579         (consider_token, C_entries) <omethodparm>: Append argument types
9580         to Objective C methods only if --class-qualify was specified.
9581         Qualify C++, Objective C, and Java class members with their class
9582         names only if --class-qualify was specified.
9583         (C_entries): If --class-qualify was not specified, remove the
9584         namespace and class qualifiers from tag names of C++ methods.
9585         This allows to use etags.el as xref back-end without the
9586         tag-symbol-match-p method, which greatly increases the number of
9587         potentially false positives.  (Bug#20629)
9588         * doc/man/etags.1: Update to document the new --class-qualify
9589         option.
9590         * test/etags/ETAGS.good_1:
9591         * test/etags/ETAGS.good_2:
9592         * test/etags/ETAGS.good_3:
9593         * test/etags/ETAGS.good_4:
9594         * test/etags/ETAGS.good_5:
9595         * test/etags/CTAGS.good: Update due to changes in etags.c.
9597 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9599         (cl-generic-define-method): Side effects are evil (bug#20644)
9600         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
9601         cons-cells that might be used as keys in an `equal' hash-table.
9603 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9605         Make erc timestamps visible again
9606         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec): Make
9607         timestamps visible again (if requested).
9609 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
9611         Fix last change in etags.c that broke tagging compresed files
9612         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
9613         quoting of decompression shell command for MS-Windows/MS-DOS.
9615 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9617         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist
9618         (Bug#20639)
9620 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
9622         Fix typo in 89035e247591c8d688fce922b7079881aa110f33
9624 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
9626         Fix IPv6 addresses in Tramp
9627         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
9628         Add sqare brackets around host name.
9630 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
9632         Inhibit `epa-file-handler' in Tramp
9633         (Bug#20634)
9634         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
9635         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
9636         `epa-file-handler'.
9638 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
9640         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring
9641         (pcase-let): Document the behavior in case the pattern doesn't match.
9643 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
9645         * lisp/emacs-lisp/tabulated-list.el: New optional print method
9646         (tabulated-list-print): New optional argument, UPDATE.  If
9647         non-nil, the list is printed by only adding and deleting the
9648         changed entries, instead of erasing the whole buffer.  This method
9649         is much faster when few or no entries have changed.
9650         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
9651         * etc/NEWS: Document it.
9653         * lisp/emacs-lisp/tabulated-list.el: Improve printing
9654         (tabulated-list--get-sorter): New function.
9655         (tabulated-list-print): Restore window-line when remember-pos is
9656         passed and optimize away the `nreverse'.
9658 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
9660         Simpilify etags TEX mode scanning
9661         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
9662         Remove static vars.
9663         (TeX_commands): Deduce escapes here instead.
9664         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
9665         This removes the need for a reset_input call.
9667         Improve etags I/O error reporting
9668         * lib-src/etags.c:
9669         Don't include sys/types.h and sys/stat.h; no longer needed.
9670         (infilename): New static var.
9671         (process_file_name): Don't call 'stat'.  Instead, just open the
9672         file for reading and report any errors.  Don't bother making
9673         a copy of the file argument; it's not needed.  Be more careful to
9674         use the failing errno when reporting an error.
9675         Quote the real name better (though no perfectly)
9676         when passing it to the shell.
9677         (reset_input): New function, which reports I/O errors.
9678         All uses of 'rewind' changed to use this function.
9679         (perhaps_more_input): New function, which also checks for
9680         I/O errors.  All uses of 'feof' changed to use this function.
9681         (analyze_regex): Report an error if fclose fails.
9682         (readline_internal): Report an error if getc fails.
9683         (etags_mktmp): Return an error if close fails.
9685         etags.c: avoid side effects in 'if'
9686         * lib-src/etags.c (process_file_name, Perl_functions)
9687         (TEX_decode_env): Hoist side effects into previous statement.
9689         .gitignore tweaks
9690         * .gitignore: Ignore all *.stamp files.  Sort.
9691         Ignore [0-9]*.txt (commonly used name for git patches)
9692         and /vc-dwim-log-* (vc-dwim temporary).
9694 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
9696         Fix last change in etags.c, which failed the test suite
9697         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
9698         before the last change.
9700 2015-05-23  Glenn Morris  <rgm@gnu.org>
9702         Remove charset map files from repository, generate in first bootstrap
9703         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
9704         (all): Create the stamp file.
9705         (extraclean): Delete the stamp file.
9706         * src/Makefile.in (lispintdir, charsets): New variables.
9707         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
9708         New rules.
9709         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
9710         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
9711         * etc/charsets/*.map: Remove from repository.
9713 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
9715         Cleanup etags.c to use locale-independent code
9716         Although this doesn't alter behavior (as etags doesn't use
9717         setlocale), the new version is more clearly locale-independent and
9718         the executable is a bit smaller on my platform.
9719         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
9720         Include <c-ctype.h> instead of <ctype.h>.
9721         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
9722         (begtk, midtk):
9723         Remove; no longer needed.
9724         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
9725         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
9726         c_islower, c_tolower, respectively.
9727         (notinname, begtoken, intoken, endtoken): Rewrite as functions
9728         instead of macros, and initialize the tables at compile-time
9729         rather than at run-time.
9731         Put default action first in src/Makefile
9732         * src/Makefile.in (all): Put this rule before lisp.mk.
9733         That way, plain 'make' works in the src directory again.
9735 2015-05-23  Glenn Morris  <rgm@gnu.org>
9737         * Makefile.in: Fix extraclean rule.
9738         (extraclean_dirs): New.
9739         (extraclean): Use it.
9741 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
9743         Avoid compiler warning in image.c on MS-Windows
9744         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
9745         warning in image.c.
9747 2015-05-23  Glenn Morris  <rgm@gnu.org>
9749         Fix --without-toolkit-scroll-bars builds.
9750         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
9751         Add new argument to x_clear_area1.
9752         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
9753         Update x_clear_area arguments.
9755         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
9756         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
9757         Change to included version.
9758         (LOCAL, local, totalclean): Remove.
9759         (extraclean): Delete all generated files.
9761 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
9763         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume CVS/Entries exists.
9765         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
9767         tags-completion-at-point-function: Don't trust the find-tag function
9768         * lisp/progmodes/etags.el (tags-completion-at-point-function):
9769         Don't trust the find-tag function.
9771 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
9773         Pacify --enable-gcc-warnings
9774         * src/frame.h (x_query_color): Remove redundant extern decl.
9775         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
9776         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
9777         (ftcrfont_text_extents, ftcrfont_draw):
9778         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
9779         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
9780         (x_ins_del_lines, frame_highlight, frame_unhighlight)
9781         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
9782         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
9783         (x_update_window_begin, x_connection_closed)
9784         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
9785         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
9786         (*x_gc_get_ext_data, x_extension_initialize)
9787         (x_cr_accumulate_data):
9788         Remove redundant static decl.  Many of these GCC doesn't complain
9789         about, but we might as well clean out the duplication while we're
9790         in the neighborhood.
9791         * src/xterm.c (x_fill_trapezoid_for_relief):
9792         Remove decl of nonexistent function.
9794 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
9796         Replace gui-method macros with cl-generic with &context
9797         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
9798         (gui-method-declare, gui-call): Remove.
9799         (frame-creation-function): Use cl-defgeneric.
9800         (make-frame): Adjust callers.
9801         * lisp/menu-bar.el (menu-bar-edit-menu):
9802         Use gui-backend-selection-exists-p.
9803         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
9804         (gui-backend-get-selection): New cl-generic to replace
9805         gui-get-selection method.
9806         (gui-backend-set-selection): New cl-generic to replace
9807         gui-set-selection method.
9808         (gui-selection-owner-p): New cl-generic to replace
9809         gui-selection-owner-p method.
9810         (gui-backend-selection-exists-p): New cl-generic to replace
9811         gui-selection-exists-p method.  Adjust all callers.
9812         * lisp/server.el (server-create-window-system-frame): Don't ignore
9813         window-system spec even when unsupported.
9814         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
9815         * lisp/startup.el (handle-args-function, window-system-initialization):
9816         Use cl-defgeneric.
9817         (command-line): Adjust calls accordingly.
9818         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
9819         a window-system-initialization method.
9820         (handle-args-function, frame-creation-function): Use cl-defmethod.
9821         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
9822         (gui-get-selection): Use cl-defmethod on the new functions instead.
9823         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
9824         a gui-backend-get-selection method.
9825         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
9826         Use cl-defmethod on the new functions instead.
9827         (msdos-window-system-initialization): Turn into
9828         a window-system-initialization method.
9829         (frame-creation-function, handle-args-function): Use cl-defmethod.
9830         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
9831         a window-system-initialization method.
9832         (handle-args-function, frame-creation-function): Use cl-defmethod.
9833         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
9834         (gui-get-selection): Use cl-defmethod on the new functions instead.
9835         * lisp/term/x-win.el (x-window-system-initialization): Turn into
9836         a window-system-initialization method.
9837         (handle-args-function, frame-creation-function): Use cl-defmethod.
9838         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
9839         (gui-get-selection): Use cl-defmethod on the new functions instead.
9840         * lisp/term/xterm.el (xterm--set-selection): Turn into
9841         a gui-backend-set-selection method.
9842         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
9843         (Fns_selection_owner_p): Remove unused arg `terminal'.
9844         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
9846 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
9848         Revert "Fix etags Bug#20629 that broke C++ support."
9849         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
9851 2015-05-23  Jan D  <jan.h.d@swipnet.se>
9853         Fix etags Bug#20629 that broke C++ support.
9854         * etags.el (etags-xref-find-definitions-tag-order): Revert commit
9855         from Sun May 10 (Bug#20629).
9857         Merge branch 'cairo'.
9858         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
9859         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
9861         Merge branch 'master' into cairo
9863         Fixes to compile cairo branch without cairo.
9864         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
9865         first argument.
9866         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
9867         USE_CAIRO.
9869 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
9871         * lisp/emacs-lisp/package.el: Always update selected-packages
9872         (package--update-selected-packages): New function.
9873         (package-menu-execute): Use it before starting the transaction,
9874         this way the list of selected packages is updated even when the
9875         transaction fails.
9876         (package-menu--perform-transaction): Don't edit selected-packages.
9878 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
9880         Fix etags reading of compressed files
9881         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
9882         Include fcntl.h, for O_CLOEXEC.
9883         (process_file_name): Don't use 'popen', whose streams cannot be
9884         rewound.  Instead, uncompress the file to a temporary file,
9885         created by 'etags_mktmp', and read from that as usual.
9886         (etags_mktmp): New function.
9887         * test/etags/ETAGS.good_1:
9888         * test/etags/ETAGS.good_2:
9889         * test/etags/ETAGS.good_3:
9890         * test/etags/ETAGS.good_4:
9891         * test/etags/ETAGS.good_5: Update to be consistent with latest
9892         changes in etags.c regarding reading compressed files.
9894         Improve documentation of 'set-fontset-font'
9895         * doc/lispref/display.texi (Fontsets): Document the value of nil
9896         for the 3rd argument of 'set-fontset-font'.
9898         Fix documentation of forward-line
9899         * src/cmds.c (Fforward_line): Clarify the return value if the line
9900         at end of accessible portion of the buffer has no newline.
9901         * doc/lispref/positions.texi (Text Lines): Document what happens
9902         if the line at end of accessible portion of buffer has no newline.
9903         (Bug#20587)
9905 2015-05-22  Glenn Morris  <rgm@gnu.org>
9907         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
9909         * admin/charsets/mapconv (LC_ALL): Set to C.
9911         * Makefile.in: Add admin/charsets into top-level clean rules.
9912         (clean): Add admin/charsets.
9913         (maybeclean_dirs): New variable.
9914         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
9916         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
9918 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
9920         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc
9922 2015-05-22  Glenn Morris  <rgm@gnu.org>
9924         Generate admin/charsets Makefile via configure, and make more portable.
9925         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
9926         (admin/charsets/Makefile): Generate it.
9927         * admin/charsets/Makefile.in: Rename from Makefile.
9928         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
9929         New variables, set by configure.
9930         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
9931         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
9932         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
9933         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
9934         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
9935         (all): Declare PHONY.
9936         (local): New PHONY target.
9937         (map_template): New template.  Use to define short PHONY aliases.
9938         (*.map): Add directory prefixes to targets and prerequisites.
9939         Respect make verbosity.
9940         (JISC6226.map): Replace non-portable sed append without newline.
9941         (install): Remove rule.
9942         (clean): Only delete temporary sedscript.
9943         (bootstrap-clean, distclean, maintainer-clean, extraclean)
9944         (totalclean): New PHONY rules.
9945         * admin/charsets/mapconv (BASE): Replace basename with expr.
9946         (FILE): Add "mapfiles" subdirectory.
9947         (AWK): New variable.  Use throughout in place of "awk".
9948         (main): Use "gunzip -c" in place of "zcat".
9949         Don't leave whitespace before "p", for older sed.
9950         * admin/charsets/mapfiles/PTCP154: Add final newline,
9951         to make older sed versions happy.
9953 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
9955         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
9956         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
9957         (auto-revert-notify-watch-descriptor): Use defvar-local.
9958         (find-file-hook, auto-revert-tail-mode, )
9959         (auto-revert-notify-add-watch): Use setq-local.
9960         (auto-revert-notify-add-watch): Don't call make-local-variable on
9961         kill-buffer-hook (bug#20601).
9963 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
9965         Change defgeneric so it doesn't completely redefine the function
9966         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
9967         previously defined methods.
9968         (cl-generic-define-method): Let-bind purify-flag instead of using `fset'.
9969         (cl--generic-prefill-dispatchers): Only define during compilation.
9970         (cl-method-qualifiers): Remove redundant alias.
9971         (help-fns-short-filename): Silence byte-compiler.
9972         * test/automated/cl-generic-tests.el: Adjust to new defgeneric semantics.
9974 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
9976         (package-menu-execute): Remove reference to remove-dups
9978 2015-05-21  kwhite  <kwhite@gnu.org>
9980         * lisp/erc/erc.el: Hide network/channel messages
9981         (erc-network-hide-list, etc-channel-hide-list): New lists to define
9982         message types per network/channel.
9983         (erc-add-targets): New function to parse list of targets
9984         (erc-hide-current-message-p): Modified to check for new targets
9986 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
9988         Don't quote nil and t in doc strings
9989         This is as per "Tips for Documentation Strings" in the elisp manual.
9990         For consistency, do the same in diagnostics and comments.
9992 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
9994         Fix a minor problem with mouse-face on mode line
9995         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
9996         mouse face also if the mouse pointer hovers above mode-line glyphs
9997         that don't come from any Lisp string.  (Bug#20620)
9999 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
10001         * lisp/emacs-lisp/package.el: Fix selected-package logic
10002         (package-menu-execute): Mark as selected all non-upgrade packages
10003         being installed.
10004         (package-menu--perform-transaction): Don't mark anything.
10006         * lisp/emacs-lisp/package.el: Mode-line progress report
10007         (package-menu--transaction-status): New variable.
10008         (package-menu-mode, package-menu--perform-transaction): Use it.
10010         * lisp/emacs-lisp/package.el: Better transaction messages
10011         (package-menu--partition-transaction): New function.
10012         (package-menu--prompt-transaction-p, package-menu-execute): Use
10013         it.
10014         (package-menu--perform-transaction): Don't do any messaging.
10016         * lisp/emacs-lisp/package.el: Revert async package transactions
10017         (package-menu-async): Update doc.
10018         (package-install-from-archive, package-download-transaction)
10019         (package-install, package-menu--perform-transaction)
10020         (package-menu-execute): Remove asynchronous functionality.
10022 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
10024         Revert doc string changes to f90.el
10025         Problem reported by Glenn Morris in:
10026         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
10027         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
10028         Revert recent changes to doc strings, as it's intended that they
10029         use grave accent, not quote.
10031 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
10033         Improve parameter name
10035         Add new inline function `hash-table-empty-p'
10037 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
10039         Don't require help-fns when not needed
10040         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
10041         * lisp/emacs-lisp/elint.el:
10042         Don't require help-fns at the top level.
10043         * lisp/emacs-lisp/advice.el (ad-arglist):
10044         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
10045         Don't require help-fns.  (Bug#17001)
10047 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
10049         Fix slash collapsing in etags on MS-Windows
10050         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
10051         MS-Windows code from the Posix code, and support collapsing both
10052         forward- and back-slashes on MS-Windows.  Fixes a regression found
10053         by the test suite.
10055         Improve documentation of glyphless-char-display
10056         * doc/lispref/display.texi (Glyphless Chars): Improve
10057         documentation of glyphless character display.
10059         Fix "acronym" display of glyphless characters on w32
10060         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
10061         ignore "acronym" substitutes of 1 character for glyphless characters.
10063 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
10065         Add an automated test for let-when-compile
10066         * test/automated/subr-tests.el (let-when-compile): New test.
10068         Add let-when-compile macro instead of using pcase-let
10069         * lisp/subr.el (let-when-compile): New let-like macro that makes its
10070         bindings known to macros like `eval-when-compile' in the body.
10071         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to a
10072           `let-when-compile'. Also comment out the unused lexical var
10073           `el-kws-re'.
10074         The change greatly improves readability, while providing almost the
10075         same (even shorter) byte code: instead of pre-evaluating 10 variables,
10076         tossing them into a list, and destructuring that list a full screen
10077         page later, the variables are simply bound as they are evaluated,
10078         wrapped individually in `eval-when-compile'.
10080 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
10082         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer
10083         (package-delete-button-action): New function.
10084         (describe-package-1): Add Delete button.
10086         * lisp/emacs-lisp/package.el: Better dependency description
10087         (package--used-elsewhere-p): New optional arg, ALL, and return
10088         package-desc objects instead of names.
10089         (package-delete): Update accordingly.
10090         (describe-package-1): Describe which packages require the package.
10092 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
10094         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
10095         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
10096         Fix doc-string (Bug#20533).
10098         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
10099         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
10100         (switch-to-buffer): If the selected window is strongly dedicated
10101         to its buffer, signal error before prompting for buffer name.  Handle
10102         `switch-to-buffer-in-dedicated-window'.  (Bug#20472)
10103         * doc/lispref/windows.texi (Switching Buffers): Document
10104         `switch-to-buffer-in-dedicated-window'.
10106 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
10108         Prefer "this" to “this” in doc strings
10109         This mostly just straightens quotes introduced in my previous patch.
10110         Suggested by Dmitry Gutov in:
10111         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
10112         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
10113         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
10114         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
10115         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
10116         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
10117         Prefer straight double quotes to curved double quotes in doc strings.
10119         Fix minor quoting problems in doc strings
10120         These were glitches regardless of how or whether we tackle the
10121         problem of grave accent in doc strings.
10122         * lisp/calc/calc-aent.el (math-restore-placeholders):
10123         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
10124         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
10125         * lisp/leim/quail/hebrew.el ("hebrew-new")
10126         ("hebrew-biblical-sil"):
10127         * lisp/leim/quail/thai.el ("thai-kesmanee"):
10128         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
10129         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
10130         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
10131         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
10132         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
10133         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
10134         (semantic-tag-components):
10135         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
10136         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
10137         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
10138         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
10139         * lisp/emacs-lisp/generator.el (iter-next):
10140         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
10141         (gnus-article-mode-syntax-table):
10142         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
10143         * lisp/net/soap-client.el (soap-wsdl-get):
10144         * lisp/net/telnet.el (telnet-mode):
10145         * lisp/org/org-compat.el (org-number-sequence):
10146         * lisp/org/org.el (org-remove-highlights-with-change)
10147         (org-structure-template-alist):
10148         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
10149         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
10150         (handwrite-12pt, handwrite-13pt):
10151         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
10152         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
10153         * lisp/progmodes/verilog-mode.el (verilog-tool)
10154         (verilog-string-replace-matches, verilog-preprocess)
10155         (verilog-auto-insert-lisp, verilog-auto-insert-last):
10156         * lisp/textmodes/makeinfo.el (makeinfo-options):
10157         * src/font.c (Ffont_spec):
10158         Fix minor quoting problems in doc strings, e.g., missing quote,
10159         ``x'' where `x' was meant, etc.
10160         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
10161         Fix minor quoting problem in other string.
10162         * lisp/leim/quail/ethiopic.el ("ethiopic"):
10163         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
10164         Omit unnecessary quotes.
10165         * lisp/faces.el (set-face-attribute, set-face-underline)
10166         (set-face-inverse-video, x-create-frame-with-faces):
10167         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
10168         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
10169         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
10170         * lisp/net/tramp.el (tramp-methods):
10171         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
10172         * lisp/textmodes/artist.el (artist-ellipse-right-char)
10173         (artist-ellipse-left-char, artist-vaporize-fuzziness)
10174         (artist-spray-chars, artist-mode, artist-replace-string)
10175         (artist-put-pixel, artist-text-see-thru):
10176         * lisp/vc/ediff-util.el (ediff-submit-report):
10177         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
10178         Use double-quotes rather than TeX markup in doc strings.
10179         * lisp/skeleton.el (skeleton-pair-insert-maybe):
10180         Reword to avoid the need for grave accent and apostrophe.
10181         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
10182         Don't use grave and acute accents to quote.
10184 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
10186         * emacs-lisp/generator.el (cps--gensym, cps--transform-1): Silence compiler
10188 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
10190         Try to port new etags tests to MS-Windows
10191         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
10192         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
10193         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
10194         Adjust to test-case changes below.
10195         * test/etags/Makefile (CSRC): Remove dostorture.c.
10196         Whatever it was trying to test, wasn't working portably.
10197         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
10198         just a line-ending problem.
10199         * test/etags/c-src/dostorture.c: Remove.
10200         * test/etags/cp-src/c.C: Remove stray CR.
10201         * test/etags/html-src/algrthms.html: Remove trailing CRs.
10202         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
10203         but if someone edits it later it should stay UTF-8-compatible.
10205 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
10207         Fix display of overlapping window-specific overlays
10208         * src/keyboard.c (adjust_point_for_property): When adjusting point
10209         due to display strings, ignore overlays that are specific to
10210         windows other than the currently selected one.
10211         * src/xdisp.c (handle_single_display_spec): If the display
10212         property comes from an overlay, arrange for buffer iteration to
10213         resume only after the end of that overlay.  (Bug#20607)
10215 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
10217         New command icomplete-force-complete-and-exit
10218         * lisp/icomplete.el (icomplete-force-complete-and-exit):
10219         New command
10220         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
10221         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
10222         (icomplete-minibuffer-map): Bind C-j to it.
10223         (icomplete-forward-completions, icomplete-backward-completions):
10224         Mention the new command in the docstring.
10225         * lisp/minibuffer.el (minibuffer-force-complete-and-exit): Revert
10226         the previous fix for bug#17545.
10228 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
10230         Fix last commit
10232         In Elisp manual explain how to override window manager positioning (Bug#20552)
10233         * doc/lispref/frames.texi (Position Parameters): Give example of
10234         how to override a window manager positioning decision.
10236         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
10237         * src/frame.c (Fdelete_frame): In doc-string mention that frame
10238         can't be deleted if it has a surrogate minibuffer.
10239         * doc/lispref/frames.texi (Minibuffers and Frames)
10240         (Deleting Frames): Explain "surrogate minibuffer frames".
10242         In w32heap.c bump DUMPED_HEAP_SIZE to 19/12 MB
10243         * emacs-git/quick/src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
10245 2015-05-18  Glenn Morris  <rgm@gnu.org>
10247         Add option to ignore commit lines matching a pattern in ChangeLog.
10248         * build-aux/gitlog-to-changelog: Add --ignore-line option.
10249         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
10251 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
10253         Don't skip new etags tests on non-UTF-8 hosts
10254         Problem reported by Eli Zaretskii for MS-Windows.
10255         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
10256         (LC_ALL): Set to C if the current locale isn't UTF-8.
10257         (.PHONY): Remove ediff_1 thru ediff_5.
10258         (check): Always run.
10260 2015-05-18  Glenn Morris  <rgm@gnu.org>
10262         * lisp/calculator.el (calculator-funcall):
10263         * lisp/textmodes/artist.el (artist-spray-random-points):
10264         Use standard degree/radian conversion utilities.
10266         Further lisp-complete-symbol related cleanup.
10267         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
10268         Unadvertise non-functional argument.  Replace obsolete alias.
10270 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
10272         Add a test case for Maven warning ouput
10273         * test/automated/compile-tests.el
10274         (compile-tests--test-regexps-data): Add a case for Maven warning
10275         ouput.
10276         (compile--test-error-line): Check the compilation message type, if
10277         it's specified in the test data.
10279 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
10281         Update Maven compilation-mode entry to distinguish warnings
10282         * lisp/progmodes/compile.el
10283         (compilation-error-regexp-alist-alist): Update Maven entry to
10284         distinguish warnings (bug#20556).
10286 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
10288         * test/automated/sgml-mode-tests.el: New file.
10290 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
10292         Improve handling of the first Git revision
10293         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
10294         there's no next entry, delete until the end of the buffer.
10295         (log-view-end-of-defun-1): Stop at eob.
10296         * lisp/vc/vc-annotate.el
10297         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
10298         when previous-revision is nil.
10299         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
10300         with `--' to avoid ambiguity.
10301         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
10302         returned revision string.
10303         (vc-git-annotate-time): Expect `^' before the first revision.
10304         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
10305         REV1 is nil, and REV2 is not.
10306         * lisp/vc/vc.el: Update the description of the `diff' function.
10308 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
10310         Allow checkdoc to be called in batch
10311         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
10312           is non-nil, echo the error with `warn'.
10313         How it can be used in -batch:
10314         (with-current-buffer (find-file "checkdoc.el")
10315           (checkdoc-current-buffer t))
10317 2015-05-18  Glenn Morris  <rgm@gnu.org>
10319         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
10321 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
10323         * admin/notes/unicode: New section "binary files".
10325         Change new etags test to use UTF-8 encoding
10326         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
10327         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
10328         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
10329         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
10330         * test/etags/html-src/softwarelibero.html:
10331         Switch to UTF-8 encoding.
10332         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
10333         Remove Makefile, as it's too incestuous to have the test input
10334         include the build procedure.
10335         (UTF8_LOCALE, UTF_ENCODING): New macros.
10336         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
10337         (check): Skip if not UTF-8.
10338         (.PHONY): New rule.
10339         (FRC): Remove, as superseded by .PHONY.  All uses removed.
10340         (regexfile): Prefer printf to echo when outputting oddball chars.
10341         (.PRECIOUS): Remove, as these files are not built.
10343         Rename 'foo-gzipped' to 'foo.gz'
10344         * test/automated/data/decompress/foo.gz:
10345         Rename from test/automated/data/decompress/foo-gzipped,
10346         to make it easier for other tools to tell that it's compressed.
10347         * test/automated/zlib-tests.el (zlib--decompress):
10348         Adjust to renamed file.
10350 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
10352         Set up default-directory
10353         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
10354         binding for `v'.
10355         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
10356         appropriate value for default-directory.
10358 2015-05-17  Samer Masterson  <samer@samertm.com>
10360         * lisp/eshell/em-term.el (eshell-term-sentinel):
10361         No-op by default, only kills term buffer if
10362         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
10363         (eshell-destroy-buffer-when-process-dies): New custom to preserve
10364         previous behavior.
10366         eshell: Introduce new buffer syntax
10367         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
10368         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
10369         needed (Bug#19319).
10370         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
10371         (eshell-get-target): Remove shorthand-specific code.
10372         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
10373         '#<buffer-name>'.
10375 2015-05-17  Jan D  <jan.h.d@swipnet.se>
10377         Merge branch 'master' into cairo
10379 2015-04-26  Jan D  <jan.h.d@swipnet.se>
10381         Merge branch 'master' into cairo
10383         Add PBM support for cairo.
10384         * src/image.c (xcolor_to_argb32): New function.
10385         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
10386         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
10387         XImagePtr if ! USE_CAIRO.
10388         (pbm_load): Add cairo support.
10390 2015-04-12  Jan D  <jan.h.d@swipnet.se>
10392         x_free_cr_resources: Renamed from x_prepare_for_xlibdraw.
10393         * src/xterm.c (x_free_cr_resources): Renamed from x_prepare_for_xlibdraw.
10394         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
10395         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
10396         x_free_cr_resources.
10398         Handle specified bg in images.  Use generic libpng code for PNG:s.
10399         * src/image.c (get_spec_bg_or_alpha_as_argb)
10400         (create_cairo_image_surface): New functions when USE_CAIRO.
10401         (xpm_load): Call the above functions.  Handle XPM without mask
10402         when USE_CAIRO.
10403         (png_load_body): Handle USE_CAIRO case.
10404         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
10405         instead.
10406         (jpeg_load_body): Call create_cairo_image_surface.
10407         (gif_load, svg_load_image): Handle specified background, call
10408         create_cairo_image_surface.
10409         * src/xterm.c (x_draw_image_glyph_string): Added missing USE_CAIRO.
10411 2015-04-11  Jan D  <jan.h.d@swipnet.se>
10413         Support GIF and Tiff with cairo.
10414         * configure.ac: Allow jpeg with cairo.
10415         Allow tiff and gif with cairo.
10416         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
10417         (tiff_load): Create cairo image surface if USE_CAIRO.
10418         (gif_load): Ditto.
10420         Support JPEG with USE_CAIRO.
10421         * configure.ac: Allow jpeg with cairo.
10422         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
10424 2015-04-05  Jan D  <jan.h.d@swipnet.se>
10426         Support RSVG and cairo.
10427         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
10428         * src/dispextern.h (struct image): add cr_data2 if cairo.
10429         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
10430         (x_clear_image): Free cr_data and cr_data2 if set.
10431         (xpm_load): Assign data to cr_data2.
10432         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
10434 2015-04-03  Jan D  <jan.h.d@swipnet.se>
10436         Introduce limited Xpm support (32 bit ZPixmap) for Cairo.
10437         * configure.ac (HAVE_RSVG): Move after cairo.
10438         (USE_CAIRO): Disable rsvg, don't disable Xpm.
10439         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
10440         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
10441         don't return early.
10442         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
10443         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
10444         and create a surface.
10446         Tool tips for menus did not show any text.
10447         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
10448         tip frames, the geometry may be wrong.
10450         Merge branch 'master' into cairo, fixes tooltips not shown.
10452         Merge branch 'master' into cairo
10454         Add CAIRO_CFLAGS to lwlib/Makefile.in
10455         * Makefile.in (CAIRO_CFLAGS): Add.
10457 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10459         * ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
10461 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10463         Draw outermost line using black relief and erase corners also for cairo.
10464         * xterm.c [USE_CAIRO]: Include math.h.
10465         (enum corners) [USE_CAIRO]: New enum.
10466         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
10467         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
10468         than 1, draw the outermost line using the black relief.
10470         * xterm.c (x_fill_trapezoid_for_relief): Remove unnecessary cairo_close_path.
10472 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10474         * xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
10476         * xterm.c (x_draw_stretch_glyph_string): Call x_reset_clip_rectangles instead of XSetClipMask.
10478         Use int instead of unsigned int for width and height args.
10479         * xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
10480         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
10481         width and height args.
10483         Modernize k&r cairo-related function declarations.
10484         * gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
10485         (xg_print_frames_dialog): Modernize k&r declarations.
10486         * xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
10487         (Fx_print_frames_dialog): Modernize k&r declarations.
10488         * xterm.c (x_gc_get_ext_data, x_extension_initialize, x_begin_cr_clip)
10489         (x_end_cr_clip, x_set_cr_source_with_gc_foreground)
10490         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
10491         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
10492         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
10493         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
10494         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
10495         (x_clear_area): Modernize k&r declarations.
10497         Implement wave-style variant of underlining for cairo.
10498         * xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
10499         (x_draw_underwave) [USE_CAIRO]: Use it.
10501         * xterm.c (x_draw_window_divider): Use x_fill_rectangle instead of XFillRectangle.
10503 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10505         Fix fringe bitmap initialization for cairo.
10506         * fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap data for
10507         cairo image surface.
10508         * xterm.c (x_cr_define_fringe_bitmap): Call cairo_surface_mark_dirty.
10510 2015-02-11  Jan D  <jan.h.d@swipnet.se>
10512         Add cairo drawing.
10513         * configure.ac (with-cairo): New option.
10514         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
10515         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
10516         Output "Does Emacs use cairo?".
10517         * lisp/version.el (emacs-version): Add cairo version.
10518         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
10519         (FONT_OBJ): Add comment about ftcrfont.
10520         (ALL_CFLAGS): Add CAIRO_CFLAGS.
10521         (LIBES): Add CAIRO_LIBS.
10522         * src/dispextern.h (struct image): Add cr_data for cairo.
10523         (x_cr_init_fringe): Declare.
10524         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
10525         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
10526         * src/fringe.c (x_cr_init_fringe): New function name that shares code
10527         with w32_init_fringe.
10528         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
10529         * src/ftfont.c (ftfont_info_size); New global variable.
10530         (ftfont_open2): New extern function almost the same as old ftfont_open,
10531         but takes the font_object as argument.
10532         (ftfont_open): Build font object and call ftfont_open2.
10533         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
10534         * src/gtkutil.c (xg_clear_under_internal_border)
10535         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos): Only
10536         queue_draw if not cairo.  Change args to x_clear_area.
10537         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
10538         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
10539         (xg_print_frames_dialog): New functions for printing.
10540         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
10541         (xg_print_frames_dialog): Declare.
10542         * src/image.c: Add defined (USE_CAIRO) for PNG.
10543         Add !defined USE_CAIRO for W32 PNG code.
10544         (x_clear_image): If cairo, destroy the surface in cr_data.
10545         (png_load): Add new cairo compatible implementation.
10546         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
10547         * src/xfns.c: New section Printing.
10548         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
10549         (x-print-frames-dialog): New printing functions.
10550         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if
10551         cairo.
10552         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
10553         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
10554         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
10555         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
10556         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
10557         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
10558         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
10559         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
10560         Declare.
10561         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
10562         (max_fringe_bmp, fringe_bmp): New variables.
10563         (x_gc_get_ext_data, x_extension_initialize)
10564         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
10565         (x_set_cr_source_with_gc_foreground)
10566         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
10567         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
10568         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
10569         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
10570         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
10571         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
10572         (x_update_begin): Create cairo surface if needed.
10573         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
10574         (x_update_end): Paint cairo drawing surface to xlib surface.
10575         (x_clear_under_internal_border, x_after_update_window_line): Adjust
10576         arguments to x_clear_area.
10577         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
10578         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
10579         of XSetClipMask.
10580         (x_set_glyph_string_clipping)
10581         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
10582         instead of XSetClipRectangles.
10583         (x_clear_glyph_string_rect, x_draw_glyph_string_background): Use
10584         x_fill_rectangle instead of XFillRectangle.
10585         (x_draw_glyph_string_foreground)
10586         (x_draw_composite_glyph_string_foreground)
10587         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle instead
10588         of XDrawRectangle.
10589         (x_draw_relief_rect): Add code for USE_CAIRO.
10590         Call x_reset_clip_rectangles instead of XSetClipMask.
10591         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
10592         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
10593         instead of XSetClipMask.
10594         (x_draw_image_foreground, x_draw_image_foreground_1):
10595         x_draw_rectangle instead of XDrawRectangle.
10596         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
10597         XFillRectangle.
10598         (x_draw_image_glyph_string): If img has cr_data, use it as
10599         a cairo surface.
10600         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
10601         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
10602         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
10603         x_reset_clip_rectangles instead of XSetClipMask.
10604         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
10605         (x_clear_area1): New function that calls XClearArea.
10606         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
10607         non-cairo.
10608         (x_clear_frame): x_clear_window instead of XClearWindow.
10609         (x_scroll_run): Set frame garbaged if cairo.
10610         (XTmouse_position): Initialize *part to 0.
10611         (x_scroll_bar_create): Adjust arguments to x_clear_area.
10612         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
10613         x_fill_rectangle instead of XFillRectangle.
10614         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
10615         arguments to x_clear_area.
10616         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
10617         (handle_one_xevent): Adjust arguments to x_clear_area.
10618         Destroy cairo surface for frame if ConfigureNotify.
10619         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
10620         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
10621         x_reset_clip_rectangles instead of XSetClipMask.
10622         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
10623         x_reset_clip_rectangles instead of XSetClipMask.
10624         (x_clear_frame_area): Adjust arguments to x_clear_area.
10625         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
10626         (x_term_init): Call x_extension_initialize if cairo.
10627         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
10628         x_cr_destroy_fringe_bitmap for cairo.
10629         (x_initialize): Call x_cr_init_fringe for cairo.
10630         * src/xterm.h: Add include of cairo header files.
10631         (x_bitmap_record): Add img if cairo.
10632         (x_gc_ext_data): New struct for cairo.
10633         (x_display_info): Add ext_codes for cairo.
10634         (x_output): Add cr_context and cr_surface for cairo.
10635         (x_clear_area): Change arguments from Display*/Window to frame pointer.
10636         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
10637         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
10638         (x_cr_draw_frame, x_cr_export_frames): Declare.
10640 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
10642         Fix integer-valued `mouse-highlight' (Bug#20590)
10643         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
10645 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
10647         MS-Windows followup for ASCIIfication of curved quotes
10648         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
10649         test for curved quotes being displayable, after switching the
10650         terminal encoding.  (Bug#20545)
10652 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
10654         Spelling fixes
10656 2015-05-17  Jan D  <jan.h.d@swipnet.se>
10658         Add comment that x_shift_glyphs_for_insert is never called.
10659         * xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface): Add
10660         comment that this function is never called.
10662 2015-05-16  Glenn Morris  <rgm@gnu.org>
10664         * src/lisp.mk: Remove from repository and generate at build-time.
10665         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
10666         (shortlisp_filter): New variable.
10667         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
10668         (distclean): Remove lisp.mk.
10669         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
10670         * lisp/loadup.el: Tweak layout to make it easier to parse.
10671         * make-dist: Do not distribute src/lisp.mk.
10673 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
10675         Display shorter dates in Git annotate output
10676         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
10677         format (when not overridden with vc-git-annotate-switches).
10678         (vc-git-annotate-time): Support the short format, as well as ISO
10679         8601 that has been used until now (bug#5428).
10681 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
10683         ASCIIfy curved quotes on displays lacking them
10684         * lisp/international/mule-cmds.el (set-locale-environment):
10685         If curved quotes don't work, display straight ASCII approximations
10686         (Bug#20545).
10688 2015-05-16  Glenn Morris  <rgm@gnu.org>
10690         Small src/Makefile simplification.
10691         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
10692         * src/Makefile.in (lisp): Derive from shortlisp.
10693         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
10695 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
10697         * lisp/help-mode.el (help-go-forward): Doc fix.
10698         (Bug#20577)
10700         * doc/lispref/debugging.texi (Profiling): Improve indexing.
10701         (Bug#20576)
10703 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
10705         Use `unless' to have one fewer `not'
10706         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
10707         have one fewer `not'.
10709         Remove redundant :group declarations from vc-git.el
10710         * lisp/vc/vc-git.el (vc-git-diff-switches)
10711         (vc-git-annotate-switches, vc-git-resolve-conflicts)
10712         (vc-git-program, vc-git-root-log-format): Remove the redundant
10713         :group declarations.
10715 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
10717         Removes the predicate from lisp-complete-symbol (Bug#20456)
10718         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
10719         and remove it from the docstring.
10721 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
10723         Add new option vc-git-resolve-conflicts
10724         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
10725         (vc-git-find-file-hook): Add to after-save-hook only when the
10726         above is non-nil.
10727         (vc-git-resolve-when-done): Update to honor the new variable.
10728         (Bug#20292)
10730 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10732         * lisp/emacs-lisp/tabulated-list.el: Don't error on nil header-string
10733         (tabulated-list-init-header): Document new behavior.
10734         (tabulated-list-print-fake-header): No nothing if
10735         `tabulated-list--header-string' is nil.
10736         (tabulated-list--header-string): Add a docstring.
10737         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
10738         * etc/NEWS: Document it.
10740 2015-05-15  Leo Liu  <sdl.web@gmail.com>
10742         Revert "Fix cps--gensym"
10743         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
10744           fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
10746 2015-05-15  Glenn Morris  <rgm@gnu.org>
10748         Replace AC_SUBST_FILE in configure with include in Makefiles.
10749         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
10750         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
10751         (AUTO_DEPEND): New output variable.
10752         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
10753         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
10754         (lwlib_deps_frag): Replace by conditional include.
10755         * lwlib/autodeps.mk: Remove file.
10756         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
10757         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
10758         (oldxmenu_deps_frag): Replace by conditional include.
10759         * oldXMenu/autodeps.mk: Remove file.
10760         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
10761         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
10762         (lisp_frag): Replace by an include.
10763         (deps_frag): Replace by conditional include.
10764         * src/autodeps.mk: Remove file.
10766         Tweak japanese.el's loading of dependencies.
10767         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
10768         * lisp/language/japanese.el: Use require rather than load.
10769         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
10770         Provide a feature.
10771         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
10772         Provide a feature in the generated file.
10774 2015-05-15  Jan D  <jan.h.d@swipnet.se>
10776         Fix NS warnings.
10777         * nsmenu.m (ns_popup_dialog)
10778         * nsimage.m (initFromXBM:width:height:fg:bg:)
10779         * nsfns.m (Fx_create_frame): Remove unused variables.
10780         (Fns_read_file_name): Initialize fname, remove ret.
10781         * nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
10782         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown): Remove unused
10783         variable.
10784         (init): Add parantesis in if.
10785         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
10787 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
10789         Fix a enum conversion warning in macfont.m
10790         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
10791         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
10793 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
10795         Support de-alt dictionary with Aspell.
10796         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
10797         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
10799 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
10801         cus-start.el: Add ns-confirm-quit.
10802         * cus-start.el: Add ns-confirm-quit.
10804         Fix warnings on OSX 10.10.
10805         * nsfns.m (MODAL_OK_RESPONSE): New define for different OSX versions.
10806         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
10807         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
10808         * nsmenu.m (initWithContentRect:styleMask:backing:defer:)
10809         * nsimage.m (allocInitFromFile, setPixmapData): Only call
10810         setScalesWhenResized for OSX < 10.6.
10811         * nsterm.h (EmacsScroller): Declare scrollerWidth.
10812         * nsterm.m (ns_copy_bits): New function that does not use deprecated
10813         NSCopyBits.
10814         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
10815         (runAlertPanel): New function.
10816         (applicationShouldTerminate:): Call runAlertPanel.
10817         (initFrameFromEmacs, toggleFullScreen:): Only call useOptimizedDrawing
10818         for OSX < 10.10.
10819         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
10820         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
10821         (draggingEntered:): Returns NSDragOperation.
10822         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
10824 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
10826         * lisp/emacs-lisp/package.el: Don't ensure-init during startup
10827         (package--init-file-ensured): New variable.
10828         (package-initialize, package--ensure-init-file): Use it.
10830 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
10832         Honor :fore/background for XBM on NS (Bug#14969).
10833         * nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
10834         initFromXBM takes bg, fg args, remove flip arg.
10835         (ns_image_from_XBM): Add bg, fg args.
10836         * image.c (x_create_bitmap_from_data)
10837         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
10838         * nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to initFromXBM.
10839         Remove flip arg.
10840         (initFromSkipXBM): Move code to initFromXBM.
10841         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
10842         Use fg, bg from args (Bug#14969).  Remove if (length) section, was always
10843         false.
10844         Remove bit flipping (bitPat, swt), generated incorrect images when
10845         width/height wasn't a multiple of 8.
10846         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
10847         * nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args, remove
10848         flip arg.
10850 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
10852         * lisp/emacs-lisp/package.el: Be more careful with the init file
10853         (package--ensure-init-file): Check that user-init-file is set,
10854         exists, is readable, and is writable.  (Bug#20584)
10855         Also expand the docstring.
10857 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
10859         Sync with upstream verilog-mode revision 6232468
10860         * lisp/progmodes/verilog-mode.el (verilog-font-lock-grouping-keywords-face)
10861         (verilog-highlight-grouping-keywords): Fix use of face when
10862         `verilog-highlight-grouping-keywords' set.  Reported by Jeff
10863         Pompa.
10864         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
10865         parent is reset, bug906. Reported by Ken Schmidt.
10866         (verilog-auto-inout-module): Add fourth regexp argument to
10867         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match,
10868         bug856. Reported by John Tillema.
10869         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
10870         modport if signal attachment is itself a modport.  Reported by
10871         Matthew Lovell.
10872         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
10873         always_comb and always_latch, bug844.  Reported by Greg Hilton.
10874         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
10875         with many curly-bracket pairs, bug663.
10876         (verilog-set-auto-endcomments): Fix end comments for functions of
10877         type void, etc.  Reported by Alex Reed.
10878         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
10879         caused by indent-line-to deleting tabls pre 24.5.
10880         (verilog-nameable-item-re): Fix nameable items that can have an
10881         end-identifier to include endchecker, endgroup, endprogram,
10882         endproperty, and endsequence.  Reported by Alex Reed.
10883         (verilog-label-be): When auto-commenting a buffer, consider
10884         auto-comments on all known keywords (not just a subset thereof).
10885         Reported by Alex Reed.
10886         (verilog-auto-end-comment-lines-re)
10887         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
10888         Automatically comment property/endproperty blocks to match other
10889         similar blocks like sequence/endsequence, function/endfunction,
10890         etc. Reported by Alex Reed.
10891         (verilog-set-auto-endcomments): Detect the function- or task-name
10892         when auto-commenting blocks that lack an explicit
10893         portlist. Reported by Alex Reed.
10894         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
10895         allow post-AUTO user fixups, bug826. Reported by Dennis
10896         Muhlestein.
10897         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
10898         is nil, fix indenting initial/final to match always statements,
10899         bug825. Reported by Tim Clapp.
10900         (verilog-extended-complete-re): Fix indentation of DPI-C imports
10901         with c_identifiers, and DPI-C imports, bug557. Reported by ZeDong
10902         Mao and Jason Forkey.
10903         (verilog-read-decls): Fix parsing typed interfaces.  Fix
10904         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
10905         Fix localparam not being ignored in AUTOINSTPARAM,
10906         bug889. Reported by Shannon Hill.
10907         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
10908         bug793.  Reported by Pierre-David Pfister.
10909         (verilog-auto-arg-format, verilog-auto-arg-ports): Add
10910         verilog-auto-arg-format to support newlines in AUTOARG. Reported
10911         by Jie Xiao.
10912         (verilog-batch-execute-func): Do not batch re-auto files loaded by
10913         Local Variables. Fix printing "no changes to be saved" with
10914         verilog-batch. Reported by Dan Dever.
10915         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
10916         interface-only modules, bug721.  Reported by Dean Hoyt.
10917         Author: Alex Reed <acreed4@gmail.com>
10918         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement): Don't
10919         treat '<keyword>:<identifier>' as the start of a labeled
10920         statement, bug905.  Reported by Enzo Chi.
10921         (verilog-directive-re, verilog-compiler-directives)
10922         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
10923         directives (plus some extras) when determining indentation, bug
10924         901.  Reported by Bernd Beuster.
10925         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
10926         iff expression doesn't start with word-character, bug900.
10927         (verilog-optional-signed-range-re, verilog-optional-signed-re):
10928         Fix incorrect indentation/alignment of unsigned declarations,
10929         bug897.
10930         (verilog-looking-back, verilog-in-attribute-p): Fix labling of
10931         always constructs, bug895.
10932         (verilog-calc-1): Fix verilog-mode constraint indentation,
10933         bug324. Reported by Eric Mastromarchi.
10934         (verilog-beg-of-statement): Fix indenting for some forms of
10935         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
10936         continued assignment incorrect if first line ends with ']',
10937         bug437. Reported by Dan Dever.  Fix indention of cover inside an
10938         ifdef, bug 862. Reported by Bernd Beuster Fix labeling do-while
10939         blocks, bug842.
10940         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning,
10941         bug859. Reported by Kaushal Modi.
10942         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
10943         (verilog-backward-token): Fix indenting sensitivity lists with
10944         named events, bug840.  Reed.
10945         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
10946         nil not honoring 'forever', 'foreach', and 'do' keywords.
10948 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
10950         Check for invalid GTK+ monitor scales
10951         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
10952         INT_MAX for too-large scales.  All callers changed to assume the
10953         result is valid (Bug#20432).
10954         (xg_frame_set_char_size, xg_update_scrollbar_pos):
10955         Calculate scale only if needed.
10956         show ASCII approximations instead.
10958 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
10960         Fix daemon crashes when linum-mode is turned on early on
10961         * src/window.c (Fwindow_end): Don't try calling display engine
10962         functions on initial-frame frame.  (Bug#20565)
10964         Fix selective diff browsing in Ediff
10965         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches): Go to the
10966         beginning of the region before searching for the
10967         ediff-regexp-focus-* regexps.  (Bug#20568)
10969 2015-05-14  Jan D  <jan.h.d@swipnet.se>
10971         Fixes Bug#20142.
10972         * gtkutil.c (delete_cb): Don't send delete event here, it does arrive
10973         in the main loop, even for Gtk 3 (Bug#20142).
10975         Don't access display after i/o error (Bug#19147).
10976         * xterm.c (x_connection_closed): Add third arg ioerror.
10977         If ioerror, set display to 0 (Bug#19147).
10978         (x_error_quitter): Call x_connection_closed with third arg false.
10979         (x_io_error_quitter): Call x_connection_closed with third arg true.
10981         Handle GTK_SCALE, fixes Bug#20432.
10982         * gtkutil.c (xg_get_gdk_scale): New function.
10983         (xg_frame_set_char_size)
10984         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
10985         (xg_get_default_scrollbar_height)
10986         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
10987         when setting sizes (Bug#20432).
10989 2015-05-13  Leo Liu  <sdl.web@gmail.com>
10991         Fix cps--gensym
10992         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
10994 2015-05-13  Glenn Morris  <rgm@gnu.org>
10996         Fix bootstrap (void function cl-member).
10997         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
10998         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
11000 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
11002         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
11003         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
11004         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
11005         Avoid defalias for closures which are not immutable.
11006         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill the
11007         dispatchers table with various entries.
11008         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
11009         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
11011 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
11013         Improve tagging of C bindings in DEFVAR_*
11014         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
11015         from DEFVAR_*.
11017 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11019         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
11021 2015-05-12  Glenn Morris  <rgm@gnu.org>
11023         * lisp/progmodes/tcl.el (tcl-filter):
11024         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
11026         Add basic VC push support.
11027         * lisp/vc/vc.el (vc-push): New autoloaded command.
11028         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
11029         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
11030         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
11031         (vc-bzr-push): New.
11032         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
11033         (vc-git-pull): Reimplement using vc-git--pushpull.
11034         (vc-git-push): New.
11035         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
11036         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
11037         * doc/emacs/maintaining.texi (Pulling / Pushing):
11038         Rename from "VC Pull".  Mention pushing.
11039         (VC With A Merging VCS, VC Change Log): Update xrefs.
11040         (Branches): Update menu.
11041         * doc/emacs/emacs.texi: Update menu.
11042         * etc/NEWS: Mention this.
11044 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
11046         Improve the seq pcase pattern and the `seq-let' macro
11047         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
11048         object is a sequence, and binds each element of ARGS to the
11049         corresponding element of the sequence.
11051 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
11053         Fix tags created from DEFVAR_* declarations in C
11054         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
11055         to make tags extracted from DEFVAR_* declarations more accurate.
11057         Add a test suite for etags
11058         * test/etags/: New test suite, adapted from
11059         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
11060         whose original author is Francesco Potortì <pot@gnu.org>.
11062         Fix tagging of symbols in C enumerations
11063         * lib-src/etags.c (consider_token): Don't tag symbols in
11064         expressions that assign values to enum constants.  See
11065         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
11066         for details.
11067         (C_entries): Reset fvdef to fvnone after processing a preprocessor
11068         conditional and after a comma outside of parentheses.
11070 2015-05-12  Glenn Morris  <rgm@gnu.org>
11072         * lisp/url/url-handlers.el (url-file-name-completion)
11073         (url-file-name-all-completions): Silence compiler.
11075         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
11077         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
11079 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
11081         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
11082         (cl--generic-mandatory-args): Remove.
11083         (cl--generic-split-args): New function.
11084         (cl-generic-define, cl--generic-lambda): Use it.
11085         (cl-generic-define-method): Use it as well, and add support for
11086         context args.
11087         (cl--generic-get-dispatcher): Handle &context dispatch.
11088         (cl--generic-cache-miss): `dispatch-arg' can now be a context expression.
11089         (cl--generic-dispatchers): Pre-fill.
11090         * test/automated/cl-generic-tests.el (sm-generic-test-12-context): New test.
11092 2015-05-11  Glenn Morris  <rgm@gnu.org>
11094         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
11096 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
11098         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
11099         * lisp/term/rxvt.el: Require term/xterm.
11100         (rxvt-function-map): Use xterm-rxvt-function-map.
11101         (rxvt-standard-colors): Move before first use.
11102         (terminal-init-rxvt): Use xterm--push-map and xterm-register-default-colors.
11103         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
11104         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
11105         Move shared bindings between rxvt and xterm to it.
11106         (xterm-function-map): Use it.  Move the xterm-paste binding to
11107         xterm-rxvt-function-map (bug#20444).
11108         (xterm-standard-colors): Move before first use.
11109         (xterm--push-map): New function.
11110         (xterm-register-default-colors): Take standard colors as argument.
11111         (terminal-init-xterm): Use it.  Adjust call to
11112         xterm-register-default-colors.
11114 2015-05-11  Glenn Morris  <rgm@gnu.org>
11116         * lisp/term/x-win.el: Quieten --without-x compilation.
11117         (x-own-selection-internal, x-disown-selection-internal)
11118         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
11119         Declare.
11121         * Makefile.in (emacslog): Remove srcdir.
11122         (ChangeLog): Update for the above.
11124 2015-05-11  Paul Eggert  <eggert@cs.ucla.edu>
11126         Spelling fix
11128 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
11130         python.el: better limit for looking-back calls
11131         * lisp/progmodes/python.el (python-shell-accept-process-output):
11132         Use last comint prompt start as limit for looking-back.
11134 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11136         CEDET (srecode-insert-fcn): Fix use of oref on a class
11137         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref on
11138         a class.  Reported by Pierre Lorenzon.
11139         (srecode-template-inserter-point): Remove declaration.
11141         CEDET (srecode-create-dictionary): Avoid obsolete object name
11142         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
11143         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
11145 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
11147         C-x 8 shorthands for curved quotes, Euro, etc.
11148         Although C-x 8 lets you insert arbitrary Unicode characters,
11149         it's awkward to use this to insert commonly used symbols such as curved
11150         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
11151         characters commonly found in English text and in basic math.
11152         For example, assuming the Alt key works on your keyboard and iso-transl
11153         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
11154         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
11155         (Bug#20499)
11156         * doc/emacs/mule.texi (Unibyte Mode):
11157         A few other printing characters now work too.
11158         * etc/NEWS: Document this.
11159         * lisp/international/iso-transl.el (iso-transl-char-map):
11160         Also support the following characters:
11161         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
11163 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
11165         Add xref-find-regexp
11166         * lisp/progmodes/xref.el (xref-find-function): Describe the
11167         `matches' action.
11168         (xref-find-regexp): New command, using it.
11169         (xref-collect-references): Rename to xref-collect-matches.
11170         (xref--collect-reference): Rename to xref--collect-match.
11171         (xref-collect-matches, xref--collect-match): Accept new argument,
11172         KIND.  Update accordingly.
11173         (xref--regexp-to-extended): New function.
11174         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
11175         `matches' action.
11176         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
11177         * lisp/progmodes/etags.el (etags-xref-find):
11178         Support the `matches' action.
11179         (etags--xref-find-matches): New function.
11181 2015-05-10  Glenn Morris  <rgm@gnu.org>
11183         * Makefile.in: Fixes for recent change-history changes.
11184         (change-history-nocommit): Update footer regexp.
11185         Ensure output script stays executable.
11187 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
11189         New version of `seq-let' based on a pcase pattern
11190         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
11191         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
11193 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
11195         Add basic HTML5 tags and a template
11196         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
11197         (html-tag-alist): Add HTML5 tags.
11198         (html-tag-help): Add new tags descriptions.
11199         (html-navigational-links): Template for nav links.
11200         (html-html5-template): Template for a HTML5 page.
11202 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
11204         semantic/symref/grep: Don't use word boundaries
11205         * lisp/cedet/semantic/symref/grep.el
11206         (semantic-symref-perform-search): Instead of wrapping input in
11207         word boundaries, check that the characters before and after are
11208         not word constituents.
11210         semantic/symref/grep: Support regexp search
11211         * lisp/cedet/semantic/symref.el
11212         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
11213         the search type is regexp.
11214         * lisp/cedet/semantic/symref/grep.el
11215         (semantic-symref-perform-search): Support the regexp search type.
11216         Pass -E to Grep when it's used.
11218         semantic-symref-regexp: Allow to input an arbitrary string
11219         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
11220         Allow to input an arbitrary string interactively.
11222         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
11223         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
11224         Remove tag-symbol-match-p from the default value
11225         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
11227         Declare find-tag obsolete
11228         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
11229         xref-find-definitions.
11231 2015-05-10  Jan D  <jan.h.d@swipnet.se>
11233         Draw composite string correctly (Bug#20537).
11234         * nsterm.m (ns_draw_composite_glyph_string_foreground): New function.
11235         (ns_draw_glyph_string): Call it (Bug#20537).
11237 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
11239         Avoid infloop in ERC
11240         * lisp/simple.el (line-move-to-column): Ignore field boundaries
11241         while computing line beginning position.  (Bug#20498)
11243 2015-05-08  Glenn Morris  <rgm@gnu.org>
11245         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
11246         * build-aux/gitlog-to-emacslog: Check called from right directory.
11247         (srcprefix): Remove.
11249         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
11250         * Makefile.in (ChangeLog): No longer pass "distprefix".
11251         * make-dist: Update "make ChangeLog" syntax for the above change.
11253         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
11254         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
11256         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
11258         Add command-line option-parsing to gitlog-to-emacslog.
11259         * build-aux/gitlog-to-emacslog: Add command-line options.
11260         By default, refuse to remove an existing output file.
11261         * Makefile.in (CHANGELOG): Update default.
11262         (ChangeLog): Do not test for existing file.
11263         (change-history-nocommit): Ensure temp file does not exist.
11265         Quieten --without-x compilation.
11266         * lisp/term/common-win.el: Provide a feature.
11267         * lisp/term/x-win.el (term/common-win): Require it.
11269         * lisp/dired-aux.el (dired-do-print): Require lpr.
11271         Quieten compilation, eg in --without-x builds.
11272         * lisp/dired-aux.el (lpr-printer-switch):
11273         * lisp/frame.el (tool-bar-height):
11274         * lisp/linum.el (font-info):
11275         * lisp/window.el (font-info, overflow-newline-into-fringe)
11276         (tool-bar-height):
11277         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
11278         * lisp/gnus/gnus-util.el (iswitchb-mode):
11279         * lisp/mail/rmailmm.el (libxml-parse-html-region):
11280         * lisp/net/nsm.el (gnutls-peer-status)
11281         (gnutls-peer-status-warning-describe):
11282         * lisp/net/shr.el (libxml-parse-xml-region):
11283         * lisp/url/url-http.el (gnutls-peer-status): Declare.
11285 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
11287         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
11288         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
11289         `subclass' since they're never called with a class.
11290         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
11291         srecode-dictionary-child-p.
11293 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
11295         help--binding-locus: Document argument POSITION.
11296         * lisp/help.el (help--binding-locus): Document argument POSITION. (bug#20530)
11298 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
11300         Merge from gnulib.
11301         * doc/misc/texinfo.tex: Get latest version.
11303 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
11305         ffap.el (ffap-read-file-or-url): Fix completing-read call
11306         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
11307           `completing-read' should be a symbol.
11309 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
11311         Verify file modifications by other programs
11312         * src/filelock.c (lock_file): Check whether the file was modified
11313         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
11315         Fix keyboard macros that include function keys
11316         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
11317         keys in the macro before returning.  (Bug#20454)
11319 2015-05-08  Glenn Morris  <rgm@gnu.org>
11321         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
11322         "Copyright-paperwork-exempt".  (Bug#20324)
11324         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
11325         (log-edit-rewrite-tiny-change): New variable.
11326         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
11327         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
11328         * etc/NEWS: Mention this.
11330         * lisp/calc/calc.el (math-zerop): Declare.
11332         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
11334 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
11336         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec
11337         Support the case when BINDINGS is a single tuple.  (Bug#20525)
11339         * etc/NEWS: Fix typo in commit 14bb519
11341 2015-05-07  Jan D  <jan.h.d@swipnet.se>
11343         Warn for multiple display crash for all Gtk+ versions.
11344         * configure.ac: Warn for multiple display crash for all Gtk+
11345         versions.  Output URL to Gtk+ bug (Bug#20452).
11347         ns-win.el (ns-paste-secondary): Use gui-get-selection.
11348         * ns-win.el (ns-paste-secondary): Use gui-get-selection.
11350 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
11352         * lisp/emacs-lisp/package.el: New "external" package status
11353         An external package is any installed package that's not built-in
11354         and not from `package-user-dir', which usually means it's from an
11355         entry in `package-directory-list'.  They are treated much like
11356         built-in packages, in that they cannot be through the Package Menu
11357         deleted and are not considered for upgrades.
11358         (package-desc-status): Identify if a package is installed outside
11359         `package-user-dir'.
11360         (package-menu--print-info-simple)
11361         (package-menu--status-predicate): Add support for it.
11362         * etc/NEWS: Document it.
11364 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
11366         * lisp/mail/rmail.el: Use lexical-binding
11367         (rmail-bury): Remove unused var `buffer-to-bury'.
11368         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
11369         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
11370         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
11371         (rmail-insert-inbox-text): Remove unused var `movemail'.
11372         (rmail-add-mbox-headers): Remove unused var `limit'.
11373         (rmail-undelete-previous-message): Remove unused var `value'.
11374         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
11375         `resent-reply-to'.
11376         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
11377         (rmail-restore-desktop-buffer): Rename arguments.
11379 2015-05-06  Glenn Morris  <rgm@gnu.org>
11381         * Makefile.in (change-history-commit): Add missing piece of previous.
11383         Avoid unnecessary bumping of Makefile.in's timestamp.
11384         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
11385         (emacslog): New variable.
11386         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
11387         (unchanged-history-files): Use $emacslog rather than Makefile.in.
11388         (change-history-nocommit): Store hash in $emacslog.
11389         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
11390         * admin/update_autogen (changelog_files): Update for the above.
11392         * Makefile.in: Don't always insist on removing existing "ChangeLog".
11393         (CHANGELOG): New variable.
11394         (no-ChangeLog): Remove.
11395         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
11396         (change-history-nocommit): Use a temp file rather than insisting
11397         on deletion of any existing "ChangeLog".
11399         * build-aux/gitlog-to-emacslog: Allow specification of output.
11401         * admin/update_autogen: Add option to update ChangeLog.
11402         (usage): Mention -H.
11403         (changelog_flag, changelog_n, changelog_files): New variables.
11404         (main): Check for -H, and maybe run change-history-nocommit.
11406 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
11408         * lisp/subr.el (delete-dups): Pre-size the hashtable.
11410         (define-modify-macro): Make sure cl--arglist-args is defined
11411         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
11412         cl--arglist-args is defined (bug#20517).
11414 2015-05-06  Glenn Morris  <rgm@gnu.org>
11416         * Makefile.in (change-history-nocommit): New.
11418 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
11420         Only cancel timer when it is non-nil
11421         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
11422         timer when it is non-nil
11423         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
11425 2015-05-06  Glenn Morris  <rgm@gnu.org>
11427         Quieten cedet compilation
11428         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
11429         Invert fboundp test to quieten on current Emacs.
11430         * lisp/cedet/ede/config.el (ede-shell-run-something)
11431         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
11432         (semanticdb-refresh-table): Declare.
11433         (ede-preprocessor-map): Require semantic/db.
11435         Quieten cc-mode compilation
11436         * lisp/progmodes/cc-awk.el (c-forward-sws):
11437         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
11438         Declare.
11440 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
11442         lisp/subr.el (delete-dups): Avoid nreverse.
11444 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
11446         * lisp/subr.el (delete-dups): Make it destructive again.
11448 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
11450         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
11452 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
11454         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487)
11455         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
11456         (testcover--read): Rename from testcover-read.  Change calling convention.
11457         Use edebug-read-and-maybe-wrap-form now that edebug-read is gone.
11458         (testcover-start): Use add-function.  Move edebug-all-defs binding to
11459         testcover--read.
11460         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
11461         (testcover-mark): Remove unused var `item'.
11462         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
11464 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
11466         lisp/subr.el (delete-dups): Use a hash table
11467         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
11468           use a hash table. This can result in ~500 times speed-up for typical
11469           collections of size 5000, like that of `load-library'.
11471 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
11473         CEDET: Avoid `oref' on classes in a few more cases
11474         * lisp/cedet/ede/generic.el (ede-find-target):
11475         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
11476         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
11477         var `prefix'.
11479         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings
11480         * lisp/cedet/semantic/symref/grep.el (grepflags, greppattern): Declare.
11481         (semantic-symref-perform-search): Remove unused var `pat'.
11483         CEDET (srecode-compile-inserter): Avoid `oref' on classes
11484         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
11485         Avoid `oref' on classes (bug#20491).
11486         (srecode-compile-split-code): Remove unused var `key'.
11488 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
11490         Clean up pulse.el a little
11491         * lisp/cedet/pulse.el (pulse): Remove.
11492         (pulse-momentary-timer): Save instead of the stop time.
11493         (pulse-momentary-highlight-overlay): Call
11494         pulse-momentary-unhighlight first thing. Treat
11495         pulse-momentary-overlay as a single value, not a list. Save the
11496         created timer. Only pass the stop time to the timer.
11497         (pulse-tick): Update accordingly.
11498         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
11499         single value. Cancel the timer.
11501 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
11503         Support the biblatex journaltitle field
11504         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
11505         Support the biblatex journaltitle field.
11507 2015-05-05  Glenn Morris  <rgm@gnu.org>
11509         Minor declare-function improvement
11510         * lisp/emacs-lisp/bytecomp.el
11511         (byte-compile-macroexpand-declare-function):
11512         Handle declarations after calls.  (Bug#20509)
11514         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
11516         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
11518 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
11520         Pulse using a timer
11521         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
11522         (pulse-momentary-highlight-overlay): Set up the timer instead of
11523         calling `pulse'
11524         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
11525         (pulse-tick): New function.
11526         (pulse-momentary-unhighlight): Cut off the stop time.
11527         (pulse-delay): Update the docstring WRT to not using sit-for.
11529         Add semantic/symref/grep file patterns for ruby-mode
11530         * lisp/cedet/semantic/symref/grep.el
11531         (semantic-symref-filepattern-alist): Add patterns for
11532         ruby-mode. Clarify the docstring.
11534         Don't require match
11535         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
11536         match. That doesn't work for every command, and some identifier
11537         completion tables are bound to be imperfect anyway.
11539 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
11541         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505)
11542         (semantic-grammar--template-expand): New function.
11543         (semantic-grammar-header, semantic-grammar-footer): Use it.
11544         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
11545         (semantic-grammar-file-regexp): Refine regexp.
11546         (semantic-grammar-eldoc-get-macro-docstring):
11547         Use elisp-get-fnsym-args-string when available.
11548         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
11549         instead of the old eldoc-* names.
11550         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
11551         from elisp-mode.el.  Tweak calling convention.
11552         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
11553         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
11554         elisp--get-fnsym-args-string.
11555         (elisp--highlight-function-argument): Add `prefix' arg.
11556         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
11557         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
11559 2015-05-05  Glenn Morris  <rgm@gnu.org>
11561         * lisp/help-fns.el (describe-function-1):
11562         Handle builtins with advertised calling conventions.  (Bug#20479)
11564 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
11566         Merge branch 'seq-let'
11568         Update `seq-let' documentation
11569         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
11570         with the support of  `&rest'.
11572         Add support for &rest in `seq-let'
11573         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
11574         in the argument list.
11575         * test/automated/seq-tests.el: Add a test for parsing and binding
11576         `&rest' in `seq-let'.
11578 2015-05-05  Paul Eggert  <eggert@cs.ucla.edu>
11580         Spelling fixes
11582 2015-05-05  (tiny change) Pierre Lorenzon  <devel@pollock-nageoire.net>
11584         * eieio-custom.el (eieio-object-value-get): Add missing increment
11585         (Bug#20467)
11587         (eieio-object-value-create): Adjust to new slots representation
11588         (Bug#20467)
11589         * eieio-custom.el (eieio-object-value-create):
11590         Fix missed adjustment to new representation of slots metadata.
11592 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
11594         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
11596 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
11598         Work around "Attempt to modify read-only object"
11599         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
11600         elisp--xref-find-definitions, to work around "Attempt to modify
11601         read-only object" error.
11603         Only skip some variables that have function counterparts
11604         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
11605         Only skip minor-mode-named variable if it's defined in a Lisp
11606         file, and it's in minor-mode-list (bug#20506).
11607         * test/automated/elisp-mode-tests.el
11608         (elisp-xref-finds-both-function-and-variable)
11609         (elisp-xref-finds-only-function-for-minor-mode): New tests.
11611 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
11613         Buttonize the whole line, including the number at the beginning
11614         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
11615         previous change.
11616         (xref--insert-xrefs): Buttonize the whole line, including the
11617         number at the beginning.
11619         Make sure we're inside the let bindings
11620         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
11621         Make sure we're inside the let bindings.
11622         * test/automated/elisp-mode-tests.el
11623         (elisp-completes-functions-after-let-bindings): New test.
11625 2015-05-04  Glenn Morris  <rgm@gnu.org>
11627         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
11628         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
11629         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
11630         Remove outdated declarations.
11632         Replace instances of "(eval-when-compile (autoload ...))"
11633         * lisp/gnus/gnus-art.el (nneething-get-file-name):
11634         Declare rather than autoload.
11635         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
11636         Remove pointless autoload.
11637         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
11638         (gnus-topic-create-topic, gnus-topic-enter-dribble):
11639         Declare rather than autoload.
11640         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
11641         (mailcap-extension-to-mime): Autoload at run-time.
11642         * lisp/gnus/mm-util.el (latin-unity-massage-name)
11643         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
11644         (latin-unity-representations-present-region):
11645         Declare rather than autoload.
11646         * lisp/gnus/mml-smime.el (epg-make-context)
11647         (epg-passphrase-callback-function): Autoload at run-time.
11648         (epg-context-set-signers, epg-context-result-for)
11649         (epg-new-signature-digest-algorithm)
11650         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
11651         (epg-sign-string, epg-encrypt-string)
11652         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
11653         (epg-configuration, epg-expand-group, epa-select-keys):
11654         Declare rather than autoload.
11655         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
11656         Autoload at run-time.
11657         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
11658         (gnus-registry-get-id-key, gnus-registry-action):
11659         Declare rather than autoload.
11660         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
11661         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
11662         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
11663         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
11664         (spam-stat-split-fancy): Remove pointless autoloads.
11665         * lisp/net/mairix.el: Load gnus-util when compiling.
11666         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
11667         (message-field-value): Declare rather than autoload.
11668         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
11669         Check gnus-alive-p is fbound.
11670         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
11671         (vm-check-for-killed-summary, vm-error-if-folder-empty)
11672         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
11673         Declare rather than autoload.
11675         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
11677         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
11678         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
11680         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
11682         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
11684         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
11685         * lisp/emacs-lisp/package.el (epg-signature-status):
11686         Fix declarations.
11688         * lisp/play/gametree.el (gametree-show-children-and-entry)
11689         (gametree-apply-layout, gametree-mouse-show-subtree)
11690         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
11692         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
11693         Handle cl-defgeneric, cl-defmethod.
11695 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
11697         Highlight both type and symbol name
11698         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
11699         Highlight both type and symbol name.
11701         Insert, highlight and align line numbers in xref output
11702         * lisp/progmodes/etags.el (xref-location-line): Specialize for
11703         xref-etags-location.
11704         * lisp/progmodes/xref.el (xref-location-line): New generic method.
11705         (xref-file-location): Add reader for the line slot.
11706         (xref--location-at-point): Skip to the `xref-location' property.
11707         (xref--collect-reference): Drop the line number from description.
11708         (xref--insert-xrefs): Insert, highlight and align line numbers.
11710 2015-05-04  Daniel Colascione  <dancol@dancol.org>
11712         Fix previous commit
11714 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
11716         Don't pulse the indentation, or the newline
11717         * lisp/cedet/pulse.el (pulse-lighten-highlight)
11718         (pulse-reset-face): Fall back to the inherited background
11719         attribute in FACE.
11720         (pulse-momentary-highlight-region): Add autoload cookie.
11721         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
11722         indentation, or the newline, if the line's non-empty
11723         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
11725 2015-05-04  Daniel Colascione  <dancol@dancol.org>
11727         Add `save-mark-and-excursion', which has the old `save-excursion' behavior
11728         * doc/lispref/positions.texi (Excursions): Document
11729         `save-mark-and-excursion'.
11730         * lisp/font-lock.el (font-lock-fontify-block): Use
11731         `save-mark-and-excursion' instead of `save-excursion', restoring
11732         Emacs 24 behavior.
11733         * lisp/simple.el (save-mark-and-excursion--save)
11734         (save-mark-and-excursion--restore): New functions.
11735         (save-mark-and-excursion): New user macro.
11736         * src/editfns.c (Fsave_excursion): Mention
11737         `save-mark-and-excursion' in `save-excursion' documentation.
11739 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
11741         Classify lone symbol inside let varlist as variable
11742         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
11743         Classify lone symbol inside let varlist as variable.
11744         * test/automated/elisp-mode-tests.el (completest-variables-in-let-bindings):
11745         New test.
11747         Add xref-pulse-on-jump
11748         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
11749         Add autoload cookie.
11750         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
11751         (xref--maybe-pulse): New function.
11752         (xref-pop-marker-stack, xref--pop-to-location)
11753         (xref--display-position): Use it.
11754         (xref--location-at-point): Use back-to-indentation.
11756 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
11758         * lisp/org/org-{macs,list}.el: Fix lexical warnings
11759         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
11760         (org-list-get-next-item, org-list-get-prev-item)
11761         (org-list-get-children): Mark unused arg `struct'.
11762         (org-list-use-alpha-bul-p): Remove unused var `bul'.
11763         (org-toggle-checkbox): Mark unused var.
11764         (org-update-checkbox-count): Remove unused var `box-num'.
11765         (org-adapt-indentation): Declare.
11766         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
11767         (org-list-send-list): Remove unused var `txt'.
11768         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
11769         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
11770         * lisp/org/org-macs.el: Use `declare'.
11771         (org-with-limited-levels): Declare dyn-bound vars.
11773 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
11775         Fix minor issues with CEDET on MS-Windows
11776         * lisp/cedet/semantic/symref/idutils.el
11777         (semantic-symref-parse-tool-output-one-line): Fix the search
11778         regexp to match MS-Windows file names with drive letters.
11779         (Bug#19468)
11780         * lisp/cedet/semantic/symref/grep.el
11781         (semantic-symref-grep-use-template): Remove "--color=always" from
11782         Grep switches on MS-Windows.
11783         (semantic-symref-grep-shell): Use shell-file-name as the default
11784         value, so this works not only on Posix platforms.
11785         (semantic-symref-perform-search): Use shell-quote-argument instead
11786         of literal '..' for portable quoting of Grep command-line
11787         argument.  Use shell-command-switch instead of a literal "-c".
11788         * lisp/cedet/semantic/bovine/gcc.el
11789         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
11790         for an absolute file name in a portable way.
11792 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
11794         * lisp/emacs-lisp/package.el: Remove `package--silence' variable
11795         (package-import-keyring, package-refresh-contents)
11796         (package-compute-transaction, package--save-selected-packages)
11797         (package-install-from-archive, package-delete)
11798         (package-menu--perform-transaction): Use `inhibit-message'
11799         instead.
11800         (package--compile): Set `warning-minimum-level' to :error.
11802 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
11804         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom
11805         (terminal-init-screen): Use it (bug#20356).
11806         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
11807         (xterm--extra-capabilities-type): New const.
11808         (xterm-extra-capabilities): Use it.
11809         (xterm--version-handler): Lower the pseudo-version for `screen'.
11811 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
11813         xref--insert-xrefs: Tweak the faces
11814         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
11815         Always insert a newline at the end (to avoid mouse-face background
11816         tail at the last line).
11818         elisp-completion-at-point: Prioritize being quoted over funpos
11819         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
11820         Only consider function position when not inside quoted form
11821         (bug#20425).
11822         * test/automated/elisp-mode-tests.el: New file.
11824         Stop vc-print-log from jumping to the top
11825         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
11826         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
11827         is not specified.
11828         (vc-incoming-outgoing-internal): Always pass nil.
11829         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
11830         call it, and don't set vc-sentinel-movepoint (bug#15322).
11831         (vc-print-root-log): Don't fetch the root working revision, nor
11832         pass it to vc-print-log-internal.
11834 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
11836         Fix display of keyboard layouts for right-to-left scripts
11837         * lisp/international/quail.el (quail-insert-kbd-layout): Force
11838         left-to-right paragraph direction.
11840 2015-05-02  K. Handa  <handa@gnu.org>
11842         * cmds.c (internal_self_insert): When we insert spaces for
11843         padding, set point before the padding spaces, not after them.
11845 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
11847         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
11849 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
11851         Fix etags-xref-find for references
11852         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): Use `cl-mapcan'.
11853         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
11854         directory if no tags tables are loaded (bug#19468).
11856 2015-05-02  Philipp Stephani  <phst@google.com>
11858         Update the options in whitespace-style defcustom
11859         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
11860         `repeat' because the option is really set-like.  Add missing
11861         options.  Reorder options to match the order in the
11862         documentation.  (Bug#20346)
11864 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
11866         Fix error diagnostics of c-macro-expand
11867         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
11868         too early if no start-marker string was found -- that generally
11869         means cpp exited abnormally, and we still want to show its error
11870         messages to the user.
11872         Don't require Texinfo 5.0 for Emacs documentation
11873         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
11874         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
11875         "@codequoteundirected on", respectively, to avoid requiring
11876         Texinfo 5.x for Emacs documentation.
11878 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
11880         * lisp/files.el (pwd):
11881         When called with a prefix argument, insert the current default
11882         directory at point.
11884 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
11886         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
11887         * lisp/isearch.el (isearch-mode-map): Don't inhibit
11888         function-key-map remapping for backspace (bug#20466).
11890 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
11892         Implement xref-find-references in etags and elisp-mode
11893         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
11894         (elisp-xref-find): Use it.
11895         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
11896         * lisp/progmodes/xref.el (xref-collect-references):
11897         (xref--collect-reference): New functions.
11899 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
11901         Prefer plain characters to Texinfo circumlocutions
11902         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
11903         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
11905         Fix single-quoting style in PDF manuals
11906         The PDF versions of the GNU manuals used curved single quotes to
11907         represent grave accent and apostrophe, which made it a pain to cut
11908         and paste code examples from them.  Fix the PDF versions to use
11909         grave accent and apostrophe for Lisp source code, keystrokes, etc.
11910         This change does not affect the info files, nor does it affect
11911         ordinary uses of curved single quotes in PDF.
11912         * doc/emacs/docstyle.texi: New file, which specifies treatment for
11913         grave accent and apostrophe, as well as the document encoding.
11914         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
11915         * doc/lispintro/emacs-lisp-intro.texi:
11916         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
11917         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
11918         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
11919         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
11920         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
11921         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
11922         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
11923         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
11924         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
11925         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
11926         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
11927         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
11928         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
11929         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
11930         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
11931         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
11932         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
11933         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
11934         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
11935         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
11936         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
11937         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
11938         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
11939         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
11940         * doc/misc/woman.texi:
11941         Use it instead of '@documentencoding UTF-8', to lessen the need for
11942         global changes like this in the future.
11943         * doc/emacs/Makefile.in (EMACS_XTRA):
11944         * doc/lispintro/Makefile.in (srcs):
11945         * doc/lispref/Makefile.in (srcs):
11946         Add dependency on docstyle.texi.
11947         * doc/misc/Makefile.in (style): New macro.
11948         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
11949         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
11950         Use it.
11952 2015-05-01  Glenn Morris  <rgm@gnu.org>
11954         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
11956         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
11957         (help-fns--signature): Declare.
11959         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
11961 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
11963         New macro seq-let, providing destructuring support to seq.el
11964         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
11965         to `cl-destructuring-bind' but works on all sequence types supported
11966         by `seq.el'.  Bump version number to 1.6.
11967         * test/automated/seq-tests.el: Add tests for seq-let.
11968         * doc/lispref/sequences.texi: Add documentation for seq-let.
11970 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
11972         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer
11974 2015-05-01  Glenn Morris  <rgm@gnu.org>
11976         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
11978 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
11980         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
11981         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
11982         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
11983         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
11984         (Bug#20445).
11986 2015-05-01  K. Handa  <handa@gnu.org>
11988         * mule-cmds.el (input-method-use-echo-area): Change :type to
11989         'boolean.
11991 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11993         Start using proportional fonts in eww by default
11994         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
11995         it seems to work well.
11997         Fix links in tables in shr
11998         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
11999         makes (some) links in tables not work.
12001 2015-05-01  Jan D  <jan.h.d@swipnet.se>
12003         (ns-get-cut-buffer-internal): Remove this alias.
12004         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
12006 2015-04-30  Glenn Morris  <rgm@gnu.org>
12008         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
12009         Update for 2015-02-08 change to indirect-function.
12011         * lisp/term/ns-win.el (ns-get-selection-internal):
12012         Remove declaration for function deleted 2014-10-21.
12014         * lisp/dom.el: Load subr-x when compiling, for when-let.
12016         Silence some compilation warnings
12017         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
12018         * lisp/emulation/cua-base.el (delete-active-region):
12019         * lisp/net/net-utils.el (w32-get-console-output-codepage):
12020         * lisp/term/ns-win.el (ns-own-selection-internal)
12021         (ns-disown-selection-internal, ns-selection-owner-p)
12022         (ns-selection-exists-p, ns-get-selection):
12023         Declare for compiler..
12025         Function declaration updates prompted by 'make check-declare'
12026         * lisp/emacs-lisp/package.el (lm-homepage):
12027         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
12028         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
12029         * lisp/gnus/mml.el (libxml-parse-html-region):
12030         * lisp/gnus/nnrss.el (libxml-parse-html-region):
12031         * lisp/net/eww.el (libxml-parse-html-region):
12032         * lisp/net/shr.el (libxml-parse-html-region):
12033         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
12034         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
12035         * lisp/vc/vc-git.el (vc-annotate-convert-time):
12036         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
12037         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
12038         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
12039         Update declaration.
12041         Remove compatibility code for 20-year old function renaming
12042         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
12043         Make it an obsolete alias.
12044         (idlwave-shell-filter): Change all uses to comint-output-filter.
12046 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
12048         Add ace-window face config
12049         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
12050         configuration.
12052 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
12054         Unclutter 'make doc' output a bit
12055         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
12056         Use make subst rather than sh IFS to split target string apart.
12057         This makes 'make' output easier to follow.
12059         Merge from gnulib
12060         * doc/misc/texinfo.tex: Update from gnulib.
12062 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12064         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh
12065         (package-menu--print-info): Obsolete.
12066         (package-menu--print-info-simple): New function.
12067         (package-menu--refresh): Use it, simplify code, and improve
12068         performance.
12069         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
12070         Tiny performance improvement.
12072         * lisp/emacs-lisp/package.el (package--message): inhibit-message
12074 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
12076         Omit -Wstrict-overflow workaround in GCC 5
12077         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
12078         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
12080         Merge from gnulib
12081         This incorporates:
12082         2015-04-29 extern-inline: no need for workaround in GCC 5.1
12083         2015-04-26 file-has-acl: port to CentOS 6
12084         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
12086 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
12088         Set next-error-* in xref--xref-buffer-mode
12089         * xref.el (xref--xref-buffer-mode): Set `next-error-function' and
12090         `next-error-last-buffer'.
12091         (xref--next-error-function): New function.
12092         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
12094 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
12096         python.el: Fix warnings on looking-back calls missing LIMIT
12097         * lisp/progmodes/python.el (python-shell-accept-process-output):
12098         Pass LIMIT arg to looking-back.
12100 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12102         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress
12103         (package--download-and-read-archives): Use pushnew instead of
12104         append.  If something terrible happened during a previous
12105         download, simply refreshing should now make things work again.
12107 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
12109         Introduce etags-xref-find-definitions-tag-order
12110         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
12111         New variable.
12112         (etags--xref-find-definitions): Use it (bug#19468).
12114 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
12116         PATH- and completion-related fixes in Eshell on MS-Windows
12117         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
12118         MS-Windows, prepend "." to list of directories produced from PATH,
12119         as Windows always implicitly searches the current directory first.
12120         (eshell-force-execution): Make it have a non-nil default value on
12121         MS-Windows and MS-DOS.
12122         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
12123         eshell-force-execution is non-nil, complete on readable files and
12124         directories, not only executables.  When running on MS-Windows,
12125         prepend "." to list of directories produced from PATH, as Windows
12126         always implicitly searches the current directory first.
12128 2015-04-29  Sam Steingold  <sds@gnu.org>
12130         bury RCIRC buffers when there is no activity
12131         lisp/net/rcirc.el (rcirc-non-irc-buffer): remove
12132         (rcirc-bury-buffers): new function
12133         (rcirc-next-active-buffer): when there is no new activity, use
12134         `rcirc-bury-buffers' to hide all RCIRC buffers
12136 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
12138         Fix DBUS query result parsing for secrets-search-items
12139         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
12140         parsing.  The function assumed that return value of the
12141         SearchItems method called on a collection is a list of two lists,
12142         however this is true only when no collection is specified.  GNOME
12143         had used to incorrectly return a list of two lists in both cases,
12144         but this was already fixed:
12145         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
12146         incorrect information in the secrets-search-items’ docstring.
12147         (Bug#20449)
12149 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12151         * lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'
12152         (byte-compile--message): Use `inhibit-message' instead of hiding
12153         the previous message with (message nil).
12155 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
12157         Remove the deprecated INTERNAL_FIELD macro by expanding it
12158         * src/lisp.h (INTERNAL_FIELD): Remove.
12159         (DEFVAR_KBOARD): Modify accordingly.
12160         * alloc.c, buffer.c, buffer.h, category.c, keyboard.c, keyboard.h:
12161         * syntax.c: Adjust users.
12162         * src/buffer.c (compact_buffer): Use BVAR.
12164 2015-04-29  Glenn Morris  <rgm@gnu.org>
12166         Replace an obsolete function alias
12167         * lisp/isearch.el (isearch-yank-x-selection):
12168         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
12169         (mouse-drag-secondary-moving):
12170         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
12171         Replace obsolete alias x-get-selection with gui-get-selection.
12173 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
12175         * lisp/mail/rmailsum.el: Use lexical-binding.
12177 2015-04-29  Glenn Morris  <rgm@gnu.org>
12179         * test/automated/package-test.el (package-test-update-archives-async):
12180         Skip test on hydra.nixos.org.
12182 2015-04-28  Glenn Morris  <rgm@gnu.org>
12184         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
12185         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
12186         (foldout-mouse-hide-or-exit): Use new names for outline functions.
12188         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
12189         Update for 2014-06-26 hideif.el change.
12191         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
12192         (rmail--decode-and-apply): New function.
12193         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
12195         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
12197 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12199         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
12200         (package-menu--refresh): Delegate obsolete-hiding to
12201         `package--remove-hidden'.
12202         (package--remove-hidden): Disregard high-priority package if it is
12203         older than the installed one.
12205 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
12207         Update source file encoding list
12208         Update admin/notes/unicode, along with coding system cookies in
12209         other files, so that the two match each other better.
12210         * admin/notes/unicode: lisp/language/ethio-util.el and
12211         lisp/language/ethiopic.el also use utf-8-emacs.
12212         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
12213         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
12214         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
12215         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
12216         * etc/refcards/sk-survival.tex:
12217         Add "coding: utf-8" so that this file is not mishandled in a
12218         Latin-1 or Big-5 locale.
12219         * lisp/international/robin.el, lisp/org/ox-ascii.el:
12220         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
12221         * lisp/language/ethio-util.el: Fix trailer.
12223 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
12225         Fix synchronous invocation of Ispell
12226         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
12227         value to ispell-process-directory before calling ispell-init-process.
12228         Don't call set-process-coding-system if ispell-async-processp is nil.
12229         (Bug#20448)
12231 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12233         * lisp/emacs-lisp/package.el: Skip space and comments in init file
12234         (package--ensure-init-file): Insert snippet at first
12235         non-whitespace non-comments line.  Respects local-vars at the top
12236         of the file.
12238 2015-04-28  Glenn Morris  <rgm@gnu.org>
12240         * lisp/mail/rmail.el (rmail-copy-headers):
12241         Handle rmail-nonignored-headers being nil.  (Bug#18878)
12243         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
12245         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
12246         Don't get confused by a bzrlib version mismatch warning.
12248 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
12250         Change default location of EUDC options file
12251         * NEWS: Document change to EUDC options file's default location.
12252         * lisp/net/eudc-vars.el (eudc-options-file): Use
12253         `locate-user-emacs-file' to change default options file location.
12255 2015-04-27  Glenn Morris  <rgm@gnu.org>
12257         * test/automated/package-test.el (package-test-update-archives-async):
12258         Try to handle the test server script dying.
12260 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
12262         * lisp/saveplace.el (save-place-mode): New minor mode.
12263         (save-place): Redefine as an obsolete alias.
12265         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
12266         * lisp/midnight.el: Use lexical-binding.
12267         (midnight-mode): Make it a proper minor mode.
12268         (midnight-buffer-display-time): Make arg non-optional.
12269         (midnight-find): Remove.
12270         (clean-buffer-list-kill-never-regexps)
12271         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
12272         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
12273         contain functions.
12274         (clean-buffer-list): Use cl-find.
12275         Allow clean-buffer-list-kill-never-regexps to contain functions.
12277 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
12279         Bump version of seq.el to 1.5
12280         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
12281           from seq-doseq.  Bump version number of seq.el.
12283 2015-04-27  Glenn Morris  <rgm@gnu.org>
12285         * lisp/mail/rmail.el (rmail-reply):
12286         Decode subject before matching "Re:" prefix.  (Bug#20396)
12288 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
12290         * lisp/emacs-lisp/package.el: Small improvements
12291         (package--with-work-buffer-async): More informative error.
12292         (package-install-user-selected-packages): Rename to
12293         `package-install-selected-packages'.
12295 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
12297         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
12298         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
12299         (eieio--class-make): Remove leftover `tag'.
12301 2015-04-27  Glenn Morris  <rgm@gnu.org>
12303         * lisp/gnus/message.el (gnus-extract-address-components):
12304         Remove bogus declaration that was masking previous problem.
12306 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
12308         * lisp/gnus/message.el (message-insert-formatted-citation-line):
12309         Fix typo.  (Bug#20318)
12311 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
12313         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
12315         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
12316         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
12317         the buffer in yet another frame.
12318         (reftex-toc-visit-location): Make sure toc-window has focus at the end
12319         when `final' is nil.
12320         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
12321         silence warnings.  Use `--' to clarify that it's internal.
12322         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
12323         (reftex-toc-promote): Clarify unused argument.
12324         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
12325         Add `reftex--' prefix.  Fix all users.
12326         (reftex-toc-promote-prepare): Use _ for dummy variable.
12327         (reftex-toc-restore-region): Rename `m
12329 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
12331         Fix a typo in bibtex.el
12332         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
12333         last change.  (Bug#20429)
12335         Fix redisplay of frame after loading new fonts
12336         * src/xdisp.c (redisplay_internal): When retrying redisplay of a
12337         frame because new fonts were loaded, disable all redisplay
12338         optimizations on that frame by calling SET_FRAME_GARBAGED.
12339         (Bug#20410)
12341 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
12343         * lisp/info.el (Info-menu): Properly provide the `default'
12344         (Bug#20391)
12346         * elisp-mode.el: Catch errors from `documentation'
12347         (Bug#20418)
12348         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
12349         Catch errors from documentation.
12350         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
12352 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
12354         lisp/emacs-lisp/package.el: Move variables to silence byte-compiler
12355         Remove redundant ":group 'package".
12357 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
12359         Fix a typo in rmail.el
12360         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
12361         last commit.  (Bug#20429)
12363 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
12365         Introduce xref-prompt-for-identifier
12366         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
12367         (xref--read-identifier): Use it
12368         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
12370 2015-04-26  João Távora  <joaotavora@gmail.com>
12372         `tex-insert-quote' after single `'' opens quotes instead of closing
12373         Without this, it's very hard to precede double quotes with the
12374         apostrophe character, i.e. insert the sequence '``
12375         (quote-backquote-backquote), commonly useful in portuguese, for
12376         instance.
12377         * tex-mode.el (tex-insert-quote): Add ?' to the list of preceding
12378         chars making `tex-insert-quote' be in the "opening" context.
12380 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
12382         Pass `id' to `completing-read' as def instead of initial input
12383         * xref.el (xref--read-identifier): Pass `id' to `completing-read'
12384         as the default value instead of initial input
12385         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
12387 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
12389         Don't freeze with unreadable processes
12390         Don't freeze if an exiting process can't be read from. (Bug#19860).
12391         This fixes a bug I introduced in
12392         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
12393         "* process.c: Add sanity checks for file descriptors."
12394         Dmitry Gutov did most of the legwork in finding the problem.
12395         * src/process.c (wait_reading_process_output):
12396         Treat non-running processes that can't be read from
12397         the same as other non-running processes.
12399 2015-04-25  Alan Mackenzie  <acm@muc.de>
12401         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
12402         * lisp/subr.el (remove-yank-excluded-properties): put
12403         `with-silent-modifications' around only the last three lines of code.
12405 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
12407         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
12408         (package--all-keywords): Deleted variable.
12410         * etc/NEWS: Document package-hiding functionality
12412 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
12414         lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
12416         Clarify the doc string of 'replace-regexp-in-string'
12417         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
12419         Improve doc string of 'insert-buffer-substring'
12420         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
12422         MS-Windows followup for the recent gnulib update
12423         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
12424         acl-internal.c.
12426 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
12428         Spelling fixes
12430         Merge from gnulib
12431         This incorporates:
12432         2015-04-24 file-has-acl: new module, split from acl
12433         2015-04-24 manywarnings: add GCC 5.1 warnings
12434         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
12435         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
12436         2015-04-15 acl: On Linux, check for acls without libacl
12437         2015-04-14 tempname: avoid unused parameter warnings (trivial)
12438         * lib/acl-internal.c: New file, from gnulib.
12439         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
12440         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
12441         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
12442         Update from gnulib.
12444         Port --enable-gcc-warnings to GCC 5.1 x86-64
12445         * lib-src/ebrowse.c (dump_sym):
12446         * lib-src/hexl.c (main):
12447         * src/ccl.c (ccl_driver):
12448         * src/character.c (string_escape_byte8):
12449         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
12450         * src/gnutls.c (Fgnutls_boot):
12451         * src/gtkutil.c (xg_check_special_colors):
12452         * src/image.c (x_build_heuristic_mask):
12453         * src/print.c (safe_debug_print, print_object):
12454         * src/term.c (produce_glyphless_glyph):
12455         * src/xdisp.c (get_next_display_element)
12456         (produce_glyphless_glyph):
12457         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
12458         Don't use a signed format to print an unsigned integer, or vice
12459         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
12460         * src/image.c (png_load_body, jpeg_load_body):
12461         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
12463 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
12465         Add new faces to tsdh-light-theme
12466         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
12467         definitions for Info-quoted, ace-jump-face-foreground,
12468         hl-paren-face, show-paren-match, and show-paren-mismatch.
12470 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
12472         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
12474 2015-04-24  Glenn Morris  <rgm@gnu.org>
12476         * build-aux/gitlog-to-emacslog:
12477         Use raw log format rather than wrapped one.
12479 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
12481         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code
12482         (seq-doseq): Fix out-of-scope binding.
12483         Don't call `seq-length at every iteration.
12484         Reduce `if's from 3 to 2 per iteration.
12485         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
12487 2015-04-24  Glenn Morris  <rgm@gnu.org>
12489         * lisp/textmodes/text-mode.el (text-mode-hook):
12490         Move text-mode-hook-identify to default.
12492         * lisp/mouse.el (minor-mode-menu-from-indicator):
12493         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
12495         * lisp/help-fns.el (describe-function): More type checking.
12496         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
12498         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
12499         (Bug#20325)
12501 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
12503         shr: strip leading whitespace when expanding URLs
12504         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
12506 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
12508         Clarify "co-authored" some more
12510         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
12512         Clarify doc strings of functions that search for properties
12513         * src/textprop.c (Fnext_char_property_change)
12514         (Fprevious_char_property_change)
12515         (Fnext_single_char_property_change)
12516         (Fprevious_single_char_property_change, Fnext_property_change)
12517         (Fnext_single_property_change, Fprevious_property_change)
12518         (Fprevious_single_property_change): Clarify doc strings wrt return
12519         value and the optional LIMIT argument.  (Bug#20411)
12521 2015-04-24  Glenn Morris  <rgm@gnu.org>
12523         * test/automated/message-mode-tests.el (message-mode-propertize):
12524         Handle non-writable HOME; eg on hydra.nixos.org.
12526 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
12528         Avoid starting threads by w32-shell-execute
12529         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
12530         local file names, before invoking ShellExecute.  (Bug#20220)
12532 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
12534         Fix following doc-links in `widget-documentation-link-action'
12535         * lisp/wid-edit.el (widget-documentation-link-action): Make
12536         following doc-links less simplistic (Bug#20398).
12538 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
12540         Improve EUDC manual
12541         * eudc.texi (Troubleshooting): New LDAP troubleshooting subsection.
12543 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
12545         Omit needless "\ " after multibyte then newline
12546         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
12547         (print_object): When print-escape-multibyte is non-nil and a
12548         multibyte character is followed by a newline or formfeed, followed
12549         by a hex digit, don't output a needless "\ " before the hex digit.
12550         * test/automated/print-tests.el (print-hex-backslash): New test.
12552 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
12554         Add a new `inhibit-message' variable
12555         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
12556         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
12557         `inhibit_message' is non-zero.
12558         * etc/NEWS: Add an entry.
12559         * doc/lispref/display.texi: Add an entry for `inhibit-message',
12560           mention it in `message'.
12562 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
12564         Fix last fix in `display-buffer-record-window'.
12565         * lisp/window.el (display-buffer-record-window): Fix last fix.
12567 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
12569         Minor edits in CONTRIBUTE
12570         * CONTRIBUTE: Rearrange instructions about log messages.
12571         Use "Git" capitalized all over.
12572         Use 2 spaces between sentences.
12574 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
12576         * lisp/files.el (basic-save-buffer): Fix argument
12578         * lisp/cus-edit.el (custom-file): Consider init-file-had-error
12579         In case `(and (null custom-file) init-file-had-error)' do the same
12580         thing we'd do if `(null user-init-file)', which is to either error out
12581         or return nil.  This is in line with `custom-save-all' which would
12582         throw an error in that situation. (bug#20355)
12584         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu
12585         (package-menu-hide-low-priority): New variable, see its doc.
12586         (package-archive-priorities): Update doc.
12587         (package-desc-priority): New function.
12588         (package-desc-priority-version): Use it.
12589         (package--remove-hidden): New function.
12590         (package-menu--refresh): Use it.
12592         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages
12593         (package-menu--hide-obsolete): New variable.
12594         (package--remove-hidden): Use it.
12595         (package-menu-hide-obsolete): New interactive function to toggle
12596         the variable.
12597         (package--quick-help-keys): Document it.
12598         (package-menu-async): Add :version tag.
12599         (package-menu-mode-map): Bind package-menu-hide-obsolete.
12600         (package-desc-status): Indicate non-installed obsolete packages as
12601         avail-obso.
12602         (package-menu-mark-install): Allow installation of avail-obso.
12603         (package-menu--status-predicate): Sort avail-obso with available.
12605 2015-04-22  Alan Mackenzie  <acm@muc.de>
12607         On C-y, stop some text property entries being written into buffer-undo-list
12608         lisp/subr.el (remove-yank-excluded-properties): enclose the code in
12609         `with-silent-modifications'.
12611 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
12613         In display-buffer-record-window record selected window if necessary.
12614         * lisp/window.el (display-buffer-record-window): Store selected window
12615         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
12617 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
12619         Fix reftex-citation bug
12620         * reftex-cite.el (reftex-extract-bib-entries): Fix
12621         `wrong-type-argument stringp nil' error that occurs when AUCTeX
12622         integration is enabled and there are no citations in the document
12623         so far.
12625 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
12627         Add or reset based on the presence of MERGE_HEAD
12628         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
12629         `vc-git-resolve-when-done' to `after-save-hook' in either case.
12630         (vc-git-conflicted-files): Add a TODO.
12631         (vc-git-resolve-when-done): Depending on the presence of
12632         MERGE_HEAD, either update the resolved file in the index, or
12633         remove it from there.  (Bug#20292)
12635 2015-04-21  Glenn Morris  <rgm@gnu.org>
12637         * lisp/custom.el (custom-declare-group): No need to purecopy
12638         custom-current-group-alist members following recent change to set
12639         it to nil before dumping.
12641         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
12642         (Bug#20399)
12644 2015-04-21  Daniel Colascione  <dancol@dancol.org>
12646         Unbreak no-op buffer save message
12647         * lisp/files.el (save-buffer): Pass interactive flag to `basic-save-buffer`
12648         (basic-save-buffer): Accept called-interactively as an argument instead of
12649         directly invoking called-interactively-p, which will always yield nil
12650         in that context.
12652 2015-04-21  Alan Mackenzie  <acm@muc.de>
12654         CC Mode: Do nothing in before/after-change-functions for text property changes
12655         Fixes bug#20266.
12656         lisp/progmodes/cc-mode.el (c-basic-common-init): Make
12657         yank-handled-properties buffer local, and remove 'category from it.
12658         (c-called-from-text-property-change-p): New function.
12659         (c-before-change): Don't do anything if a call of the new function
12660         returns non-nil.
12661         (c-after-change): Don't do much if a call of the new function returns
12662         non-nil.
12663         (c-extend-after-change-region): Put changes to text property 'fontified
12664         inside c-save-buffer-state.
12666 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
12668         Fix byte-compiler warnings about looking-back.
12669         * lisp/vc/log-view.el (log-view-end-of-defun-1):
12670         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
12671         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
12672         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
12673         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
12674         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
12675         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
12676         * lisp/org/org.el (org-insert-heading, org-sort-entries):
12677         * lisp/org/org-mouse.el (org-mouse-end-headline)
12678         (org-mouse-context-menu):
12679         * lisp/org/org-clock.el (org-clock-cancel):
12680         * lisp/man.el (Man-default-man-entry):
12681         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
12682         (rmail-ensure-blank-line):
12683         * lisp/mail/footnote.el (Footnote-delete-footnote):
12684         * lisp/mail/emacsbug.el (report-emacs-bug):
12685         * lisp/info.el (Info-follow-reference, Info-fontify-node):
12686         * lisp/info-look.el (info-lookup-guess-custom-symbol):
12687         * lisp/help-fns.el (help-fns--key-bindings):
12688         * lisp/files.el (hack-local-variables):
12689         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
12690         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
12691         (viper-complete-filename-or-exit):
12692         * lisp/emulation/viper-cmd.el (viper-backward-indent):
12693         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
12694         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
12695         * lisp/cus-edit.el (custom-face-edit-value-create):
12696         * lisp/calendar/todo-mode.el (todo-set-item-priority)
12697         (todo-filter-items-1, todo-convert-legacy-files)
12698         (todo-prefix-overlays): Add explicit second arg to looking-back.
12700 2015-04-20  Glenn Morris  <rgm@gnu.org>
12702         Avoid non-nil current-load-list at startup
12703         * src/process.c (init_process_emacs): Move Fprovide statement...
12704         (syms_of_process): ... to here.
12706         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
12708         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value in emacs -Q.
12710 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
12712         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
12713         (Bug#20330)
12715 2015-04-20  Glenn Morris  <rgm@gnu.org>
12717         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
12719         Tweak exec-path in uninstalled case
12720         * src/callproc.c (init_callproc): If running uninstalled, do not
12721         include eventual installation libexec directory in exec-path.
12723 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
12725         * lisp/emacs-lisp/package.el: Filter by multiple keywords and cache keywords
12726         (package-menu-filter): Accept a list of keywords.
12727         (package--all-keywords): New variable to cache known keywords.
12728         (package-all-keywords): Populate it if necessary.
12729         (package-refresh-contents): Reset it.
12731         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
12732         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
12733         as special keywords which match agains package archive and status
12734         respectively.
12735         * etc/NEWS: Document it.
12737 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
12739         Describe and index "empty overlays".
12740         * doc/lispref/display.texi (Overlays): Improve indexing.
12741         (Managing Overlays): Describe "empty" overlays.
12742         (Overlay Properties, Finding Overlays): Add cross-reference to
12743         where empty overlays are described.
12745 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
12747         Spelling fixes
12749         Quote 'like this' in top-level files
12750         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
12751         Prefer to single-quote 'like this' (instead of the older style
12752         `like this').
12753         * configure.ac: Fix some space-before-tab problems that 'git commit'
12754         complained about.
12756         Use bool for boolean in textprop.c, undo.c
12757         * src/textprop.c (soft, hard): Now constants instead of macros.
12758         (validate_plist): Rewrite to avoid need for boolean local.
12759         (interval_has_all_properties, interval_has_some_properties)
12760         (interval_has_some_properties_list, add_properties)
12761         (remove_properties, get_char_property_and_overlay)
12762         (Fnext_single_char_property_change)
12763         (Fprevious_single_char_property_change, add_text_properties_1)
12764         (Fremove_text_properties, Fremove_list_of_text_properties)
12765         (copy_text_properties):
12766         * src/tparam.c (tparam1):
12767         * src/undo.c (record_change, record_property_change)
12768         (syms_of_undo):
12769         Use 'true' and 'false' for booleans.
12771 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
12773         Call `smerge-start-session' even when dealing with a stash conflict
12774         * lisp/vc/vc-git.el (vc-git-find-file-hook):
12775         Call `smerge-start-session' even when dealing with a stash
12776         conflict (bug#20292).
12778 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
12780         Add option to eshell/clear to clear scrollback.
12781         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
12782         (eshell/clear): Add an optional SCROLLBACK argument. If non-nil,
12783         scrollback contents are cleared.
12784         * etc/NEWS: Describe change.
12785         * doc/misc/eshell.texi: Add entry for `clear'.
12787 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
12789         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
12790         where either will do.
12792 2015-04-19  Steve Purcell  <steve@sanityinc.com>
12794         Assume package archive-contents are UTF8-encoded
12795         * lisp/emacs-lisp/package.el (package--read-archive-file):
12796         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
12797         downloaded and cached archive-contents files, so that non-ASCII
12798         characters in package descriptions are displayed correctly in the
12799         `list-packages' menu. (Bug#20231)
12801 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
12803         Abort when looking at stashed changes
12804         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
12805         stashed changes (bug#20292).
12807 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
12809         Refactor low-level printing for simplicity
12810         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
12811         PRINTPREPARE; doable now that we assume C99.  All callers changed.
12812         (PRINTCHAR): Remove, as it adds more mystery than clarity.
12813         All callers changed.
12814         (strout): Assume that caller computes length.  All callers changed.
12815         (print_c_string): New function.
12816         (write_string, write_string_1): Compute length instead of asking
12817         the caller to compute it.  All callers changed.
12818         (write_string): Simplify by using write_string_1.
12819         (write_string_1): Simplify by using print_c_string.
12820         (Fterpri): Compute default val more clearly.
12821         (Fprin1_to_string, print_object):
12822         Assume C99 to avoid unnecessary nesting.
12823         (print_object): Prefer print_c_string to multiple printchar, or
12824         to calling strout with -1 length.  Coalesce into sprintf when
12825         this is easy.
12827 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
12829         Prefer "Bug#1234" in commit messages (Bug#20325)
12830         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
12831         as this isn't useful for Git.
12832         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
12834 2015-04-18  Glenn Morris  <rgm@gnu.org>
12836         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
12837         (Bug#19506)
12839 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
12841         * lisp/elec-pair.el (electric-pair-post-self-insert-function): Do not use `chomp' as a function.
12842         (Bug#19505)
12844 2015-04-18  Glenn Morris  <rgm@gnu.org>
12846         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
12848         * doc/emacs/misc.texi (Sorting): Small edit.
12849         (Bug#19896)
12851         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
12853 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
12855         css-mode.el: Support multi-line comment filling
12856         (Bug#20256)
12857         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
12858         comment filling.
12859         (css-adaptive-fill): New function.
12860         (css-mode): Set `adaptive-fill-function'.
12861         (scss-mode): Set `comment-continue'.
12863 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
12865         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into): Better error messages.
12867 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
12869         Minor improvements in Bulgarian input methods
12870         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
12871         Replace U+042C with U+045D, as the former character is not used in
12872         the modern Bulgarian language.
12873         (Bug#20350)
12875 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
12877         Improve EUDC manual
12878         * eudc.texi (LDAP Configuration): Mention simple and SASL
12879         authentication schemes.  Add index items.  Shorten example server
12880         name.
12882 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
12884         Don't show both feature and function with the same name
12885         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
12886         Don't show both feature and function with the same name.
12888         (elisp--xref-identifier-location): Skip variable, if it's also a functiong
12889         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
12890         Avoid returning both the variable and the function for the same
12891         minor mode.
12893 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
12895         Fix fontification of keywords clobbered by the prompt.
12896         * lisp/comint.el (comint-output-filter): Remove the uses of
12897         with-silent-modifications I introduced as part of the last change.
12898         This fixes, e.g., erratically missing highlighting when running
12899         ./configure --help; ./configure in a shell-mode buffer with
12900         compilation-shell-minor-mode turned on.
12902 2015-04-17  Glenn Morris  <rgm@gnu.org>
12904         * admin/authors.el (authors-valid-file-names, authors-renamed-files-alist): Additions.
12906 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
12908         * lisp/indent.el (indent-region): Don't deactivate the mark
12909         (Bug#20357)
12911 2015-04-17  Sam Steingold  <sds@gnu.org>
12913         lisp/net/rcirc.el (defun-rcirc-command): mark `target' as ignorable
12915 2015-04-16  Leo Liu  <sdl.web@gmail.com>
12917         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
12919 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
12921         * lisp/erc/erc-pcomplete.el (erc-pcomplete): Don't use `pcomplete' any more.
12923 2015-04-16  Glenn Morris  <rgm@gnu.org>
12925         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
12927 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
12929         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
12930         * configure.ac (LIBJPEG): Leave it empty for MinGW.
12932 2015-04-16  Glenn Morris  <rgm@gnu.org>
12934         * lisp/replace.el (query-replace-from-to-separator): Delay initialization
12935         to avoid rogue setting after startup.
12937 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
12939         Pre-4.6 GCC succeeds with unknown option
12940         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
12941         (Bug#20338)
12943 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
12945         '[:graph:]' now excludes whitespace, not just ' '
12946         * doc/lispref/searching.texi (Char Classes):
12947         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
12948         sans whitespace (not sans space).
12949         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
12950         not just space.
12951         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
12953 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
12955         (looking-back): Make the second arg non-optional.
12956         * lisp/subr.el (substitute-key-definition-key, special-form-p)
12957         (macrop): Drop deprecated second arg to indirect-function.
12958         (looking-back): Make the second arg non-optional.
12960         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
12961         command is actually sent to the shell.
12963 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
12965         Port jpeg configuration to Solaris 10 with Sun C
12966         * configure.ac: Check for jpeglib 6b by trying to link it, instead
12967         of relying on cpp magic that has problems in practice.  Check for
12968         both jpeglib.h and jerror.h features.  Remove special case for
12969         mingw32, which should no longer be needed (and if it were needed,
12970         should now be addressable by hotwiring emacs_cv_jpeglib).
12971         (Bug#20332)
12973 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
12975         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
12976         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
12977         Move to elisp-mode.el.
12978         (lisp-mode-variables): (Re)move elisp-specific settings.
12979         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
12980         from lisp-mode-variables.
12981         (elisp--font-lock-flush-elisp-buffers): New function, moved from
12982         lisp-mode.el.
12984         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
12985         Avoid pathological slowdown at top-level in large file.
12987 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
12989         Standardize names of ChangeLog history files
12990         Suggested by Glenn Morris in:
12991         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
12992         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
12993         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
12994         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
12995         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
12996         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
12997         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
12998         Remove.
13000         Split top-level entries into pre- and post-April 7
13001         This more clearly distingiushes pre-April-7 ChangeLog entries (which
13002         are for top-level files only) from post-April-7 entries (which are
13003         about files at all levels.  Problem reported by Glenn Morris in:
13004         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
13005         * ChangeLog.1: Move post-April-7 entries from here ...
13006         * ChangeLog.2: ... to this new file.
13007         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
13009 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
13011         Fix recent cus-start changes that added customize-rogues
13012         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
13013         vars early.
13014         * lisp/loadup.el ("cus-start"): Move to the end to reduce customize-rogue.
13016 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
13018         Define cl-concatenate as an alias to seq-concatenate
13019         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
13020           code by making cl-concatenate an alias to seq-concatenate.
13022 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
13024         * src/lread.c (intern_1): Make sure we'd find the symbol we add
13025         (Bug#20334)
13026         * src/xfaces.c (resolve_face_name): Don't use `intern' with Lisp_Strings.
13028 2015-04-15  Glenn Morris  <rgm@gnu.org>
13030         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
13032 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13034         Clean up gnus-uu saving code slightly
13035         * gnus-uu.el (gnus-uu-save-article): Make the
13036         save-restriction/widen calls make more sense.
13038 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
13040         Make [:graph:] act like [:print:] sans space
13041         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
13042         [:graph:] so that it matches everything that [:print:] does,
13043         except for space.
13044         * doc/lispref/searching.texi (Char Classes):
13045         * etc/NEWS:
13046         * lisp/emacs-lisp/rx.el (rx):
13047         Document [:graph:] to be [:print:] sans ' '.
13048         * src/character.c, src/character.h (graphicp): New function.
13049         * src/regex.c (ISGRAPH) [emacs]: Use it.
13050         (BIT_GRAPH): New macro.
13051         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
13052         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
13053         Return BIT_GRAPH for RECC_GRAPH.
13054         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
13055         and ISPRINT if BIT_PRINT.
13057 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
13059         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
13060         Don't use call-next-method in a cl-defmethod.
13062         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
13063         (eieio--class-p): Remove, provided by cl-defstruct.
13065 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
13067         Add seq-intersection and seq-difference to the seq library
13068         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference): New
13069         functions.
13070         * test/automated/seq-tests.el: Add tests for seq-intersection and
13071         seq-difference.
13072         * doc/lispref/sequences.texi: Add documentation for seq-intersection
13073         and seq-difference.
13075 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
13077         * eieio-core.el (class-abstract-p): Don't inline, to avoid leaking internals
13079 2015-04-14  Sam Steingold  <sds@gnu.org>
13081         package--ensure-init-file: widen requires save-restriction
13083 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
13085         Improve the commit-msg Git hook for unibyte environments
13086         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
13087         in unibyte environments.  (Suggested by Paul Eggert
13088         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
13089         [:print:], based on UTF-8 sequences of the unprintable characters.
13091         Describe problems with cursor caused by Windows Magnifier
13092         * etc/PROBLEMS: Describe the problem with cursor shape on
13093         MS-Windows due to Windows Magnifier.
13094         (Bug#20271)
13096         Make [:print:] support non-ASCII characters correctly
13097         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
13098         (BIT_PRINT): New bit mask.
13099         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
13100         * src/character.c (printablep): New function.
13101         * src/character.h (printablep): Add prototype.
13102         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
13103         of 'print', 'alnum', and 'alphabetic'.
13104         * doc/lispref/searching.texi (Char Classes): Document the new
13105         behavior of [:print:].
13106         * etc/NEWS: Mention the new behavior of [:print:].
13108         Assign correct general-category and names to surrogates
13109         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
13110         surrogates.  This avoids assigning them the default
13111         general-category of 'Cn', i.e. unassigned codepoints.
13112         (unidata-get-name): Give surrogates synthetic names.
13114 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
13116         Assume C89 offsetof in xterm.c, xlwmenu.c
13117         * lwlib/xlwmenu.c (offset):
13118         * src/xterm.c (cvt_string_to_pixel_args):
13119         Use offsetof, not XtOffset.
13121 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
13123         Assume C89 offsetof in widget.c
13124         * src/widget.c (XtOffset): Remove; no longer needed.
13125         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
13127         Fix think-o in previous patch
13128         * src/window.c (count_windows, get_leaf_windows):
13129         Don't optimize count_windows incorrectly.
13131 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
13133         Avoid some int overflows in window.c
13134         * src/print.c (print_object):
13135         * src/window.c (sequence_number):
13136         * src/window.h (struct window.sequence_number):
13137         Don't assume window sequence number fits in int.
13138         * src/window.c (window_select_count):
13139         * src/window.h (struct window.use_time, window_select_count):
13140         Don't assume window use time fits in int.
13141         * src/window.c (Fsplit_window_internal):
13142         Don't assume user-supplied integer, or sum, fits in int.
13143         (Fset_window_configuration, count_windows, get_leaf_windows)
13144         (save_window_save, Fcurrent_window_configuration):
13145         Use ptrdiff_t for object counts.
13146         (Fset_window_configuration): Omit unused local 'n'.
13147         (count_windows): Simplify by writing in terms of get_leaf_windows.
13148         (get_leaf_windows): Don't store through FLAT if it's null.
13149         (extract_dimension): New static function.
13150         (set_window_margins, set_window_fringes, set_window_scroll_bars):
13151         Use it to avoid undefined behavior when converting user-supplied
13152         integer to 'int'.
13154 2015-04-13  Glenn Morris  <rgm@gnu.org>
13156         Minor doc copyedits
13157         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
13158         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
13160 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
13162         [Gnus] Catch the invalid-operation that idna.el will issue
13163         * lisp/gnus/gnus-art.el (gnus-use-idna):
13164         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
13165         * lisp/gnus/message.el (message-use-idna):
13166         Catch the invalid-operation that idna.el will issue.
13168 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
13170         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
13172 2015-04-13  Sam Steingold  <sds@gnu.org>
13174         package--ensure-init-file: widen before looking for "(package-initialize)"
13176 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
13178         Change diff-switches default to `-u'
13179         (Bug#20290)
13180         * doc/emacs/files.texi (Comparing Files): Document the new default
13181         value of `diff-switches'.
13182         * doc/emacs/trouble.texi (Sending Patches): Document the preference
13183         for unified diff format.  Escape the plus in the suggested `-F' regexp
13184         value.
13185         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
13187 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
13189         (gnus-group--setup-tool-bar-update): Fix last change
13190         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
13191         cursor-sensor-functions should be a list of functions.
13193 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
13195         Use gmm-called-interactively-p in Gnus
13196         * lisp/gnus/gnus-topic.el (gnus-topic-mode): Use gmm-called-interactively-p.
13198 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
13200         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
13201         (Bug#20321)
13202         * lisp/cus-start.el (read-buffer-function): Don't advertize
13203         iswitchb-read-buffer any more.
13204         (iswitchb): Don't tweak this obsolete group any more.
13206 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
13208         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file
13210         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings
13211         Adding a string after a constructor's argument list will use
13212         that string as the constructor function docstring.  If this string
13213         is absent but the struct itself was given a docstring, use that as
13214         the constructor's docstring.
13215         Fixes (bug#17284).
13217 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
13219         Deprecate `intangible' and `point-entered' properties
13220         * lisp/emacs-lisp/cursor-sensor.el: New file.
13221         * lisp/simple.el (pre-redisplay-functions): New hook.
13222         (redisplay--pre-redisplay-functions): New function.
13223         (pre-redisplay-function): Use it.
13224         (minibuffer-avoid-prompt): Mark obsolete.
13225         (redisplay--update-region-highlight): Adapt it to work as a function on
13226         pre-redisplay-functions.
13227         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
13228         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
13229         than point-entered to make the prompt intangible.
13230         * lisp/forms.el: Move `provide' calls to the end.
13231         (forms-mode): Don't use `run-hooks' on a local var.
13232         (forms--make-format, forms--make-format-elt-using-text-properties):
13233         Use cursor-intangible rather than `intangible'.
13234         (forms-mode): Enable cursor-intangible-mode.
13235         * lisp/isearch.el (isearch-mode): Use defvar-local.
13236         (cursor-sensor-inhibit): Declare.
13237         (isearch-mode): Set cursor-sensor-inhibit.
13238         (isearch-done): Set it back.
13239         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
13240         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
13241         any more.
13242         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
13243         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
13244         Add Edebug spec.
13245         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
13246         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
13247         inhibit-point-motion-hooks any more.
13248         (ses--cell-at-pos, ses--curcell): New functions, extracted from
13249         ses-set-curcell.
13250         (ses-set-curcell): Use them.
13251         (ses-print-cell, ses-setup): Use cursor-intangible instead of
13252         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
13253         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
13254         Use ses--cell-at-pos.
13255         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
13256         extracted from ses-command-hook.  Make them work with multiple windows
13257         displaying the same buffer.
13258         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
13259         Enable cursor-intangible-mode.
13260         (ses-command-hook): Remove cell highlight and mode-line update code.
13261         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
13262         Update for new name of text-property holding the cell name.
13263         (ses-rename-cell): Don't mess with mode-line-process.
13264         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
13265         cursor-sensor-functions property instead of point-entered.
13266         (erc-insert-timestamp-right, erc-format-timestamp):
13267         Use cursor-intangible rather than `intangible'.
13268         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
13269         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
13270         cursor-sensor-mode if needed.
13271         (erc-echo-timestamp): Adapt to calling convention of
13272         cursor-sensor-functions.
13273         (erc-insert-timestamp-right): Remove unused vars `current-window' and
13274         `indent'.
13275         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
13276         (gnus-update-group-mark-positions): Remove unused `topic' var.
13277         (gnus-group-insert-group-line): Remove unused var `header'.
13278         (gnus-group--setup-tool-bar-update): New function.
13279         (gnus-group-insert-group-line): Use it.
13280         (gnus-group-update-eval-form): Declare local
13281         dynamically-bound variables.
13282         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
13283         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
13284         (gnus-group-prepare-topics, gnus-topic-update-topic)
13285         (gnus-topic-change-level, gnus-topic-catchup-articles)
13286         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
13287         Use inhibit-read-only.
13288         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
13289         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
13290         * lisp/textmodes/reftex-index.el (reftex-display-index):
13291         Use cursor-intangible-mode if available.
13292         (reftex-index-post-command-hook): Check cursor-intangible.
13293         * lisp/textmodes/reftex-toc.el (reftex-toc):
13294         Use cursor-intangible-mode if available.
13295         (reftex-toc-recenter, reftex-toc-post-command-hook):
13296         Check cursor-intangible.
13297         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
13298         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
13299         (sgml-tags-invisible): Use with-silent-modifications and
13300         inhibit-read-only.  Enable cursor-sensor-mode.
13301         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
13302         calling convention of cursor-sensor-functions.
13303         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
13304         (table-point-entered-cell-hook, table-point-left-cell-hook):
13305         Don't autoload.
13306         (table-cell-entered-state): Remove var.
13307         (table--put-cell-point-entered/left-property)
13308         (table--remove-cell-properties):
13309         Use cursor-sensor-functions rather than point-entered/left.
13310         (table--point-entered/left-cell-function): Merge
13311         table--point-entered-cell-function and table--point-left-cell-function
13312         and adjust to calling convention of cursor-sensor-functions.
13314         Update ldef-boots.el
13316         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
13318         * doc/misc/eieio.texi: Don't advertize now obsolete constructs
13320         Collapse successive char deletions in the undo log
13321         * src/cmds.c (remove_excessive_undo_boundaries): New function,
13322         extracted from Fself_insert_command.
13323         (Fdelete_char, Fself_insert_command): Use it.
13324         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
13325         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
13327         xterm and OSC 52: Add NEWS entry, and tweak the code
13328         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition to
13329         top-level.
13330         (terminal-init-xterm-activate-set-selection): Set a terminal property.
13331         (xterm--set-selection): Use it instead of checking the value of
13332         `terminal-initted'.  Don't use string-bytes.
13334 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
13336         xterm.el: Implement OSC-52 functionality for setting the X selection
13337         * lisp/term/xterm.el (xterm-max-cut-length): New var.
13338         (xterm--set-selection, terminal-init-xterm-activate-set-selection): New funs.
13339         (terminal-init-xterm, xterm--version-handler): Use them.
13341 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
13343         Remove left over code from when we used an obsolete/loaddefs.el file
13344         * lisp/subr.el (do-after-load-evaluation): Remove left over code from when
13345         we used an obsolete/loaddefs.el file.
13347         * cedet/semantic/fw.el: Use declare.
13348         * cedet/semantic/fw.el (semantic-exit-on-input)
13349         (semanticdb-without-unloaded-file-searches): Use declare.
13350         (semantic-fw-add-edebug-spec): Remove.
13352         (completion-lisp-mode-hook): Use completion-separator-chars
13353         * lisp/completion.el (completion-lisp-mode-hook):
13354         Use completion-separator-chars rather than local key binding.
13356         * src/*.c: Set deactivate_mark buffer-locally
13357         (Bug#20260)
13358         * src/insdel.c (prepare_to_modify_buffer_1):
13359         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
13360         buffer-locally.
13362 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
13364         python.el: Keep symmetry on sexp navigation with parens
13365         (Bug#19954)
13366         * lisp/progmodes/python.el
13367         (python-nav--forward-sexp): Add argument skip-parens-p.
13368         (python-nav-forward-sexp, python-nav-backward-sexp)
13369         (python-nav-forward-sexp-safe)
13370         (python-nav-backward-sexp-safe): Use it.
13371         * test/automated/python-tests.el
13372         (python-nav-forward-sexp-1): Fix test.
13374 2015-04-12  João Távora  <joaotavora@gmail.com>
13376         Don't use `setq-local' in Gnus code
13377         This might break upstream builds with older Emacsen
13378         * lisp/gnus/message.el (message-mode): Use `set' and
13379         `make-local-variable' instead of `setq-local'.
13381 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
13383         Update Makefile.in's .PHONY dependencies
13384         * Makefile.in (change-history-commit, master-branch-is-current)
13385         (no-ChangeLog): Now phony.
13387         Remove configure's --with-mmdf option
13388         * configure.ac (MAIL_USE_MMDF): Remove.
13389         * etc/NEWS: Document this.
13390         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
13391         (Bug#20308)
13393         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
13394         That way, 'make install' won't think it's a man page.
13395         Reported by Ashish SHUKLA in:
13396         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
13398         Improve 'make change-history' prereq tests
13399         * Makefile.in (gen_origin): Fix to match what's in the master branch.
13400         (no-ChangeLog, master-branch-is-current): New rules.
13401         (change-history): Depend on them, to avoid similar future problems.
13402         Escape the local-variables string to pacify Emacs when editing
13403         Makefile.in.
13405 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13407         * test/automated/package-test.el (with-package-test): Kill Packages buffer
13409         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt
13410         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
13411         "Upgrade" last, and use capitalized instead of all-caps.
13413         * lisp/emacs-lisp/package.el: Completely silence async operations
13414         (package--make-autoloads-and-stuff): Silence autoloads.
13415         (package--save-selected-packages): New function, silences
13416         `customize-save-variable'.
13417         (package--user-selected-p, package-install-from-buffer)
13418         (package-delete, package-install): Use it.
13419         (package-install-from-archive)
13420         (package-menu--perform-transaction): Silence.
13421         (package-menu-execute): Feedback when operation starts.
13423         Use delay-mode-hooks when visiting the init-file
13424         * lisp/emacs-lisp/package.el (package--ensure-init-file):
13425         delay-mode-hooks
13426         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks
13428         * lisp/files.el: Only message when saving if save-silently is nil
13429         (save-silently): New variable.
13430         (files--message): New function.
13431         (find-file-noselect, save-buffer, basic-save-buffer)
13432         (basic-save-buffer-2, save-some-buffers, not-modified)
13433         (append-to-file): Use them.
13435 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
13437         Support debug declarations in pcase macros
13438         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
13439         (pcase-UPAT): Use it.  Remove "`".
13440         (pcase--edebug-match-macro): New function.
13441         (pcase-defmacro): Support debug declarations.
13442         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
13443         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
13444         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>: Add debug declaration.
13446         pcase.el: Edebug support for `app' and vector patterns
13447         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
13448         (pcase-UPAT): Use it. Support `app' patterns.
13449         (pcase-QPAT): Support vector patterns.
13451         edebug.el: Disambiguate vector specifications
13452         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
13453         `(vector ...)' as a vector specification, not as a sublist.
13455         (gnus-summary-refer-thread): Don't clobber unread articles
13456         This fixes a bug where `A T' causes "random" articles to become marked
13457         as read.
13458         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
13459         gnus-newsgroup-unreads remains sorted.
13461         mouse-sel.el: Fix mouse-sel-get-selection-function
13462         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
13463         Use gui--last-selected-text-primary instead of no longer existing
13464         gui-last-selected-text.
13466         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
13468         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
13470 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13472         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate
13474         * lisp/emacs-lisp/package.el (list-packages): Call refresh in right buffer
13476         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations
13477         (byte-compile--interactive): New var.
13478         (byte-compile--message): New function.
13479         (byte-compile-log-1, byte-force-recompile)
13480         (byte-recompile-directory, byte-recompile-file)
13481         (byte-compile-file, compile-defun)
13482         (byte-compile-file-form-defmumble, byte-compile)
13483         (byte-compile-file-form-defalias, display-call-tree): Use it.
13485         * lisp/files.el: Don't message when nothing happened
13486         (save-some-buffers, basic-save-buffer): Before messaging to say
13487         "nothing was saved" check if (called-interactively-p 'any).
13489 2015-04-12  João Távora  <joaotavora@gmail.com>
13491         Summary: Improve sexp-based movement in message-mode
13492         Works by giving citations and smileys a different syntax.  This helps
13493         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
13494         sexp-based movement.
13495         * lisp/gnus/message.el (message--syntax-propertize): New function.
13496         (message-mode): Set syntax-related vars.
13497         (message-smileys): New variable.
13498         * test/automated/message-mode-tests.el: New file
13500 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
13502         Use bool for boolean in window.c
13503         * src/window.c: Omit unnecessary static function decls.
13504         (adjust_window_count, select_window, Fselect_window)
13505         (window_body_width, Fwindow_body_height, Fwindow_body_width)
13506         (set_window_hscroll, check_window_containing, Fwindow_at)
13507         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
13508         (unshow_buffer, replace_window, recombine_windows)
13509         (add_window_to_list, candidate_window_p, next_window)
13510         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
13511         (Fget_buffer_window, Fdelete_other_windows_internal)
13512         (replace_buffer_in_windows_safely, set_window_buffer)
13513         (Fset_window_buffer, Fforce_window_update)
13514         (temp_output_buffer_show, make_parent_window)
13515         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
13516         (resize_frame_windows, Fsplit_window_internal)
13517         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
13518         (Fresize_mini_window_internal, mark_window_cursors_off)
13519         (window_scroll, window_scroll_pixel_based)
13520         (window_scroll_line_based, scroll_command, Fscroll_other_window)
13521         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
13522         (Fmove_to_window_line, Fset_window_configuration)
13523         (delete_all_child_windows, apply_window_adjustment)
13524         (set_window_fringes, set_window_scroll_bars)
13525         (Fset_window_vscroll, foreach_window, foreach_window_1)
13526         (compare_window_configurations, Fcompare_window_configurations):
13527         Prefer 'bool', 'true', and 'false' for booleans.
13528         * src/window.h (WINDOW_MODE_LINE_LINES)
13529         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
13531 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
13533         Speed up byte-compilation and autoload generation by avoiding mode-hooks
13534         This prevents emacs-lisp-mode-hook from being run everytime an
13535         autoload file is generated, which can account for a fraction of
13536         package installation time depending on the hooks the user has
13537         configured.
13538         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
13539         * lisp/emacs-lisp/autoload.el (autoload-find-file)
13540         (autoload-find-generated-file): Use delay-mode-hooks.
13542         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'
13543         (package-menu-refresh): Respect async and do new package checking.
13544         (list-packages): Use `package-menu-refresh' instead of repeating code.
13546         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help
13547         (package--quick-help-keys): New variable.
13548         (package--prettify-quick-help-key): New function.
13549         (package-menu-quick-help): Use it.
13551         * lisp/emacs-lisp/package.el: Fix initially wrong compat table
13552         (package--build-compatibility-table): require finder
13554         * test/automated/package-test.el: Fix new test
13556         * lisp/emacs-lisp/package.el: Silence async operations
13557         (package--silence): New variable.
13558         (package--message): New function.
13559         (package-import-keyring, package-refresh-contents)
13560         (package-compute-transaction, package-install, package-delete)
13561         (package-menu--perform-transaction, package-menu-execute): Use it.
13563         * test/automated/package-test.el: Test async functionality
13564         (package-test-update-archives-async): New test
13566 2015-04-11  Daiki Ueno  <ueno@gnu.org>
13568         Utilize `make-process' in epg.el
13569         * lisp/epg.el (epg-error-output): Abolish.
13570         (epg-context): New slot `error-buffer'.
13571         (epg--start): Use `make-process' and `make-pipe-process'.
13572         (epg--process-filter): Remove code separating stderr from stdout.
13573         (epg-wait-for-completion): Simplify `error-output' handling.
13574         (epg-reset): Dispose error buffer.
13576 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
13578         * .gitignore: Ignore doc temps and outputs.
13580         Port commit-msg to MSYS Bash+Gawk
13581         See Eli Zaretskii in:
13582         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
13583         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
13584         (cent_sign, print_at_sign, at_sign): Revert previous change.
13585         (print_at_sign): Prepend "BEGIN".
13586         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
13588         Port commit-msg to broken MS-Windows shell
13589         * build-aux/git-hooks/commit-msg (cent_sign):
13590         Just use UTF-8 here rather than ASCII + printf, as the latter fails
13591         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
13592         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
13594 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
13596         Support GnuTLS v3.4 and later on MS-Windows
13597         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
13598         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
13599         GnuTLS DLL to load according to value of libgnutls-version.
13600         (Bug#20294)
13602 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
13604         Minor quoting etc. fixes to misc manuals
13605         Fix some minor quoting and spacing issues.  Distinguish more
13606         clearly among grave accent and apostrophe (which are ASCII) and
13607         single quote (which is not).  Prefer the standard terms
13608         "apostrophe" and "grave accent" to alternative names that can be
13609         confusing.  Use apostrophes to single-quote ASCII text.
13610         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
13611         rather than approximating it in ASCII with grave accent.
13613 2015-04-11  Daiki Ueno  <ueno@gnu.org>
13615         Respect more keyword args in `make-process'
13616         * process.c (Fmake_process): Respect `:sentinel' and `:filter'
13617         keywords as documented.
13619 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
13621         Extract ChangeLog entries when committing a directory
13622         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
13623         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
13624         Add a FIXME comment.
13625         (log-edit-changelog-entries): Extract from
13626         `log-edit-changelog-entries', handle FILE being a directory
13627         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
13629 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
13631         Fix problems found by --enable-gcc-warnings
13632         * src/process.c (create_process, Fmake_pipe_process)
13633         (Fmake_network_process): Omit unused locals.
13635         Fix commit-msg to handle scissors lines
13636         * build-aux/git-hooks/commit-msg:
13637         Ignore every line after a scissors line, such as a line generated
13638         by 'git commit -v'.  Problem reported by Johan Bockgård in:
13639         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
13641         port commit-msg to Gawk 3.0.4 (1999)
13642         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
13643         (print_at_sign, at_sign): New vars.  Use them to avoid problems
13644         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
13645         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
13647         Have commit-msg report commit failure
13648         * build-aux/git-hooks/commit-msg: If the commit is aborted,
13649         say so.  Simplify by doing this at the end.  Problem reported
13650         by Eli Zaretskii in:
13651         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
13653 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13655         Clean up LDAP Configuration section of EUDC manual
13656         * doc/misc/eudc.texi: Combine indices.
13657         (LDAP Configuration): Use command markup.  Add index entries.
13658         Change formatting.  Wrap long lines.  Add noindent markup.
13660 2015-04-10  Daiki Ueno  <ueno@gnu.org>
13662         Add facility to collect stderr of async subprocess
13663         * src/w32.h (register_aux_fd): New function declaration.
13664         * src/w32.c (register_aux_fd): New function.
13665         * src/process.h (struct Lisp_Process): New member stderrproc.
13666         * src/process.c (PIPECONN_P): New macro.
13667         (PIPECONN1_P): New macro.
13668         (Fdelete_process, Fprocess_status, Fset_process_buffer)
13669         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
13670         (Fcontinue_process): Handle pipe process specially.
13671         (create_process): Respect p->stderrproc.
13672         (Fmake_pipe_process): New function.
13673         (Fmake_process): Add new keyword argument :stderr.
13674         (wait_reading_process_output): Specially handle a pipe process when
13675         it gets an EOF.
13676         (syms_of_process): Register Qpipe and Smake_pipe_process.
13677         * doc/lispref/processes.texi (Asynchronous Processes): Document
13678         `make-pipe-process' and `:stderr' keyword of `make-process'.
13679         * lisp/subr.el (start-process): Suggest to use `make-process' handle
13680         standard error separately.
13681         * test/automated/process-tests.el (process-test-stderr-buffer)
13682         (process-test-stderr-filter): New tests.
13683         * etc/NEWS: Mention new process type `pipe' and its usage with the
13684         `:stderr' keyword of `make-process'.
13686 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
13688         Minor quoting etc. fixes to lispref manual
13689         * doc/lispref/tips.texi (Documentation Tips):
13690         Distinguish more clearly among grave accent, apostrophe,
13691         and single quote.
13692         * doc/lispref/README, doc/lispref/buffers.texi:
13693         * doc/lispref/commands.texi, doc/lispref/control.texi:
13694         * doc/lispref/customize.texi, doc/lispref/display.texi:
13695         * doc/lispref/elisp.texi, doc/lispref/files.texi:
13696         * doc/lispref/frames.texi, doc/lispref/hash.texi:
13697         * doc/lispref/help.texi, doc/lispref/internals.texi:
13698         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
13699         * doc/lispref/markers.texi, doc/lispref/modes.texi:
13700         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
13701         * doc/lispref/os.texi, doc/lispref/positions.texi:
13702         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
13703         * doc/lispref/text.texi, doc/lispref/tips.texi:
13704         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
13705         Use American-style double quoting in ordinary text,
13706         and quote 'like this' when single-quoting in ASCII text.
13707         Also, fix some minor spacing issues.
13709 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
13711         Handle symlinked test directory in tramp-tests.el
13712         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
13713         (tramp--test-check-files): Use `file-truename' for directories.
13715 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
13717         Fix 'recenter' when visual-line-mode is turned on
13718         * src/window.c (Frecenter): Use the same code for GUI and TTY
13719         frames alike; use vmotion only for "initial" frames.  This is
13720         because vmotion doesn't support visual-line-mode.  Rewrite the
13721         'iarg >= 0' case to use move_it_* functions instead of using
13722         vmotion, for the same reason.  Fix the clipping of the argument
13723         value to support scroll-margin in all cases and avoid unwarranted
13724         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
13725         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
13726         which see.
13728 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13730         * abbrev.el (define-abbrev-table): Refine last change.
13732         cl-lib.el: Partial revert of "2015-04-05 Rationalize c[ad]+r"
13733         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
13734         use of c[ad]+r", so as to keep the "cl-" prefix on all
13735         cl-lib definitions.
13737         * vhdl-mode.el (vhdl-prepare-search-2): Use inhibit-point-motion-hooks
13739         * lisp/cedet/semantic: Remove some dead code
13740         * lisp/cedet/semantic/util-modes.el
13741         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
13742         any more.
13743         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
13744         not supported any more.
13745         (semantic-safe): Use `declare'.
13746         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
13747         (semantic-tag-intangible-p): Remove unused functions.
13748         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
13749         Remove unused function.
13751         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
13752         (gnus-article-hide-text, gnus-article-unhide-text)
13753         (gnus-article-unhide-text-type): Remove special handling of
13754         `intangible' since that property is not used any more.
13755         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
13757 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
13759         Use the VC root in `log-edit-listfun'
13760         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
13761         `log-edit-listfun'.
13763 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
13765         Fix description of Unix time, mention new function.
13766         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
13767         Unix time.
13768         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
13769         (Basic Operations on Units): Mention `calc-convert-exact-units'.
13771 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
13773         * lisp/emacs-lisp/package.el: Use mode-line-process for notification
13775 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
13777         (log-edit-insert-changelog-entries): Don't add newline after the last entry
13778         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
13779         Don't add newline after the last entry.
13781 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
13783         css-mode.el: Add "not" pseudo-class
13784         (Bug#20267)
13785         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
13786         list of CSS pseudo-classes.
13788 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13790         etc/NEWS: Add missing entry for "Stop messing with the EMACS env var"
13792 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
13794         Stop messing with the EMACS env var
13795         * misc.texi (Interactive Shell): Remove description of EMACS env var.
13797 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
13799         Adapt 'make change-history' to coding cookie
13800         * Makefile.in (change-history): Adjust to change of format of
13801         ChangeLog file, which now has a coding cookie before an indented
13802         copyright notice.
13804 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
13806         Adapt 'make change-history' to coding cookie
13807         * Makefile.in (change-history): Adjust to change of format of
13808         ChangeLog file, which now has a coding cookie before an indented
13809         copyright notice.
13811         gitlog-to-changelog coding cookie and mv -i
13812         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
13813         for copyright notice prototype, so that we get a proper "coding:"
13814         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
13815         existing ChangeLog.  Problems reported by Eli Zaretskii in:
13816         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
13818         Merge from gnulib
13819         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
13820         2015-04-09 gitlog-to-changelog: port to MS-Windows
13822 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
13824         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
13825         (Bug#20212)
13827 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13829         Stop messing with the EMACS env var
13830         (Bug#20202)
13831         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
13832         * lisp/comint.el (comint-exec-1):
13833         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
13834         * lisp/progmodes/compile.el (compilation-start): Same and bring
13835         INSIDE_EMACS's format in line with other users.
13837         css-mode.el (css-smie-rules): Fix indentation after complex selectors
13838         (Bug#20282)
13839         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
13840         inner structure of selectors.
13842 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
13844         python.el: Indent docstring lines to base-indent
13845         (Bug#19595)
13846         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
13847         an initial patch.
13848         * lisp/progmodes/python.el
13849         (python-indent-context): Add :inside-docstring context.
13850         (python-indent--calculate-indentation): Handle :inside-docstring.
13851         (python-indent-region): Re-indent docstrings.
13852         * test/automated/python-tests.el (python-indent-region-5)
13853         (python-indent-inside-string-2): Fix tests.
13855         python.el: Increase native completion robustness
13856         (Bug#19755)
13857         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
13858         this and providing useful ideas.
13859         * lisp/progmodes/python.el
13860         (python-shell-completion-native-output-timeout): Increase value.
13861         (python-shell-completion-native-try-output-timeout): New var.
13862         (python-shell-completion-native-try): Use it.
13863         (python-shell-completion-native-setup): New readline setup avoids
13864         polluting current context, ensures output when no-completions are
13865         available and includes output end marker.
13866         (python-shell-completion-native-get-completions): Trigger with one
13867         tab only.  Call accept-process-output until output end is found or
13868         python-shell-completion-native-output-timeout is exceeded.
13870 2015-04-08  Samer Masterson  <samer@samertm.com>
13872         * lisp/eshell: Make backslash a no-op in front of normal chars
13873         (Bug#8531)
13874         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
13875         (eshell-parse-backslash): Return escaped character after backslash
13876         if it is special.  Otherwise, if the backslash is not in a quoted
13877         string, ignore the backslash and return the character after; if
13878         the backslash is in a quoted string, return the backslash and the
13879         character after.
13880         * test/automated/eshell.el (eshell-test/escape-nonspecial)
13881         (eshell-test/escape-nonspecial-unicode)
13882         (eshell-test/escape-nonspecial-quoted)
13883         (eshell-test/escape-special-quoted): Add tests for new
13884         `eshell-parse-backslash' behavior.
13886 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
13888         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
13889         after the file name.
13890         (Bug#20276)
13892 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
13894         Minor quoting etc. fixes to Emacs manual
13895         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
13896         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
13897         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
13898         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
13899         * doc/emacs/indent.texi, doc/emacs/macos.texi:
13900         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
13901         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
13902         * doc/emacs/search.texi, doc/emacs/trouble.texi:
13903         * doc/emacs/vc1-xtra.texi:
13904         Use American-style double quoting in ordinary text,
13905         and quote 'like this' when single-quoting in ASCII text.
13906         Also, fix some minor spacing issues.
13908         Minor quoting etc. fixes to elisp intro
13909         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
13910         American-style double quoting in ordinary text.  In ASCII text,
13911         consistently quote 'like this' instead of `like this', unless
13912         Emacs requires the latter.
13914 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
13916         * CONTRIBUTE: Mention log-edit-insert-changelog.
13918         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
13920 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
13922         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
13924 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
13926         (eieio-copy-parents-into-subclass): Fix inheritance of initargs
13927         (Bug#20270)
13928         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
13929         Fix inheritance of initargs.
13931 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
13933         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
13934         while dowloading information.
13936         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
13937         (package--ensure-init-file): Check file contents before visiting.
13938         (package-initialize): Call it.
13939         (package-install-from-buffer, package-install): Don't call it.
13941 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
13943         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800
13944         (Bug#17517)
13946 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
13948         Fix nasty scoping bug in tramp-cache.el
13949         * lisp/net/tramp-cache.el (tramp-flush-file-property): Fix nasty scoping bug.
13951 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
13953         Add notice to visual commands section
13954         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
13955         such as git call less with its -F option which omits pagination if
13956         the contents is less than one page long.  This interferes with
13957         eshell's visual (sub-)commands.
13959 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
13961         ffap: Support environment variable expansion in file names
13962         (Bug#19839)
13963         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
13964         environment variable expansion in file names.
13966 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
13968         Prefer double-quote to accent-grave in man pages
13970 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
13972         (Bug#20257)
13973         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
13975 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
13977         Update etc/PROBLEMS.
13978         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
13979         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
13980         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
13981         respectively); other minor updates and tweaks.  (Bug#20011)
13983 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
13985         Add doc strings for some Isearch state vars
13986         * lisp/misearch.el (multi-isearch-buffer-list)
13987         (multi-isearch-file-list): Add doc strings.
13988         (Bug#20232)
13990 2015-04-07  Alan Mackenzie  <acm@muc.de>
13992         Always mark "<" and ">" in #include directives with text properties.
13993         * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock "anchored
13994         matcher" with an invocation of c-make-font-lock-search-function to allow
13995         fontification when there's no trailing space on an "#include <..>" line.
13997 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
13999         Generate a ChangeLog file from commit logs
14000         * .gitignore: Add 'ChangeLog'.
14001         * build-aux/gitlog-to-changelog: New file, from Gnulib.
14002         * build-aux/gitlog-to-emacslog: New file.
14003         * CONTRIBUTE: Document the revised workflow.
14004         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
14005         instead of just special cases.
14006         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
14007         (ChangeLog, unchanged-history-files, change-history)
14008         (change-history-commit): New rules.
14009         * admin/admin.el (make-manuals-dist--1):
14010         Don't worry about doc/ChangeLog.
14011         * admin/authors.el: Add a FIXME.
14012         * admin/make-tarball.txt:
14013         * lisp/calendar/icalendar.el:
14014         * lisp/gnus/deuglify.el:
14015         * lisp/obsolete/gulp.el:
14016         * lwlib/README:
14017         Adjust to renamed ChangeLog history files.
14018         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
14019         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
14020         Remove obsolete discussion of merging ChangeLog files.
14021         New section "Maintaining ChangeLog history".
14022         * build-aux/git-hooks/pre-commit:
14023         Reject attempts to commit files named 'ChangeLog'.
14024         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
14025         * make-dist: Make and distribute top-level ChangeLog if there's a
14026         .git directory.  Distribute the new ChangeLog history files
14027         instead of scattered ChangeLog files.  Distribute the new files
14028         gitlog-to-changelog and gitlog-to-emacslog.
14029         (Bug#19113)
14031         Rename ChangeLogs for gitlog-to-changelog
14032         This patch was implemented via the following shell commands:
14033         find * -name ChangeLog |
14034         sed 's,.*,git mv & &.1,
14035         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
14036         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
14037         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
14038         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
14039         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
14040         sh
14041         git commit -am"[this commit message]"
14043 This file records repository revisions from
14044 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
14045 commit f49e3a2603f249bb2ec281f3eaedd80cbaef2243 (inclusive).
14046 See ChangeLog.1 for earlier changes.
14048 ;; Local Variables:
14049 ;; coding: utf-8
14050 ;; End:
14052   Copyright (C) 2015 Free Software Foundation, Inc.
14054   This file is part of GNU Emacs.
14056   GNU Emacs is free software: you can redistribute it and/or modify
14057   it under the terms of the GNU General Public License as published by
14058   the Free Software Foundation, either version 3 of the License, or
14059   (at your option) any later version.
14061   GNU Emacs is distributed in the hope that it will be useful,
14062   but WITHOUT ANY WARRANTY; without even the implied warranty of
14063   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14064   GNU General Public License for more details.
14066   You should have received a copy of the GNU General Public License
14067   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.