Remove tool_bar_redisplayed_once and associated code.
[emacs.git] / ChangeLog.2
blobd9e5aeed45926373442e14394bfd22f62e7e1121
1 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
3         Add missing *.pbm images
4         * etc/images/connect.pbm: New file.
5         * etc/images/custom/down-pushed.pbm: New file.
6         * etc/images/custom/down.pbm: New file.
7         * etc/images/custom/right-pushed.pbm: New file.
8         * etc/images/custom/right.pbm: New file.
9         * etc/images/describe.pbm: New file.
10         * etc/images/disconnect.pbm: New file.
11         * etc/images/ezimage/bits.pbm: New file.
12         * etc/images/ezimage/bitsbang.pbm: New file.
13         * etc/images/ezimage/box-minus.pbm: New file.
14         * etc/images/ezimage/box-plus.pbm: New file.
15         * etc/images/ezimage/box.pbm: New file.
16         * etc/images/ezimage/checkmark.pbm: New file.
17         * etc/images/ezimage/dir-minus.pbm: New file.
18         * etc/images/ezimage/dir-plus.pbm: New file.
19         * etc/images/ezimage/dir.pbm: New file.
20         * etc/images/ezimage/doc-minus.pbm: New file.
21         * etc/images/ezimage/doc-plus.pbm: New file.
22         * etc/images/ezimage/doc.pbm: New file.
23         * etc/images/ezimage/info.pbm: New file.
24         * etc/images/ezimage/key.pbm: New file.
25         * etc/images/ezimage/label.pbm: New file.
26         * etc/images/ezimage/lock.pbm: New file.
27         * etc/images/ezimage/mail.pbm: New file.
28         * etc/images/ezimage/page-minus.pbm: New file.
29         * etc/images/ezimage/page-plus.pbm: New file.
30         * etc/images/ezimage/page.pbm: New file.
31         * etc/images/ezimage/tag-gt.pbm: New file.
32         * etc/images/ezimage/tag-minus.pbm: New file.
33         * etc/images/ezimage/tag-plus.pbm: New file.
34         * etc/images/ezimage/tag-type.pbm: New file.
35         * etc/images/ezimage/tag-v.pbm: New file.
36         * etc/images/ezimage/tag.pbm: New file.
37         * etc/images/ezimage/unlock.pbm: New file.
38         * etc/images/gnus/important.pbm: New file.
39         * etc/images/gnus/mail-send.pbm: New file.
40         * etc/images/gnus/receipt.pbm: New file.
41         * etc/images/gnus/toggle-subscription.pbm: New file.
42         * etc/images/gnus/unimportant.pbm: New file.
43         * etc/images/gud/all.pbm: New file.
44         * etc/images/gud/rcont.pbm: New file.
45         * etc/images/gud/recstart.pbm: New file.
46         * etc/images/gud/recstop.pbm: New file.
47         * etc/images/gud/rfinish.pbm: New file.
48         * etc/images/gud/rnext.pbm: New file.
49         * etc/images/gud/rnexti.pbm: New file.
50         * etc/images/gud/rstep.pbm: New file.
51         * etc/images/gud/rstepi.pbm: New file.
52         * etc/images/gud/thread.pbm: New file.
53         * etc/images/lock-broken.pbm: New file.
54         * etc/images/lock-ok.pbm: New file.
55         * etc/images/lock.pbm: New file.
56         * etc/images/mail/copy.pbm: New file.
57         * etc/images/mail/forward.pbm: New file.
58         * etc/images/mail/not-spam.pbm: New file.
59         * etc/images/mail/outbox.pbm: New file.
60         * etc/images/mail/preview.pbm: New file.
61         * etc/images/mail/save-draft.pbm: New file.
62         * etc/images/mh-logo.pbm: New file.
63         * etc/images/mpc/add.pbm: New file.
64         * etc/images/mpc/ffwd.pbm: New file.
65         * etc/images/mpc/next.pbm: New file.
66         * etc/images/mpc/pause.pbm: New file.
67         * etc/images/mpc/play.pbm: New file.
68         * etc/images/mpc/prev.pbm: New file.
69         * etc/images/mpc/rewind.pbm: New file.
70         * etc/images/mpc/stop.pbm: New file.
71         * etc/images/redo.pbm: New file.
72         * etc/images/smilies/braindamaged.pbm: New file.
73         * etc/images/smilies/cry.pbm: New file.
74         * etc/images/smilies/dead.pbm: New file.
75         * etc/images/smilies/evil.pbm: New file.
76         * etc/images/smilies/forced.pbm: New file.
77         * etc/images/smilies/grin.pbm: New file.
78         * etc/images/smilies/indifferent.pbm: New file.
79         * etc/images/sort-ascending.pbm: New file.
80         * etc/images/sort-column-ascending.pbm: New file.
81         * etc/images/sort-criteria.pbm: New file.
82         * etc/images/sort-descending.pbm: New file.
83         * etc/images/sort-row-ascending.pbm: New file.
84         * etc/images/unchecked.pbm: New file.
85         * etc/images/zoom-in.pbm: New file.
86         * etc/images/README: Update instructions for PBM files.
88         Add separator.pbm tool-bar image
89         * etc/images/separator.pbm: New file.  Having it avoids the side
90         effect of changing the tool-bar height when the default font's size
91         changes and XPM image support is not available, due to the SPC
92         characters that are left in the Lisp string used to display the tool
93         bar, because there are no images to display instead of those SPC
94         characters.
96         Make show-paren-match face visible on mono-color displays
97         * lisp/faces.el (show-paren-match): Use the underline face for
98         mono-color displays.  (Bug#21481)
100 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
102         Don’t double-encode non-ASCII mail clipboard
103         * lisp/mail/mailclient.el (mailclient-send-it):
104         Also fix the case when mailclient-place-body-on-clipboard-flag
105         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
107 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
109         Adaot file-notify-tests.el test cases
110         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
111         * src/inotify.c (Finotify_valid_p): Adapt docstring.
112         * test/automated/file-notify-tests.el ()
113         (file-notify-test03-autorevert)
114         (file-notify-test04-file-validity)
115         (file-notify-test04-file-validity-remote)
116         (file-notify-test05-dir-validity)
117         (file-notify-test05-dir-validity-remote): Adapt docstring.
118         (file-notify-test04-file-validity): Let events arrive before
119         calling final `file-notify-valid-p'.  Do not ignore errors.
120         (file-notify-test05-dir-validity): Do not manipulate
121         `temporary-file-directory', it isn't necessary.  Let events arrive
122         before calling final `file-notify-valid-p'.  Do not ignore errors.
124 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
126         Don’t double-encode non-ASCII for mail client
127         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
128         Use RFC 6068’s list of unreserved characters.
129         (mailclient-send-it): When encoding the body as a URL,
130         first decode it as per Content-Type: and Content-Transfer-Encoding:,
131         as URLs must use percent-encoded UTF-8 (Bug#21471).
132         * doc/misc/url.texi (mailto): Update RFC number.
134 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
136         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist
138 2015-09-14  Alan Mackenzie  <acm@muc.de>
140         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs.
141         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
142         `cadr/car'.
144 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
146         Clarify documentation of char-table extra slots
147         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
148         slot numbers are zero-based.  (Bug#21467)
150 2015-09-14  Alan Mackenzie  <acm@muc.de>
152         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
153         Fixes debbugs#21449.
154         lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
155         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
156         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
157         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
158         Insert "\\|\\\\." into regexps which match symbols.
160 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
162         Improve the doc string of w32notify-valid-p
163         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
164         that removing a watch makes its object invalid.
166 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
168         Fix tests for file-notify-valid-p.
170 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
172         Report file-notify-error in w32notify.c
173         * src/w32notify.c (report_w32notify_error): New function.
174         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
175         errors, instead of calling report_file_error.  (Bug#21432)
177         Implement w32notify-valid-p
178         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
179         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
180         'identity'.
182 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
184         Test file-notify-valid-p.
185         * test/automated/file-notify-tests.el
186         (file-notify-test04-file-validity, file-notify-test05-dir-validity): New
187         tests.
189 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
191         Fix markup in ELisp manual
192         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
193         of the 'alpha' parameter value.  (Bug#21470)
195 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
197         Introduce `file-notify-valid-p'
198         * lisp/filenotify.el (file-notify-valid-p): New defun.
199         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
200         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
201         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
202         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
203         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
204         <file-notify-valid-p>: Add handler.
205         * lisp/net/tramp.el (tramp-file-name-for-operation):
206         Add `file-notify-valid-p'.
207         (tramp-handle-file-notify-valid-p): New defun.
208         * src/inotify.c (Finotify_valid_p): New defun.
209         (syms_of_inotify): Declare Sinotify_valid_p.
211 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
213         Port Unicode char detection to FreeBSD+svgalib
214         Problem reported by Ashish SHUKLA in:
215         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
216         * configure.ac: Check for struct unipair.unicode instead of for
217         <linux/kd.h>, since that’s more specific to what the code actually needs.
218         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
220         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
222 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
224         Fix vertical cursor motion across overlay strings with newlines
225         * src/indent.c (Fvertical_motion): Don't leave point in the middle
226         of an overlay string with newlines, as that will position the
227         cursor after the string at whatever column is there.  (Bug#21468)
229 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
231         Fix tests in file-notify-tests.el
232         * test/automated/file-notify-tests.el: Remove Tramp declarations.
233         (file-notify-test00-availability): Print remote command w/o Tramp
234         internal functions.
235         (file-notify-test02-events, file-notify-test02-events-remote):
236         Adapt docstring.
237         (file-notify-test03-autorevert): Use `format-message' when
238         inspecting *Messages* buffer.
240 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
242         Bind inhibit-modification-hooks rather than a/b-c-f
243         * lisp/wid-edit.el (widget-editable-list-insert-before)
244         (widget-editable-list-delete-at):
245         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
246         (cperl-font-lock-unfontify-region-function):
247         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
248         * lisp/obsolete/longlines.el (longlines-mode):
249         * lisp/obsolete/fast-lock.el (save-buffer-state):
250         * lisp/mouse.el (mouse-save-then-kill-delete-region):
251         * lisp/gnus/message.el (message-hide-headers):
252         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
253         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
254         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
255         than after/before-change-functions to nil.
257 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
259         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
260         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
261         the buffers, even if the forced redisplay is interrupted.
263         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
265         Merge syntax-propertize--done and parse-sexp-propertize-done
266         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
267         (syntax-propertize): Set syntax-propertize--done even if
268         syntax-propertize-function is nil.  Avoid recursive invocations.
269         (syntax-propertize-chunks): New var.
270         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
271         Simplify.
272         (parse-sexp-propertize-function): Don't set any more.
273         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
274         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
275         Call Qinternal__syntax_propertize instead of
276         Vparse_sexp_propertize_function.  Truncate e_property if needed.
277         (update_syntax_table_forward): Streamline.
278         (syms_of_syntax): Define Qinternal__syntax_propertize.
279         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
281 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
283         Prefer straight quoting in some text files
284         Mostly this just changes ` to ' in static text.  Some exceptions:
285         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
286         typically does that now.
287         * admin/quick-install-emacs (TRY, top level):
288         Use straight quoting in diagnostics.
289         * src/README: Fix working-directory confusion.
291         * CONTRIBUTE: Move send-email here from git-workflow.
293 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
295         Improve file notifications in Tramp
296         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
297         Set proper events to watch for.
298         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
299         watched events.
301 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
303         Fix NS build with --enable-checking='glyphs'
304         * src/nsfns.m (unwind_create_frame): Make the preprocessor
305         conditionals for referencing 'dpyinfo' consistent throughout the
306         function.  (Bug#21426)
308 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
310         Add seq-find
311         This function is similar to `seq-some' but returns the found element.
312         In the cases where nil can be the found element, a sentinel optional
313         argument can be provided to avoid ambiguities.
314         * lisp/emacs-lisp/seq.el (seq-find): New function.
315         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
316         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
317         seq-find.
319 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
321         Document file-notify--test-with-events.
322         * test/automated/file-notify-tests.el (file-notify--test-with-events):
323         Add docstring.
325 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
327         Report used native library in file-notify-tests.el
328         * test/automated/file-notify-tests.el
329         (tramp-get-remote-gvfs-monitor-dir)
330         (tramp-get-remote-inotifywait): Declare them.
331         (file-notify-test00-availability): Print used native library.
333 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
335         lisp/mpc.el (mpc--proc-connect): use file-name-absolute-p
337         lisp/mpc.el (mpc-file-local-copy): check for absolute path
339         lisp/mpc.el (mpc-file-local-copy): check more config locations
341 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
343         Improve documentation of categories
344         * doc/lispref/syntax.texi (Categories): Clarify the example of
345         using define-category and modify-category-entry.  (Bug#21448)
347 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
349         Revert some stray curved quotes I missed earlier
350         Problem reported by David Kastrup in:
351         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
352         * lisp/international/mule-cmds.el (leim-list-header):
353         Use format-message with an ASCII-only format.
355         Prefer NUMBERP to spelling it out
356         * src/editfns.c (styled_format):
357         * src/frame.h (NUMVAL):
358         * src/image.c (parse_image_spec):
359         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
360         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
361         * src/process.c (Fsignal_process):
362         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
363         * src/xfaces.c (check_lface_attrs):
364         * src/xselect.c (x_fill_property_data, x_send_client_event):
365         Use NUMBERP rather than INTEGERP || FLOATP.
367 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
369         Improve file-notify-tests
370         * test/automated/file-notify-tests.el: Use lexical-binding
371         (file-notify--test-cleanup): New function.
372         (file-notify-test00-availability, file-notify-test01-add-watch)
373         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
374         (file-notify--test-with-events): New macro.
375         (file-notify-test02-events): Use it.
377 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
379         Add patch-sending instructions to git-workflow
380         From a suggestion by Mitchel Humpherys in:
381         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
382         * admin/notes/git-workflow (Sending patches): New section.
384         Port to GIFLIB 5.0.6 and later
385         Problem reported by Mitchel Humpherys in:
386         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
387         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
388         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
389         (gif_load) [HAVE_GIF]: Use it.
391 2015-09-10  Glenn Morris  <rgm@gnu.org>
393         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
395 2015-09-09  Glenn Morris  <rgm@gnu.org>
397         * test/automated/file-notify-tests.el (file-notify-test02-events):
398         Fix recent change.
400 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
402         Refix movemail GCC pacification
403         Problem reported by Ken Brown in:
404         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
405         * lib-src/movemail.c (main): Fix previous change.
407 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
409         (time-to-seconds, time-less-p): Mark unused vars with underscore
410         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
411         Mark unused vars with underscore.
413         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
414         (parse_sexp_propertize): ...from here.
416         * lisp/filenotify.el: Use lexical-binding
417         (file-notify-add-watch): Avoid add-to-list.
419 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
421         Start checking event types in file-notify tests
422         * test/automated/file-notify-tests.el (file-notify--test-events): New
423         variable.
424         (file-notify--test-event-handler): Append received event to
425         file-notify--test-events for later analysis.
426         (file-notify-test02-events): Assert that the expected notifications have
427         arrived in the expected order.
429 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
431         Merge from gnulib and texinfo
432         This incorporates:
433         2015-08-03 Improve port of stdalign to C++11
434         * lib/stdalign.in.h: Copy from gnulib.
435         * doc/misc/texinfo.tex: Copy from texinfo.
437 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
439         Make syntax.c call syntax-propertize on demand
440         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
441         (parse-sexp-propertize-function): Use it.
442         (syntax-propertize): Disable parse-sexp-propertize-function.
443         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
444         New functions.
445         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
446         `parse-sexp-propertize-function'.
447         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
448         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
449         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
450         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
451         Don't assume `point' is set.
453 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
455         Fix indentation of an @example in ELisp manual
456         * doc/lispref/syntax.texi (Categories): Untabify the example.
457         (Bug#21448)
459 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
461         Define internal-char-font even if --without-x
462         The function is used now even in non-graphical environments.
463         Problem reported by Glenn Morris in:
464         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
465         * src/font.c (Finternal_char_font): Move here ...
466         * src/fontset.c (Finternal_char_font): ... from here.
468 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
470         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers): Remove warning
472 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
474         Fix display of complex local data types in GDB-MI
475         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
476         variable has no value, display "<complex data type>" as a
477         placeholder, instead of a confusing "nil".  (Bug#21438)
479 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
481         Remove redundant redefinition of seq-drop-while from seq.el
482         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
484 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
486         * lisp/emacs-lisp/package.el (package--ensure-init-file)
487         More robust check for `package-initialize' calls in init file.
488         This function accepts an optional argument, but calls passing
489         an argument would not have been detected.
491 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
493         Port movemail to RHEL 6 with --enable-gcc-warnings
494         * lib-src/movemail.c (main): Declare local only if needed.
496         Port recent Linux console changes to RHEL 6
497         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
499         Improvements for curved quotes on Linux consule
500         This should help Emacs work better out-of-the-box on Linux consoles,
501         which have only limited support for displaying Unicode characters.
502         Also, undo the recent change that caused text-quoting-style to
503         affect quote display on terminals, so that the two features are
504         independent.  See Alan Mackenzie in:
505         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
506         Finally, add a style parameter to startup--setup-quote-display,
507         so that this function can also be invoked after startup, with
508         different styles depending on user preference at the time.
509         * configure.ac: Check for linux/kd.h header.
510         * doc/emacs/display.texi (Text Display): Document quote display.
511         * doc/lispref/display.texi (Active Display Table):
512         * etc/NEWS:
513         * lisp/startup.el (startup--setup-quote-display, command-line):
514         text-quoting-style no longer affects quote display.
515         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
516         * lisp/international/mule-util.el (char-displayable-p):
517         * lisp/startup.el (startup--setup-quote-display):
518         On a text terminal supporting glyph codes, use the reported
519         glyph codes instead of the terminal coding system, as this
520         is more accurate on the Linux console.
521         * lisp/startup.el (startup--setup-quote-display):
522         New optional arg STYLE.
523         * src/fontset.c (Finternal_char_font):
524         Report glyph codes for a text terminal, if they are available.
525         Currently this is supported only for the Linux console.
526         * src/termhooks.h (struct terminal): New member glyph-code-table.
527         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
528         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
529         (terminal_glyph_code): New function.
531 2015-09-08  Juri Linkov  <juri@linkov.net>
533         * lisp/info.el (Info-fontify-node): Don't stop at the non-title underline.
534         (Bug#21433)
536 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
538         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec
540 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
542         Fix double-reporting of rename events with inotify
543         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
544         of rename events with inotify (bug#21435).
546 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
548         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360)
549         (tetris-mode-map): Use it.
551 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
553         Remove a few simple cases of global redisplay
554         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
555         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
556         rather than returning a "resized_p" boolean.
557         (redisplay_internal): Adjust call accordingly.
558         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
559         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
560         tracking of this undesirable situation.
562         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
563         * src/process.c (status_notify): Only set the update_mode_line on the
564         relevant buffers rather than setting it globally.
566 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
568         (electric-quote-mode): Activate everywhere in message-mode
569         * lisp/electric.el (electric-quote-post-self-insert-function):
570         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
572 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
574         Go back to grave quoting in source-code docstrings etc.
575         This reverts almost all my recent changes to use curved quotes
576         in docstrings and/or strings used for error diagnostics.
577         There are a few exceptions, e.g., Bahá’í proper names.
578         * admin/unidata/unidata-gen.el (unidata-gen-table):
579         * lisp/abbrev.el (expand-region-abbrevs):
580         * lisp/align.el (align-region):
581         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
582         (outlineify-sticky):
583         * lisp/apropos.el (apropos-library):
584         * lisp/bookmark.el (bookmark-default-annotation-text):
585         * lisp/button.el (button-category-symbol, button-put)
586         (make-text-button):
587         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
588         * lisp/calc/calc-embed.el (calc-do-embedded):
589         * lisp/calc/calc-ext.el (calc-user-function-list):
590         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
591         * lisp/calc/calc-help.el (calc-describe-key)
592         (calc-describe-thing, calc-full-help):
593         * lisp/calc/calc-lang.el (calc-c-language)
594         (math-parse-fortran-vector-end, math-parse-tex-sum)
595         (math-parse-eqn-matrix, math-parse-eqn-prime)
596         (calc-yacas-language, calc-maxima-language, calc-giac-language)
597         (math-read-giac-subscr, math-read-math-subscr)
598         (math-read-big-rec, math-read-big-balance):
599         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
600         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
601         (calc-auto-recompute):
602         * lisp/calc/calc-prog.el (calc-fix-token-name)
603         (calc-read-parse-table-part, calc-user-define-invocation)
604         (math-do-arg-check):
605         * lisp/calc/calc-store.el (calc-edit-variable):
606         * lisp/calc/calc-units.el (math-build-units-table-buffer):
607         * lisp/calc/calc-vec.el (math-read-brackets):
608         * lisp/calc/calc-yank.el (calc-edit-mode):
609         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
610         * lisp/calendar/appt.el (appt-display-message):
611         * lisp/calendar/diary-lib.el (diary-check-diary-file)
612         (diary-mail-entries, diary-from-outlook):
613         * lisp/calendar/icalendar.el (icalendar-export-region)
614         (icalendar--convert-float-to-ical)
615         (icalendar--convert-date-to-ical)
616         (icalendar--convert-ical-to-diary)
617         (icalendar--convert-recurring-to-diary)
618         (icalendar--add-diary-entry):
619         * lisp/calendar/time-date.el (format-seconds):
620         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
621         (timeclock-make-hours-explicit, timeclock-log-data):
622         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
623         (todo-item-mark, todo-check-format)
624         (todo-insert-item--next-param, todo-edit-item--next-key)
625         (todo-mode):
626         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
627         * lisp/cedet/mode-local.el (describe-mode-local-overload)
628         (mode-local-print-binding, mode-local-describe-bindings-2):
629         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
630         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
631         * lisp/cus-start.el (standard):
632         * lisp/cus-theme.el (describe-theme-1):
633         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
634         (custom--sort-vars-1, load-theme):
635         * lisp/descr-text.el (describe-text-properties-1, describe-char):
636         * lisp/dired-x.el (dired-do-run-mail):
637         * lisp/dired.el (dired-log):
638         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
639         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
640         (ad-disable-advice, ad-remove-advice, ad-set-argument)
641         (ad-set-arguments, ad--defalias-fset, ad-activate)
642         (ad-deactivate):
643         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
644         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
645         (byte-optimize-while, byte-optimize-apply):
646         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
647         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
648         (byte-compile-log-file, byte-compile-format-warn)
649         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
650         (byte-compile-cl-warn)
651         (byte-compile-warn-about-unresolved-functions)
652         (byte-compile-file, byte-compile--declare-var)
653         (byte-compile-file-form-defmumble, byte-compile-form)
654         (byte-compile-normal-call, byte-compile-check-variable)
655         (byte-compile-variable-ref, byte-compile-variable-set)
656         (byte-compile-subr-wrong-args, byte-compile-setq-default)
657         (byte-compile-negation-optimizer)
658         (byte-compile-condition-case--old)
659         (byte-compile-condition-case--new, byte-compile-save-excursion)
660         (byte-compile-defvar, byte-compile-autoload)
661         (byte-compile-lambda-form)
662         (byte-compile-make-variable-buffer-local, display-call-tree)
663         (batch-byte-compile):
664         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
665         * lisp/emacs-lisp/chart.el (chart-space-usage):
666         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
667         (check-declare-warn, check-declare-file)
668         (check-declare-directory):
669         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
670         (checkdoc-message-text-engine):
671         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
672         (cl--describe-class):
673         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
674         (cl--generic-describe, cl-generic-generalizers):
675         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
676         (cl-symbol-macrolet):
677         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
678         * lisp/emacs-lisp/copyright.el (copyright)
679         (copyright-update-directory):
680         * lisp/emacs-lisp/edebug.el (edebug-read-list):
681         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
682         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
683         (eieio-oref):
684         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
685         * lisp/emacs-lisp/eieio-speedbar.el:
686         (eieio-speedbar-child-make-tag-lines)
687         (eieio-speedbar-child-description):
688         * lisp/emacs-lisp/eieio.el (defclass, change-class):
689         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
690         (elint-init-form, elint-check-defalias-form)
691         (elint-check-let-form):
692         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
693         (ert-results-pop-to-backtrace-for-test-at-point)
694         (ert-results-pop-to-messages-for-test-at-point)
695         (ert-results-pop-to-should-forms-for-test-at-point)
696         (ert-describe-test):
697         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
698         (find-function-library):
699         * lisp/emacs-lisp/generator.el (iter-yield):
700         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
701         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
702         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
703         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
704         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
705         (advice--make, define-advice):
706         * lisp/emacs-lisp/package-x.el (package-upload-file):
707         * lisp/emacs-lisp/package.el (package-version-join)
708         (package-disabled-p, package-activate-1, package-activate)
709         (package--download-one-archive)
710         (package--download-and-read-archives)
711         (package-compute-transaction, package-install-from-archive)
712         (package-install, package-install-selected-packages)
713         (package-delete, package-autoremove, describe-package-1)
714         (package-install-button-action, package-delete-button-action)
715         (package-menu-hide-package, package-menu--list-to-prompt)
716         (package-menu--perform-transaction)
717         (package-menu--find-and-notify-upgrades):
718         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
719         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
720         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
721         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
722         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
723         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
724         (rx-form):
725         * lisp/emacs-lisp/smie.el (smie-config-save):
726         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
727         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
728         * lisp/emacs-lisp/testcover.el (testcover-1value):
729         * lisp/emacs-lisp/timer.el (timer-event-handler):
730         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
731         (viper-toggle-search-style, viper-kill-buffer)
732         (viper-brac-function):
733         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
734         * lisp/env.el (setenv):
735         * lisp/erc/erc-button.el (erc-nick-popup):
736         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
737         * lisp/eshell/em-dirs.el (eshell/cd):
738         * lisp/eshell/em-glob.el (eshell-glob-regexp)
739         (eshell-glob-entries):
740         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
741         * lisp/eshell/esh-opt.el (eshell-show-usage):
742         * lisp/facemenu.el (facemenu-add-new-face)
743         (facemenu-add-new-color):
744         * lisp/faces.el (read-face-name, read-face-font, describe-face)
745         (x-resolve-font-name):
746         * lisp/files-x.el (modify-file-local-variable):
747         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
748         (set-auto-mode, hack-one-local-variable--obsolete)
749         (dir-locals-set-directory-class, write-file, basic-save-buffer)
750         (delete-directory, copy-directory, recover-session)
751         (recover-session-finish, insert-directory)
752         (file-modes-char-to-who, file-modes-symbolic-to-number)
753         (move-file-to-trash):
754         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
755         * lisp/find-cmd.el (find-generic, find-to-string):
756         * lisp/finder.el (finder-commentary):
757         * lisp/font-lock.el (font-lock-fontify-buffer):
758         * lisp/format.el (format-write-file, format-find-file)
759         (format-insert-file):
760         * lisp/frame.el (get-device-terminal, select-frame-by-name):
761         * lisp/fringe.el (fringe--check-style):
762         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
763         * lisp/help-fns.el (help-fns--key-bindings)
764         (help-fns--compiler-macro, help-fns--parent-mode)
765         (help-fns--obsolete, help-fns--interactive-only)
766         (describe-function-1, describe-variable):
767         * lisp/help.el (describe-mode)
768         (describe-minor-mode-from-indicator):
769         * lisp/image.el (image-type):
770         * lisp/international/ccl.el (ccl-dump):
771         * lisp/international/fontset.el (x-must-resolve-font-name):
772         * lisp/international/mule-cmds.el (prefer-coding-system)
773         (select-safe-coding-system-interactively)
774         (select-safe-coding-system, activate-input-method)
775         (toggle-input-method, describe-current-input-method)
776         (describe-language-environment):
777         * lisp/international/mule-conf.el (code-offset):
778         * lisp/international/mule-diag.el (describe-character-set)
779         (list-input-methods-1):
780         * lisp/mail/feedmail.el (feedmail-run-the-queue):
781         * lisp/mouse.el (minor-mode-menu-from-indicator):
782         * lisp/mpc.el (mpc-playlist-rename):
783         * lisp/msb.el (msb--choose-menu):
784         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
785         * lisp/net/imap.el (imap-interactive-login):
786         * lisp/net/mairix.el (mairix-widget-create-query):
787         * lisp/net/newst-backend.el (newsticker--sentinel-work):
788         * lisp/net/newst-treeview.el (newsticker--treeview-load):
789         * lisp/net/rlogin.el (rlogin):
790         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
791         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
792         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
793         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
794         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
795         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
796         (org-babel-goto-named-result):
797         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
798         * lisp/org/ob-ref.el (org-babel-ref-resolve):
799         * lisp/org/org-agenda.el (org-agenda-prepare):
800         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
801         (org-clock-resolve):
802         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
803         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
804         * lisp/org/org-habit.el (org-habit-parse-todo):
805         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
806         (org-mouse-context-menu):
807         * lisp/org/org-table.el (org-table-edit-formulas):
808         * lisp/org/ox.el (org-export-async-start):
809         * lisp/proced.el (proced-log):
810         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
811         (ada-check-matching-start, ada-goto-matching-start):
812         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
813         * lisp/progmodes/ada-xref.el (ada-find-executable):
814         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
815         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
816         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
817         (flymake-start-syntax-check-process):
818         * lisp/progmodes/python.el (python-shell-get-process-or-error)
819         (python-define-auxiliary-skeleton):
820         * lisp/progmodes/sql.el (sql-comint):
821         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
822         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
823         * lisp/recentf.el (recentf-open-files):
824         * lisp/replace.el (query-replace-read-from)
825         (occur-after-change-function, occur-1):
826         * lisp/scroll-bar.el (scroll-bar-columns):
827         * lisp/server.el (server-get-auth-key):
828         * lisp/simple.el (execute-extended-command)
829         (undo-outer-limit-truncate, list-processes--refresh)
830         (compose-mail, set-variable, choose-completion-string)
831         (define-alternatives):
832         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
833         (command-line-1):
834         * lisp/subr.el (noreturn, define-error, add-to-list)
835         (read-char-choice, version-to-list):
836         * lisp/term/common-win.el (x-handle-xrm-switch)
837         (x-handle-name-switch, x-handle-args):
838         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
839         * lisp/textmodes/reftex-ref.el (reftex-label):
840         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
841         * lisp/textmodes/two-column.el (2C-split):
842         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
843         (tutorial--find-changed-keys):
844         * lisp/type-break.el (type-break-noninteractive-query):
845         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
846         (wdired-do-perm-changes):
847         * lisp/whitespace.el (whitespace-report-region):
848         Prefer grave quoting in source-code strings used to generate help
849         and diagnostics.
850         * lisp/faces.el (face-documentation):
851         No need to convert quotes, since the result is a docstring.
852         * lisp/info.el (Info-virtual-index-find-node)
853         (Info-virtual-index, info-apropos):
854         Simplify by generating only curved quotes, since info files are
855         typically that ways nowadays anyway.
856         * lisp/international/mule-diag.el (list-input-methods):
857         Don’t assume text quoting style is curved.
858         * lisp/org/org-bibtex.el (org-bibtex-fields):
859         Revert my recent changes, going back to the old quoting style.
861 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
863         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling
864         (package--autoloads-file-name)
865         (package--activate-autoloads-and-load-path): New function.
866         (package-activate-1): Delegate autoloading and load-path
867         configuration to `package--activate-autoloads-and-load-path'.
868         (package--compile): Before compilation, call
869         `package--activate-autoloads-and-load-path' instead of
870         `package-activate-1'.
872 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
874         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403)
876 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
878         Fix deletion of symlinks to directories on MS-Windows
879         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
880         symlink to a directory, try again with 'rmdir'.
881         (is_symlink): If the argument is a symlink to a directory, set a
882         bit in the return value to indicate that fact.
884 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
886         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
887         When `package-initialize' is called as part of loading the init file,
888         the user probably doesn't want it to be called again afterwards. In this
889         situation, `package-initialize' now sets `package-enable-at-startup' to
890         nil to prevent that. The user can have the old behaviour by setting this
891         variable to t after the call to `package-initialize'.  (Bug#21423)
892         * doc/emacs/package.texi (Package Installation): Document it
893         * doc/lispref/package.texi (Packaging Basics): Document it
894         * etc/NEWS: Document it
896 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
898         Bump version of ntlm.el to 2.00
899         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.  Add comm
900         keyword.
902 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
904         * doc/misc/gnus.texi (Mail Source Specifiers):
905         Allow :mailbox to be a list.
907 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
909         Allow even one non-regular character before the implicit tag name
910         * lisp/progmodes/etags.el (etags-tags-completion-table):
911         Allow even one non-regular character before the implicit tag name.
912         Reported at http://emacs.stackexchange.com/questions/15269/.
914 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
916         Add support for NTLMv2 authentication
917         * net/ntlm.el (ntlm): New customization group.
918         (ntlm-compatibility-level): New defcustom.
919         (ntlm-compute-timestamp): New function.
920         (ntlm-generate-nonce): Likewise.
921         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
923 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
925         * lisp/emacs-lisp/package.el: Rename custom faces
926         All of the recently introduced faces, like `package-name-face', have
927         been renamed to no end in `-face' to comply with the convention
928         described in (info "(elisp) Defining Faces").
929         (package-name, package-description)
930         (package-status-built-in, package-status-external)
931         (package-status-available, package-status-new)
932         (package-status-held, package-status-disabled)
933         (package-status-installed, package-status-dependency)
934         (package-status-unsigned, package-status-incompat)
935         (package-status-avail-obso): New faces.
936         (package-menu--print-info-simple): Use them.
938 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
940         mail-source.el: Make the imap mail-source's :mailbox handle a list
941         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
942         Allow :mailbox to be  a list.
944 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
946         nnimap.el:  Handle nil arg to nnimap-request-group
947         * lisp/gnus/nnimap.el (nnimap-request-group):  Handle nil "info" arg.
948         This arg isn't always passed in, check it's not nil before making it
949         into a list.  The active arg will also be nil if the group is new,
950         check for that.
952 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
954         File notifications: Support renaming over directory boundaries
955         * lisp/filenotify.el (file-notify-handle-event):
956         (file-notify--pending-event): Adapt docstring.
957         (file-notify--descriptor, file-notify-callback): Reimplement in
958         order to support renaming over directory boundaries.
959         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
960         * doc/lispref/os.texi (File Notifications): Remove limitation of
961         file renaming to the same directory.
963 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
965         Spelling fix (Bug#21420)
967 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
969         Improve the semantic of map-some
970         Update map-some to return the returned by the predicate, similar to
971         seq-some.
972         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
973           return value of the predicate.
974         * test/automated/map-tests.el (test-map-some): Update the test to check
975           for non-nil values only.
977         Rename map-contains-key-p and map-some-p
978         Remove the "-p" suffix from both function names.
979         * lisp/emacs-lisp/map.el (map-contains-key, map-some): Rename the functions.
980         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
981           Update both test functions.
983         Improve the semantic of seq-some
984         Update seq-some to return non-nil if the predicate returns non-nil for
985         any element of the seq, in which case the returned value is the one
986         returned by the predicate.
987         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
988           docstring.
989         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
990         * doc/lispref/sequences.texi (Sequence Functions): Update the
991           documentation for seq-some.
993         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
994         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
995           without the "-p" prefix.
996         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
997           the tests accordingly.
998         * doc/lispref/sequences.texi (Sequence Functions): Update the
999           documentation for seq.el.
1001 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
1003         text-quoting-style for usage of fn names with ‘’
1004         * lisp/help.el (help--docstring-quote): Don’t assume
1005         text-quoting-style is ‘curve’ when generating usage strings for
1006         functions whose names contain curved quotes.
1008 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
1010         Fix fix for describe-function keybinding confusion
1011         This fixes a bug introduced by the previous patch.
1012         * lisp/help-fns.el (help-fns--signature):
1013         Last arg of help-fns--signature is now a buffer, or nil if a
1014         raw signature is wanted.  All callers changed.
1015         (describe-function-1): Use this to do the right thing with signatures.
1017 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
1019         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
1021         Use PAT rather than UPAT in pcase macros
1022         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
1023         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
1024           than UPAT.
1026 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
1028         Fix describe-function keybinding confusion
1029         * lisp/help-fns.el (describe-function-1): Compute signature
1030         in the original buffer, not in standard-output, so that
1031         substitute-command-keys uses the proper keybindings.
1032         This fixes Bug#21412, introduced in commit
1033         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
1035 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
1037         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
1039 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
1041         Avoid read error messages from 'inotify'
1042         * src/process.c (wait_reading_process_output): Add a
1043         'tls_available' set and manipulate it instead of 'Available' when
1044         checking TLS inputs.  Assign the value to 'Available' only if we
1045         find any TLS data waiting to be read.  This avoids error messages
1046         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
1048 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
1050         Avoid errors in thing-at-point with 2nd argument non-nil
1051         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
1052         sequences.  (Bug#21391)
1054 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
1056         Fix segfaults due to using a stale face ID
1057         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
1058         (display_echo_area_1, redisplay_internal): Call it to avoid
1059         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
1060         faces, which could case a segfault if the frame's face cache was
1061         freed since the last redisplay.  (Bug#21394)
1062         * src/xfaces.c (free_realized_faces): Call forget_escape_and_glyphless_faces.
1063         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
1065 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
1067         Fix minor problems with " in manual
1069 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
1071         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
1072         multi-hop files.
1074 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
1076         Support automated ‘make check’ in non-C locale
1077         This lets the builder optionally test Emacs behavior in other locales.
1078         The C locale is still the default for tests.
1079         * test/automated/Makefile.in (TEST_LOCALE): New macro.
1080         (emacs): Use it.
1081         * test/automated/flymake-tests.el (flymake-tests--current-face):
1082         Use C locale for subprocesses so that tests behave as expected.
1083         * test/automated/python-tests.el:
1084         (python-shell-prompt-validate-regexps-1)
1085         (python-shell-prompt-validate-regexps-2)
1086         (python-shell-prompt-validate-regexps-3)
1087         (python-shell-prompt-validate-regexps-4)
1088         (python-shell-prompt-validate-regexps-5)
1089         (python-shell-prompt-validate-regexps-6)
1090         (python-shell-prompt-set-calculated-regexps-1):
1091         Adjust expected output to match locale.
1092         * test/automated/tildify-tests.el (tildify-test--test)
1093         (tildify-space-test--test, tildify-space-undo-test--test):
1094         This test assumes UTF-8 encoding.
1096 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
1098         Fix some more docstring etc. quoting problems
1099         Mostly these fixes prevent the transliteration of apostrophes
1100         that should stay apostrophes.  Also, prefer curved quotes in
1101         Bahá’í proper names, as that’s the preferred Bahá’í style and
1102         these names are chock-full of non-ASCII characters anyway.
1103         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
1104         (eieio-defclass-internal):
1105         * lisp/emacs-lisp/eieio.el (defclass):
1106         * lisp/hi-lock.el (hi-lock-mode):
1107         Don’t transliterate Lisp apostrophes when generating a
1108         doc string or diagnostic.
1109         * lisp/international/mule-diag.el (list-coding-systems-1):
1110         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
1111         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
1112         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
1113         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
1114         Substitute quotes before putting them in the help buffer.
1116 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
1118         Re-add the notion of echo_prompt lost in the translation
1119         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
1120         echo_prompt which contains the actual string.  Update all uses.
1121         * src/keyboard.c (kset_echo_prompt): New function.
1122         (echo_update): Add echo_prompt at the very beginning.
1123         (read_char): Remove workaround for bug#19875, not needed any more.
1124         (read_key_sequence): Set echo_prompt rather than echo_string (bug#21403).
1125         (mark_kboards): Mark echo_prompt.
1127         Fix disassembly of non-compiled lexical functions (bug#21377)
1128         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
1129         * lisp/emacs-lisp/disass.el: Use lexical-binding.
1130         (disassemble): Recognize `closure's as well.
1131         (disassemble-internal): Use indirect-function and
1132         help-function-arglist, and accept `closure's.
1133         (disassemble-internal): Use interactive-form.
1134         (disassemble-1): Use functionp.
1136         (tex--prettify-symbols-compose-p): Don't compose in verbatim blocks!
1137         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
1138         Don't compose inside verbatim blocks!
1140 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
1142         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
1143         (bug#19441)
1145         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394)
1147 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
1149         vc-git-mode-line-string: Explicitly re-apply the face
1150         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
1151         the face (bug#21404).
1153 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
1155         Treat initial-scratch-message as a doc string
1156         * doc/emacs/building.texi (Lisp Interaction):
1157         * doc/lispref/os.texi (Startup Summary):
1158         * etc/NEWS: Document this.
1159         * lisp/startup.el (initial-scratch-message):
1160         Look up find-file’s key rather than hardcoding it.
1161         (command-line-1): Substitute the doc string.
1162         This also substitutes the quotes, which will help test display
1163         quoting at startup.
1165         Fix describe-char bug with glyphs on terminals
1166         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
1167         buffers too, so don’t treat them differently from graphic displays.
1168         Without this fix, describe-char would throw an error on a terminal
1169         if given a glyph with a non-default face.
1171         Follow text-quoting-style in display table init
1172         This attempts to fix a problem reported by Alan Mackenzie in:
1173         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
1174         * doc/lispref/display.texi (Active Display Table):
1175         Mention how text-quoting-style affects it.
1176         * doc/lispref/help.texi (Keys in Documentation):
1177         Say how to set text-quoting-style in ~/.emacs.
1178         * etc/NEWS: Document the change.
1179         * lisp/startup.el (startup--setup-quote-display):
1180         Follow user preference if text-quoting-style is set.
1181         (command-line): Setup quote display again if user expresses
1182         a preference in .emacs.
1184 2015-09-02  K. Handa  <handa@gnu.org>
1186         Fix typo
1187         * ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask -> OTF_positioning_type_components_mask.
1189         fix previous change
1190         * ftfont.c (ftfont_drive_otf): Remember some bits of
1191         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
1193 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
1195         * lisp/vc/vc-hooks.el (vc-refresh-state): New command
1196         (vc-refresh-state): Rename from vc-find-file-hook and make interactive.
1197         (vc-find-file-hook): Redefine as obsolete alias.
1199 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
1201         Escape ` and ' in doc
1202         Escape apostrophes and grave accents in docstrings if they are
1203         are supposed to stand for themselves and are not quotes.  Remove
1204         apostrophes from docstring examples like ‘'(calendar-nth-named-day
1205         -1 0 10 year)’ that confuse source code with data.  Do some other
1206         minor docstring fixups as well, e.g., insert a missing close
1207         quote.
1209 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
1211         Generalize the prefix-command machinery of C-u
1212         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
1213         (prefix-command-preserve-state-hook): New hooks.
1214         (internal-echo-keystrokes-prefix): New function.
1215         (prefix-command--needs-update, prefix-command--last-echo): New vars.
1216         (prefix-command-update, prefix-command-preserve): New functions.
1217         (reset-this-command-lengths): New compatibility definition.
1218         (universal-argument--mode): Call prefix-command-update.
1219         (universal-argument, universal-argument-more, negative-argument)
1220         (digit-argument): Call prefix-command-preserve-state.
1221         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
1222         the "prefix argument" to echo.
1223         (this_command_key_count_reset, before_command_key_count)
1224         (before_command_echo_length): Delete variables.
1225         (echo_add_key): Always add a space.
1226         (echo_char): Remove.
1227         (echo_dash): Don't give up when this_command_key_count is 0, since that
1228         is now the case after a prefix command.
1229         (echo_update): New function, extracted from echo_now.
1230         (echo_now): Use it.
1231         (add_command_key, read_char, record_menu_key): Remove old disabled code.
1232         (command_loop_1): Don't refrain from pushing an undo boundary when
1233         prefix-arg is set.  Remove other prefix-arg special case, now handled
1234         directly in the prefix commands instead.  But call echo_now if there's
1235         a prefix state to echo.
1236         (read_char, record_menu_key): Use echo_update instead of echo_char.
1237         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
1238         (Freset_this_command_lengths): Delete function.
1239         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
1240         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
1241         * lisp/simple.el: Use those new hooks for C-u.
1242         (universal-argument--description): New function.
1243         (prefix-command-echo-keystrokes-functions): Use it.
1244         (universal-argument--preserve): New function.
1245         (prefix-command-preserve-state-hook): Use it.
1246         (command-execute): Call prefix-command-update if needed.
1247         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
1248         (kmacro-step-edit-prefix-index): Delete variables.
1249         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
1250         support for prefix arg commands.
1251         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
1252         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
1253         (cua--shift-control-prefix): Use prefix-command-preserve-state.
1254         Remove now unused arg `arg'.
1255         (cua--prefix-override-handler, cua--prefix-repeat-handler)
1256         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
1257         Update accordingly.
1258         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
1259         any more.
1260         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
1261         if the mark is not set.
1263 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
1265         Rework quoting in tutorial
1266         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
1267         (if in more detail, type-of-animal in detail, else): Rework the
1268         early example to use " rather than ' so that we don’t burden
1269         complete novices with the low-priority detail of text quoting style.
1270         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
1271         (kill-new function, kill-ring-yank-pointer)
1272         (Complete forward-sentence, Loading Files)
1273         (Code for current-kill, Code for current-kill, yank):
1274         Resurrect the Emacs 22 versions of the code, which uses grave
1275         quoting style in doc strings.
1276         (Complete zap-to-char): Mention how quoting works in doc strings.
1278         Setup quote display only if interactive
1279         * lisp/startup.el (command-line):
1280         Skip call to startup--setup-quote-display if noninteractive.
1281         Without this change, python-shell-prompt-validate-regexps-1
1282         fails in test/automated/python-tests.el when run in an
1283         en_US.utf8 locale on Fedora.
1285 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
1287         Use defalias at the top level
1288         * lisp/gnus/gnus-util.el (gnus-format-message):
1289         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
1290         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
1292 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
1294         terminal-init-w32console mimicks command-line
1295         Problem reported by Eli Zaretskii.
1296         * lisp/startup.el (startup--setup-quote-display):
1297         New function, refactored from a part of ‘command-line’.
1298         (command-line): Use it.
1299         * lisp/term/w32console.el (terminal-init-w32console):
1300         Use it, so that this function stays consistent with ‘command-line’.
1302         Display replacement quotes with shadow glyphs
1303         * lisp/startup.el (command-line): When displaying ASCII
1304         replacements for curved quotes, use a shadow glyph instead of a
1305         regular one, to avoid ambiguity.
1307 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
1309         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
1311 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
1313         Docstring fixes re quotes in C code
1314         Fix some docstring quoting problems, mostly by escaping apostrophe.
1316 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
1318         Some Tramp password fixes
1319         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
1320         of the hops.
1321         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
1322         at the beginning of the command.  Otherwise, it could be
1323         interpreted as password prompt if the remote host echoes the
1324         command.
1325         (tramp-remote-coding-commands): Add "openssl enc -base64".
1327 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
1329         Make vc-git-working-revision always return the commit hash
1330         * lisp/vc/vc-git.el (vc-git-working-revision):
1331         Return the commit hash (bug#21383).
1332         (vc-git--symbolic-ref): New function, extracted from above.
1333         (vc-git-mode-line-string): Use it.
1335 2015-09-01  K. Handa  <handa@gnu.org>
1337         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs.
1338         * ftfont.c (MFLTGlyphFT): New type.
1339         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
1340         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
1341         elements in the array MFLTGlyphString.glyphs.
1343 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
1345         Improve comments in elisp-mode.el, elisp-mode-tests.el
1346         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
1348         Delete Emacs 25 test in mode-local.el
1349         * lisp/cedet/mode-local.el (describe-mode-local-overload): Fix missed an
1350         edit in previous commit.
1352         Show all known mode-local overrides in *Help*
1353         * lisp/cedet/mode-local.el (describe-mode-local-overload): Assume Emacs
1354         25. Add all known mode-local overrides.
1356 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
1358         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
1359         Ensure that the article where the search word is found is displayed
1360         and pointed to in the summary buffer.
1362 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
1364         * lisp/newcomment.el (comment-dwim): Use `use-region-p'
1365         When the region is active, but is empty (length 0), act as though
1366         the region was not active; that is, put a comment at the end of
1367         the line.  (Bug#21119)
1369 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
1371         Port tls.el to older Emacs
1372         * lisp/net/tls.el (tls-format-message):
1373         Alias to format-message, or format if not available.
1374         (open-tls-stream): Use it.
1376 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
1378         hideif.el: Recognize .h++ as C++ header.
1379         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
1381         isearch: Document character folding mode.
1382         * isearch.el (isearch-forward): Mention `isearch-toggle-character-fold'
1383         in docstring.
1385 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
1387         Quoting fixes in ERC and Eshell
1388         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
1389         * lisp/erc/erc-backend.el (define-erc-response-handler):
1390         * lisp/erc/erc-fill.el (erc-fill-static-center):
1391         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
1392         * lisp/eshell/em-glob.el (eshell-glob-entries):
1393         * lisp/eshell/em-hist.el (eshell-save-some-history):
1394         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
1395         (eshell-shuffle-files):
1396         * lisp/eshell/esh-cmd.el (eshell-do-eval):
1397         * lisp/eshell/esh-proc.el (eshell-process-interact)
1398         (eshell-query-kill-processes):
1399         Respect ‘text-quoting-style’ in diagnostics and doc strings.
1401         Quoting fixes in Gnus
1402         * lisp/gnus/gnus-agent.el:
1403         (gnus-agent-possibly-synchronize-flags-server):
1404         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
1405         * lisp/gnus/gnus-eform.el (gnus-edit-form):
1406         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
1407         (gnus-group-nnimap-edit-acl):
1408         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
1409         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
1410         * lisp/gnus/message.el (message-strip-subject-encoded-words)
1411         (message-check-recipients, message-send-form-letter):
1412         * lisp/gnus/mm-decode.el (mm-display-part):
1413         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
1414         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
1415         (mml-smime-get-ldap-cert):
1416         * lisp/gnus/spam-report.el (spam-report-process-queue):
1417         Respect ‘text-quoting-style’ in diagnostics.
1418         * lisp/gnus/gnus-art.el (article-display-face)
1419         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
1420         Use straight quoting in email.
1421         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
1422         Escape apostrophes in doc strings.
1424         Quoting fixes in lisp mail, mh-e, net, url
1425         * lisp/mail/emacsbug.el (report-emacs-bug)
1426         (report-emacs-bug-hook): Use straight quotes in outgoing email,
1427         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
1428         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
1429         * lisp/mail/rmailout.el (rmail-output-read-file-name):
1430         * lisp/net/imap.el (imap-interactive-login):
1431         * lisp/net/tls.el (open-tls-stream):
1432         * lisp/url/url-auth.el (url-register-auth-scheme):
1433         Respect ‘text-quoting-style’ in diagnostics.
1434         * lisp/mh-e/mh-e.el (mh-sortm-args):
1435         Quote docstring example using text quotes, not as a Lisp quote.
1437 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
1439         Fix some byte-compiler warnings in EDE
1440         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
1441         existing autoloader list, rather than add to it.
1442         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
1443         argument to eieio class constructor.
1444         (ede-show-supported-projects): New.
1445         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
1446         with (oref ... name).
1447         (ede-auto-load-project): Use slot name, not initarg key.
1448         * lisp/cedet/ede/generic.el (ede-generic-load,
1449         ede-generic-find-matching-target): Use slot name, not initarg key.
1450         (ede-find-target): Use oref-default on class name.
1451         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
1452         class constructor.
1453         (ede-enable-generic-projects): Make project type names unique.
1455 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
1457         Fix directory accessibility tests for w32 network volumes
1458         * src/w32.c (faccessat): Don't fail with network volumes without a
1459         share.
1460         (w32_accessible_directory_p): Handle network volumes without a
1461         share.
1463         Fix handling long file names in readdir on MS-Windows
1464         * src/w32.c (sys_readdir): Append "\*" to the directory after
1465         converting it to UTF-16/ANSI, not before, to avoid overflowing the
1466         260-character limit on file names in filename_to_utf16/ansi.
1468         Make file-accessible-directory-p reliable on MS-Windows
1469         * src/w32.c (w32_accessible_directory_p): New function.
1470         * src/w32.h (w32_accessible_directory_p): Add prototype.
1471         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
1472         w32_accessible_directory_p to test a directory for accessibility
1473         by the current user.  (Bug#21346)
1474         (Ffile_accessible_directory_p): Remove the w32 specific caveat
1475         from the doc string.
1477 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
1479         Don't call do_pending_window_change in signal handlers (Bug#21380)
1480         * src/gtkutil.c (xg_frame_resized):
1481         * src/xterm.c (x_set_window_size):
1482         * src/w32term.c (x_set_window_size): Don't call
1483         do_pending_window_change.
1485 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
1487         Quoting fixes in lisp/org
1488         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
1489         (org-tags-view):
1490         * lisp/org/org-capture.el (org-capture-mode)
1491         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
1492         (org-ctags-ask-append-topic):
1493         * lisp/org/org.el (org-time-string-to-time)
1494         (org-time-string-to-absolute):
1495         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
1496         (org-ctags-ask-append-topic):
1497         * lisp/org/org.el (org-time-string-to-time)
1498         (org-time-string-to-absolute):
1499         Respect ‘text-quoting-style’ in diagnostics.
1500         * lisp/org/org-agenda.el (org-agenda-custom-commands)
1501         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
1502         * lisp/org/org-capture.el (org-capture-fill-template):
1503         Avoid contraction in output file that might be ASCII.
1504         * lisp/org/org-compat.el (format-message):
1505         Define if not already defined, for backward compatibility.
1506         * lisp/org/org-src.el (org-edit-src-save):
1507         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
1508         Escape apostrophes in diagnostics.
1510         Treat “instead” strings as docstrings
1511         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
1512         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
1513         Substitute quotes in instead strings.
1515 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
1517         Better documentation of seq-let
1518         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
1519         documentation of seq-let.
1521 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
1523         * lisp/international/ccl.el: Fix quoting.
1525         Quoting fixes in lisp/international and lisp/leim
1526         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
1527         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
1528         * lisp/international/mule-cmds.el:
1529         (select-safe-coding-system-interactively, leim-list-file-name):
1530         * lisp/international/quail.el (quail-use-package, quail-help):
1531         * lisp/international/titdic-cnv.el (tit-process-header)
1532         (miscdic-convert):
1533         Respect text quoting style in doc strings and diagnostics.
1534         * lisp/international/quail.el (lisp/international/quail.el):
1535         * lisp/leim/quail/ethiopic.el ("ethiopic"):
1536         Escape apostrophes in doc strings.
1538         Make ‘text-quoting-style’ a plain defvar
1539         It doesn’t need customization, as it’s likely useful only by experts.
1540         Suggested by Stefan Monnier in:
1541         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
1542         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
1544         Quoting fixes in lisp/textmodes
1545         * lisp/textmodes/bibtex.el (bibtex-validate)
1546         (bibtex-validate-globally, bibtex-search-entries):
1547         * lisp/textmodes/ispell.el (ispell-command-loop):
1548         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
1549         * lisp/textmodes/texinfmt.el (texinfmt-version)
1550         (texinfo-format-region, texinfo-format-buffer-1):
1551         * lisp/textmodes/two-column.el (2C-split):
1552         Respect text quoting style in doc strings and diagnostics.
1553         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
1554         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
1555         Escape apostrophes in doc strings.
1557         Documentation fixes re quotes
1558         Prefer curved quotes in examples if users will typically see
1559         curved quotes when the examples run.
1560         Mention format-message when appropriate.
1561         Don’t use @code in examples.
1562         Quote an apostrophe with @kbd.
1564         Quoting fixes in lisp/progmodes
1565         * lisp/progmodes/cc-engine.el (c-bos-report-error):
1566         * lisp/progmodes/cpp.el (cpp-edit-reset):
1567         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
1568         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
1569         (etags-tags-apropos, list-tags, tags-apropos):
1570         * lisp/progmodes/executable.el (executable-set-magic):
1571         * lisp/progmodes/octave.el (octave-sync-function-file-names)
1572         (octave-help, octave-find-definition-default-filename)
1573         (octave-find-definition):
1574         Respect text quoting style in doc strings and diagnostics.
1575         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
1576         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
1577         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
1578         Escape apostrophes in doc strings.
1579         * lisp/progmodes/cmacexp.el (c-macro-expansion):
1580         Use straight quoting in ASCII comment.
1581         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
1582         (idlwave-pad-keyword):
1583         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
1584         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
1585         (vhdl-electric-semicolon, vhdl-electric-comma)
1586         (vhdl-electric-period, vhdl-electric-equal):
1587         Use directed quotes in diagnostics and doc strings.
1589 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
1591         Minor documentation and NEWS tweak
1592         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let): Add an index
1593         entry.
1595 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
1597         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
1598         Revert patch from 2015-08-24.  Tramp shall be have like for local files.
1599         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
1600         Adapt test.
1602 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
1604         Text quoting fixes in cedet, emulation, emacs-lisp
1605         * lisp/cedet/ede.el (ede-check-project-directory):
1606         * lisp/cedet/semantic/analyze/debug.el:
1607         (semantic-analyzer-debug-insert-include-summary):
1608         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
1609         * lisp/cedet/semantic/decorate/include.el:
1610         (semantic-decoration-unknown-include-describe)
1611         (semantic-decoration-all-include-summary):
1612         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
1613         * lisp/emulation/edt.el (edt-load-keys):
1614         * lisp/emulation/viper-cmd.el:
1615         (viper-display-current-destructive-command)
1616         (viper-query-replace, viper-brac-function):
1617         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
1618         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
1619         Respect text quoting style in doc string or diagnostic.
1620         * lisp/cedet/mode-local.el (describe-mode-local-overload):
1621         Use format-message to avoid overtranslating quotes.
1622         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
1623         Escape an apostrophe in a docstring.
1624         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
1626 2015-08-29  Daniel Colascione  <dancol@dancol.org>
1628         Fix which-func for curly quotes: look for symbol, not message
1629         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
1630         imenu-unavailable error symbol instead of trying to match message
1631         exactly.
1632         * lisp/imenu.el (imenu-unavailable): New error
1633         (imenu-unavailable-error): New function.
1635 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
1637         Fix Python tests on MS-Windows
1638         * test/automated/python-tests.el
1639         (python-shell-calculate-command-1): Run python-shell-interpreter
1640         through shell-quote-argument before comparing with what
1641         python-shell-calculate-command returns.
1642         (python-shell-calculate-pythonpath-1)
1643         (python-shell-calculate-pythonpath-2)
1644         (python-shell-calculate-process-environment-2): Use path-separator
1645         instead of a literal ':'.
1646         (python-shell-calculate-exec-path-2)
1647         (python-shell-calculate-exec-path-3)
1648         (python-shell-calculate-exec-path-4)
1649         (python-shell-with-environment-1)
1650         (python-shell-with-environment-2): Run "/env/bin" through
1651         expand-file-name before comparing with exec-path.  (Bug#21375)
1653 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1655         Use Core Text types/functions/variables/enumerators directly
1656         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
1657         (CharacterCollection): Remove typedefs.  All uses replaced with
1658         definitions.
1659         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
1660         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
1661         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
1662         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
1663         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
1664         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
1665         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
1666         definitions.
1667         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
1668         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
1669         (MAC_FONT_FORMAT_BITMAP)
1670         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
1671         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.  All
1672         uses replaced with definitions.
1673         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
1674         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
1675         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault): Add
1676         compatibility enumerators for older versions.
1677         (mac_font_descriptor_create_with_attributes)
1678         (mac_font_descriptor_create_matching_font_descriptors)
1679         (mac_font_descriptor_create_matching_font_descriptor)
1680         (mac_font_descriptor_copy_attribute)
1681         (mac_font_descriptor_supports_languages)
1682         (mac_font_create_with_name, mac_font_get_size)
1683         (mac_font_copy_family_name, mac_font_copy_character_set)
1684         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
1685         (mac_font_get_descent, mac_font_get_leading)
1686         (mac_font_get_underline_position)
1687         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
1688         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
1689         replaced with definitions.
1690         (mac_font_create_preferred_family_for_attributes)
1691         (mac_font_get_advance_width_for_glyph)
1692         (mac_font_get_bounding_rect_for_glyph)
1693         (mac_font_create_available_families, mac_font_shape): Remove
1694         macros for renamed functions.
1695         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
1696         * src/macterm.m (mac_font_descriptor_supports_languages): Rename
1697         from mac_ctfont_descriptor_supports_languages.
1698         (mac_font_create_preferred_family_for_attributes): Rename from
1699         mac_ctfont_create_preferred_family_for_attributes.
1700         (mac_font_get_advance_width_for_glyph): Rename from
1701         mac_ctfont_get_advance_width_for_glyph.  Use
1702         kCTFontOrientationDefault also for older versions.
1703         (mac_font_get_bounding_rect_for_glyph): Rename from
1704         mac_ctfont_get_bounding_rect_for_glyph. Use
1705         kCTFontOrientationDefault also for older versions.
1706         (mac_font_create_available_families): Rename from
1707         mac_ctfont_create_available_families.
1708         (mac_font_equal_in_postscript_name): Rename from
1709         mac_ctfont_equal_in_postscript_name.  All uses changed.
1710         (mac_font_create_line_with_string_and_font): Rename from
1711         mac_ctfont_create_line_with_string_and_font.  All uses changed.
1712         (mac_font_shape): Rename from mac_ctfont_shape.
1713         (mac_font_family_compare): Remove unused declaration.
1715 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
1717         Fix minor text quoting in calc, calendar, vc
1718         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
1719         * lisp/calc/calc-help.el (calc-j-prefix-help):
1720         * lisp/calc/calc-misc.el (calc-help):
1721         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
1722         Escape an apostrophe in a docstring.
1723         * lisp/calc/calc-forms.el (calc-hms-notation):
1724         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
1725         Escape an apostrophe in a diagnostic.
1726         * lisp/calc/calc-misc.el (calc-help):
1727         * lisp/calendar/diary-lib.el (diary-include-files):
1728         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
1729         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
1730         * lisp/vc/ediff-diff.el (ediff-same-contents):
1731         * lisp/vc/ediff-merg.el (ediff-re-merge):
1732         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
1733         * lisp/vc/ediff-util.el (ediff-test-save-region)
1734         (ediff-status-info):
1735         * lisp/vc/ediff.el (ediff-merge-revisions)
1736         (ediff-merge-revisions-with-ancestor):
1737         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
1738         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
1739         Respect text quoting style in doc string or diagnostic.
1740         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
1741         * lisp/vc/add-log.el (change-log-goto-source):
1742         Avoid double-formatting.
1743         * lisp/vc/ediff-init.el (format-message):
1744         New backward-compatibility alias.
1746 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
1748         Fix minor text quoting problems in lisp top level
1749         * lisp/apropos.el (apropos-describe-plist):
1750         * lisp/cus-theme.el (customize-themes):
1751         * lisp/dired.el (dired-log):
1752         * lisp/help-fns.el (describe-variable):
1753         * lisp/hexl.el (hexl-insert-multibyte-char):
1754         * lisp/info.el (Info-finder-find-node):
1755         * lisp/json.el (json-read-string):
1756         * lisp/novice.el (disabled-command-function)
1757         (disabled-command-function):
1758         * lisp/startup.el (normal-mouse-startup-screen):
1759         * lisp/woman.el (WoMan-log, WoMan-warn):
1760         Respect text quoting style in doc string or diagnostic.
1761         * lisp/replace.el (replace-character-fold):
1762         * src/syntax.c (Fmodify_syntax_entry):
1763         Escape an apostrophe in a docstring.
1764         * lisp/tempo.el (tempo-define-template):
1765         Remove confusing apostrophe from docstring.
1766         * lisp/whitespace.el (whitespace-mark-x):
1767         Use directed quotes in docstring.
1769 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
1771         Fix indentation rule in css-mode
1772         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
1773         brackets in presence of pseudo-selectors.  (Bug#21328)
1775 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
1777         Fix a bug in recording a macro while flyspell-mode is active
1778         * lisp/subr.el (sit-for): Don't call read-event when recording a
1779         macro.  (Bug#21329)
1781 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
1783         Tweak startup screen quoting
1784         * lisp/startup.el (normal-splash-screen): Use standard
1785         "M-" abbrevation rather than a confusingly-different one.
1786         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
1788 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
1790         Add test case for ‘format’ bug and refactor
1791         * src/editfns.c (styled_format): Refactor internally, mostly by
1792         moving declarations closer to uses.  This should not affect behavior.
1793         * test/automated/textprop-tests.el (textprop-tests-format): New test.
1795         Fix ‘format’ bug with property offsets
1796         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
1797         bug in calculating string property offsets (Bug#21351).
1799         Use straight quotes in lib-src diagnostics
1800         These auxiliary programs can’t use Emacs’s text-quoting-style,
1801         and it’s too much trouble to redo that mechanism by hand.
1802         So just use straight quotes for now.
1803         * lib-src/ebrowse.c (main):
1804         * lib-src/emacsclient.c (decode_options, main):
1805         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
1806         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
1807         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
1808         (none_help, print_language_names, print_help, add_regex)
1809         (suggest_asking_for_help):
1810         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
1811         Use straight quotes in diagnostics.
1813         ‘text-quoting-style’ fixes for admin
1814         * admin/admin.el (cusver-scan, cusver-check):
1815         * admin/authors.el (authors-canonical-file-name):
1816         * admin/bzrmerge.el (bzrmerge-missing):
1817         Respect ‘text-quoting-style’ in diagnostics.
1819 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
1821         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
1822         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
1823         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
1824         * doc/lispref/internals.texi (Writing Emacs Primitives):
1825         * etc/NEWS:
1826         Document the change.
1827         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
1828         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
1829         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
1830         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
1831         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
1832         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
1833         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
1834         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
1835         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
1836         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
1837         Remove.  All uses removed.  The code now assumes
1838         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
1839         * src/bytecode.c (relocate_byte_stack):
1840         Rename from unmark_byte_stack, since it now only relocates.
1841         All callers changed.
1842         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
1843         with GCPROs removed.
1844         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
1845         * test/automated/finalizer-tests.el (finalizer-basic)
1846         (finalizer-circular-reference, finalizer-cross-reference)
1847         (finalizer-error):
1848         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
1849         Remove tests, as they depend on gc-precise.
1851 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
1853         Improve seq-concatenate for new sequence types
1854         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
1855         ensure that concatenation happens on sequences only.  This makes it
1856         possible to use `seq-concatenate' for new types of seqs.
1857         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate): New
1858         function used in `seq-concatenate'.
1859         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
1860         for seq-into-sequence.
1862 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
1864         Add mode local overrides to xref-find-definitions
1865         * lisp/cedet/mode-local.el (xref-mode-local--override-present,
1866         xref-mode-local-overload): New; add mode local overrides to
1867         xref-find-definitions.
1868         * test/automated/elisp-mode-tests.el: Add mode local override tests.
1869         (xref-elisp-test-run): Handle indented defuns.
1870         (xref-elisp-generic-*): Improve doc strings.
1871         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
1872         (elisp--xref-find-definitions): Use it.
1874         Add mode local overrides to describe-function
1875         * lisp/cedet/mode-local.el (describe-mode-local-overload): New; add mode
1876         local overrides to describe-function.
1877         * etc/NEWS: Document change.
1879 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
1881         Prefer straight quoting in some etc text files
1882         These files are plain text and might be used by non-Emacs apps.
1883         They’re mostly ASCII, so just use straight quotes.
1885         Fix quoting in ‘message_with_string’
1886         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
1887         should work now.
1888         * src/xdisp.c (message_to_stderr): New function, refactored from
1889         part of ‘message3_nolog’.
1890         (message3_nolog): Use it.
1891         (message_with_string): Use it.  Don’t mishandle NUL bytes when
1892         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
1893         Use ‘format-message’, not ‘format’, so that quotes are translated.
1895 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
1897         Mention false positives of file-accessible-directory on w32
1898         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
1899         (Bug#21346)
1901 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
1903         Treat error strings as help
1904         * src/print.c (print_error_message): Translate quotes and command
1905         keys in errmsg so that users see, e.g., "Symbol’s value as
1906         variable is void: foo" when text-quoting-style is curved.
1908 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
1910         * lisp/net/tramp-cache.el (top): Use `message' but `format-message'.
1912 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
1914         Top-level elisp files respect ‘text-quoting-style’
1915         In top-level elisp files, use format-message in diagnostic formats,
1916         so that they follow user preference as per ‘text-quoting-style’
1917         rather than being hard-coded to quote `like this'.
1918         * lisp/allout.el (allout-get-configvar-values):
1919         * lisp/apropos.el (apropos-symbols-internal):
1920         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
1921         (dired-do-create-files-regexp, dired-create-files-non-directory):
1922         * lisp/dired-x.el (dired-do-run-mail):
1923         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
1924         * lisp/disp-table.el (standard-display-european):
1925         * lisp/find-dired.el (find-dired):
1926         * lisp/forms.el (forms-mode):
1927         * lisp/ido.el (ido-buffer-internal):
1928         * lisp/info.el (Info-index-next):
1929         * lisp/outline.el (outline-invent-heading):
1930         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
1931         * lisp/proced.el (proced-log):
1932         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
1933         * lisp/recentf.el (recentf-open-files, recentf-save-list):
1934         * lisp/savehist.el (savehist-save):
1935         * lisp/server.el (server-ensure-safe-dir):
1936         * lisp/ses.el (ses-rename-cell):
1937         * lisp/simple.el (list-processes--refresh):
1938         * lisp/startup.el (command-line):
1939         * lisp/strokes.el (strokes-unset-last-stroke)
1940         (strokes-execute-stroke):
1941         Use format-message so that quotes are restyled.
1942         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
1943         Don’t quote ‘raised’.
1944         * lisp/descr-text.el (describe-char):
1945         * lisp/dirtrack.el (dirtrack-debug-message):
1946         * lisp/hexl.el (hexl-insert-multibyte-char):
1947         Apply substitute-command-keys to help string.
1948         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
1949         (wdired-do-perm-changes):
1950         Let dired-log do the formatting.
1952 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
1954         Go back to grave quoting in Tramp
1955         * lisp/net/tramp-adb.el:
1956         * lisp/net/tramp-cache.el:
1957         * lisp/net/tramp-compat.el:
1958         * lisp/net/tramp-gvfs.el:
1959         * lisp/net/tramp-gw.el:
1960         * lisp/net/tramp-sh.el:
1961         * lisp/net/tramp-smb.el:
1962         * lisp/net/tramp.el:
1963         Stick with grave quoting in diagnostics strings.  This is more
1964         portable to older Emacs, desirable for Tramp.
1965         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
1966         for diagnostic that needs requoting.
1967         * lisp/net/tramp-compat.el (format-message):
1968         Fall back on simple ‘format’, since that’s good enough now.
1970         Go back to grave quoting in Gnus
1971         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
1972         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
1973         (gnus-agent-fetch-headers):
1974         * lisp/gnus/gnus-int.el (gnus-start-news-server):
1975         * lisp/gnus/gnus-registry.el:
1976         (gnus-registry--split-fancy-with-parent-internal)
1977         (gnus-registry-post-process-groups):
1978         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
1979         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
1980         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
1981         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
1982         * lisp/gnus/spam.el (spam-check-blackholes):
1983         Stick with grave quoting in diagnostics strings.  This is more
1984         portable to older Emacs, desirable for Gnus.
1986         Fix customization of text-quoting-style
1987         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
1988         * lisp/wid-edit.el (widget-docstring):
1989         Get raw docstring here since it’s cooked later and should not be
1990         cooked twice.
1991         * lisp/cus-edit.el (custom-group-value-create):
1992         Cook the docstring before inserting it.
1993         * lisp/cus-start.el (text-quoting-style): Quote the customization
1994         docstrings according to the new rules.  Give curved examples.
1996         format-message now curves ` and '
1997         That way, the caller doesn’t have to use curved quotes to
1998         get diagnostics that match the text-quoting-style preferences.
1999         Suggested by Dmitry Gutov in:
2000         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
2001         This means we no longer need %qs, so remove that format.
2002         While we’re at it, fix an unlikely bug and lessen the pressure
2003         on the garbage collector by processing the string once rather
2004         than twice in the usual case.
2005         * doc/lispref/strings.texi (Formatting Strings):
2006         * etc/NEWS: Document this.
2007         * lisp/subr.el (format-message): Remove; now done in C.
2008         * src/callint.c (Fcall_interactively):
2009         * src/editfns.c (Fmessage, Fmessage_box):
2010         Use Fformat_message instead of Finternal__text_restyle
2011         followed by Fformat.
2012         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
2013         uLSQM and uRSQM.
2014         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
2015         when pure ASCII now suffices.  Fix unlikely bug when parsing
2016         unibyte string containing non-ASCII bytes.  Use inline code
2017         rather than memcpy, as it’s a tiny number of bytes.
2018         (Finternal__text_restyle): Remove; no longer used.
2019         (syms_of_doc): Don’t declare it.
2020         * src/editfns.c (Fformat): Rewrite in terms of new function
2021         ‘styled_format’.
2022         (Fformat_message): New function, moved here from subr.el.
2023         (styled_format): New function, with the old guts of Fformat,
2024         except it now optionally transliterates quotes, and it transliterates
2025         traditional grave accent and apostrophe quoting as well.
2026         Remove recently-added q flag; no longer needed or used.
2027         (syms_of_editfns): Define format-message.
2028         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
2029         Remove; no longer need to be global symbols.
2030         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
2031         so that callers can use `%s'.
2032         * src/image.c (image_size_error, xbm_load_image, xbm_load)
2033         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
2034         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
2035         (svg_load_image, gs_load, x_kill_gs_process):
2036         * src/lread.c (load_warn_old_style_backquotes):
2037         * src/xfaces.c (load_pixmap):
2038         * src/xselect.c (x_clipboard_manager_error_1):
2039         Use `%s' instead of %qs in formats.
2041 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
2043         Minor fixes in doc/emacs/search.texi
2044         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
2045         (Special Isearch): Use @w{} to generate several consecutive spaces
2046         with Texinfo 6.  (Bug#21345)
2048 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
2050         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
2051         (tramp-awk-coding-test): New defconsts.
2052         (tramp-remote-coding-commands): Use them.
2053         (tramp-find-inline-encoding): Check for Perl only if necessary.
2055 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
2057         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
2058         index entries for the special form `quote'.
2060 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
2062         Spelling fixes
2064         Gnus format-message typo fix
2065         * lisp/gnus/gnus-util.el (gnus-format-message):
2066         Fix typo when running in older Emacs.
2068         Prefer directed to neutral quotes
2069         Prefer directed to neutral quotes in docstings and diagnostics.
2070         In docstrings, escape apostrophes that would otherwise be translated
2071         to curved quotes using the newer, simpler rules.
2072         * admin/unidata/unidata-gen.el (unidata-gen-table):
2073         * lisp/align.el (align-region):
2074         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
2075         * lisp/bookmark.el (bookmark-default-annotation-text):
2076         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
2077         * lisp/calc/calc-lang.el (math-read-giac-subscr)
2078         (math-read-math-subscr):
2079         * lisp/calc/calc-misc.el (report-calc-bug):
2080         * lisp/calc/calc-prog.el (calc-fix-token-name)
2081         (calc-read-parse-table-part):
2082         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
2083         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
2084         * lisp/dabbrev.el (dabbrev-expand):
2085         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
2086         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
2087         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
2088         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
2089         * lisp/erc/erc-button.el (erc-nick-popup):
2090         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
2091         * lisp/eshell/em-dirs.el (eshell/cd):
2092         * lisp/eshell/em-glob.el (eshell-glob-regexp):
2093         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
2094         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
2095         * lisp/eshell/esh-opt.el (eshell-show-usage):
2096         * lisp/files-x.el (modify-file-local-variable):
2097         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
2098         (filesets-update-pre010505):
2099         * lisp/find-cmd.el (find-generic, find-to-string):
2100         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
2101         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
2102         (gnus-agent-fetch-headers):
2103         * lisp/gnus/gnus-int.el (gnus-start-news-server):
2104         * lisp/gnus/gnus-registry.el:
2105         (gnus-registry--split-fancy-with-parent-internal):
2106         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
2107         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
2108         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
2109         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
2110         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
2111         * lisp/gnus/spam.el (spam-check-blackholes):
2112         * lisp/mail/feedmail.el (feedmail-run-the-queue):
2113         * lisp/mpc.el (mpc-playlist-rename):
2114         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
2115         * lisp/net/mairix.el (mairix-widget-create-query):
2116         * lisp/net/tramp-cache.el:
2117         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
2118         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
2119         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
2120         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
2121         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
2122         (org-babel-goto-named-result):
2123         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
2124         * lisp/org/ob-ref.el (org-babel-ref-resolve):
2125         * lisp/org/org-agenda.el (org-agenda-prepare):
2126         * lisp/org/org-bibtex.el (org-bibtex-fields):
2127         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
2128         (org-clock-resolve):
2129         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
2130         * lisp/org/org-habit.el (org-habit-parse-todo):
2131         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
2132         (org-mouse-context-menu):
2133         * lisp/org/org-table.el (org-table-edit-formulas):
2134         * lisp/org/ox.el (org-export-async-start):
2135         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
2136         (dun-rooms, dun-endgame-questions):
2137         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
2138         * lisp/progmodes/ada-xref.el (ada-find-executable):
2139         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
2140         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
2141         (flymake-start-syntax-check-process):
2142         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
2143         * lisp/progmodes/sql.el (sql-comint):
2144         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
2145         * lisp/server.el (server-get-auth-key):
2146         * lisp/subr.el (version-to-list):
2147         * lisp/textmodes/reftex-ref.el (reftex-label):
2148         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
2149         * lisp/vc/ediff-diff.el (ediff-same-contents):
2150         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
2151         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
2152         Use directed rather than neutral quotes in diagnostics.
2154         Treat ' like ’ even when not matching `
2155         This is simpler and easier to explain, and should encourage better
2156         typography.  Do this in Electric Quote mode and when translating
2157         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
2158         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
2159         * doc/emacs/text.texi (Quotation Marks):
2160         * doc/lispref/help.texi (Keys in Documentation):
2161         * etc/NEWS:
2162         Document this.
2163         * lisp/electric.el (electric-quote-post-self-insert-function):
2164         * src/doc.c (Fsubstitute_command_keys):
2165         Always treat ' like ’ even when not matched by an open quote.
2167 2015-08-25  Glenn Morris  <rgm@gnu.org>
2169         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
2170         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
2172 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2174         * src/macfont.m (macfont_create_family_with_symbol): Accept localized names.
2176 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
2178         Tramp diagnostics as per ‘text-quoting-style’
2179         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
2180         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
2181         (tramp-adb-handle-delete-directory)
2182         (tramp-adb-handle-delete-file)
2183         (tramp-adb-handle-file-local-copy)
2184         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
2185         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
2186         (tramp-adb-maybe-open-connection):
2187         * lisp/net/tramp-cache.el:
2188         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
2189         (tramp-compat-octal-to-decimal)
2190         (tramp-compat-coding-system-change-eol-conversion):
2191         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
2192         (tramp-gvfs-do-copy-or-rename-file)
2193         (tramp-gvfs-handle-delete-directory)
2194         (tramp-gvfs-handle-delete-file)
2195         (tramp-gvfs-handle-expand-file-name)
2196         (tramp-gvfs-handle-file-local-copy)
2197         (tramp-gvfs-handle-file-notify-add-watch)
2198         (tramp-gvfs-handle-make-directory)
2199         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
2200         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
2201         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
2202         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
2203         (tramp-sh-handle-set-visited-file-modtime)
2204         (tramp-sh-handle-set-file-modes)
2205         (tramp-sh-handle-file-name-all-completions)
2206         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
2207         (tramp-do-copy-or-rename-file-directly)
2208         (tramp-do-copy-or-rename-file-out-of-band)
2209         (tramp-sh-handle-make-directory)
2210         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
2211         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
2212         (tramp-sh-handle-start-file-process)
2213         (tramp-sh-handle-file-local-copy)
2214         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
2215         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
2216         (tramp-find-file-exists-command, tramp-open-shell)
2217         (tramp-find-shell)
2218         (tramp-open-connection-setup-interactive-shell)
2219         (tramp-find-inline-encoding, tramp-find-inline-compress)
2220         (tramp-compute-multi-hops, tramp-maybe-open-connection)
2221         (tramp-wait-for-output, tramp-send-command-and-check)
2222         (tramp-send-command-and-read, tramp-get-remote-path)
2223         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
2224         (tramp-get-ls-command-with-quoting-style)
2225         (tramp-get-test-command, tramp-get-remote-ln)
2226         (tramp-get-remote-perl, tramp-get-remote-stat)
2227         (tramp-get-remote-readlink, tramp-get-remote-trash)
2228         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
2229         (tramp-get-remote-inotifywait, tramp-get-remote-id)
2230         (tramp-get-remote-python):
2231         * lisp/net/tramp-smb.el (tramp-smb-errors)
2232         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
2233         (tramp-smb-handle-delete-directory)
2234         (tramp-smb-handle-delete-file)
2235         (tramp-smb-handle-file-local-copy)
2236         (tramp-smb-handle-make-directory)
2237         (tramp-smb-handle-make-directory-internal)
2238         (tramp-smb-handle-make-symbolic-link)
2239         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
2240         (tramp-smb-handle-set-file-modes)
2241         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
2242         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
2243         (tramp-process-actions):
2244         Generate diagnostics according to ‘text-quoting-style’, by
2245         using curved quotes in format strings and ‘format-message’
2246         when appropriate.
2247         * lisp/net/tramp-compat.el (format-message):
2248         Define a replacement, if it’s an older version of Emacs
2249         that doesn’t have it already.
2251         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
2253 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
2255         Fix documentation for `save-excursion'
2256         * doc/lispref/positions.texi (Excursions):
2257         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
2258         (Template for save-excursion, Point and mark): `save-excursion'
2259         does not save&restore the mark any more.
2261 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
2263         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
2264         New defconsts.
2265         (tramp-do-file-attributes-with-stat)
2266         (tramp-do-directory-files-and-attributes-with-stat): Use them.
2267         (tramp-convert-file-attributes): Remove double slashes in symlinks.
2268         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
2269         Handle symlinks with "//" in the file name.
2271         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
2273 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
2275         Fix cl-subseq and cl-concatenate
2276         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
2277         seq functions.
2278         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
2279         seq-concatenate.
2281 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
2283         Fix full-screen code when there is no window manager (Bug#21317)
2284         * src/xterm.h (x_wm_supports): Declare external.
2285         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
2286         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
2287         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
2288         `fullscreen' frame parameter.
2289         * gtkutil.c (x_wm_set_size_hint): Set size hints when running
2290         without a window manager.
2292 2015-08-24  Glenn Morris  <rgm@gnu.org>
2294         * lisp/version.el (emacs-version): No longer include build host
2295         * doc/lispref/intro.texi (Version Info): Update example.
2297 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
2299         * doc/lispref/elisp.texi: Fix typo in previous change.
2301         More-conservative ‘format’ quote restyling
2302         Instead of restyling curved quotes for every call to ‘format’,
2303         create a new function ‘format-message’ that does the restyling,
2304         and using the new function instead of ‘format’ only in contexts
2305         where this seems appropriate.
2306         Problem reported by Dmitry Gutov and Andreas Schwab in:
2307         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
2308         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
2309         * doc/lispref/commands.texi (Using Interactive):
2310         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
2311         * doc/lispref/display.texi (Displaying Messages, Progress):
2312         * doc/lispref/elisp.texi:
2313         * doc/lispref/help.texi (Keys in Documentation):
2314         * doc/lispref/minibuf.texi (Minibuffer Misc):
2315         * doc/lispref/strings.texi (Formatting Strings):
2316         * etc/NEWS:
2317         Document the changes.
2318         * lisp/abbrev.el (expand-region-abbrevs):
2319         * lisp/apropos.el (apropos-library):
2320         * lisp/calc/calc-ext.el (calc-record-message)
2321         (calc-user-function-list):
2322         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
2323         * lisp/calc/calc-lang.el (math-read-big-balance):
2324         * lisp/calc/calc-store.el (calc-edit-variable):
2325         * lisp/calc/calc-units.el (math-build-units-table-buffer):
2326         * lisp/calc/calc-yank.el (calc-edit-mode):
2327         * lisp/calendar/icalendar.el (icalendar-export-region)
2328         (icalendar--add-diary-entry):
2329         * lisp/cedet/mode-local.el (mode-local-print-binding)
2330         (mode-local-describe-bindings-2):
2331         * lisp/cedet/semantic/complete.el (semantic-completion-message):
2332         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
2333         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
2334         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
2335         * lisp/descr-text.el (describe-text-properties-1, describe-char):
2336         * lisp/dframe.el (dframe-message):
2337         * lisp/dired-aux.el (dired-query):
2338         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
2339         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
2340         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
2341         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
2342         (cconv-analyze-form):
2343         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
2344         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
2345         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
2346         * lisp/emacs-lisp/edebug.el (edebug-format):
2347         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
2348         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
2349         (eldoc-message):
2350         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
2351         * lisp/emacs-lisp/find-func.el (find-function-library):
2352         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
2353         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
2354         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
2355         * lisp/emacs-lisp/package.el (package-compute-transaction)
2356         (package-install-button-action, package-delete-button-action)
2357         (package-menu--list-to-prompt):
2358         * lisp/emacs-lisp/timer.el (timer-event-handler):
2359         * lisp/emacs-lisp/warnings.el (lwarn, warn):
2360         * lisp/emulation/viper-cmd.el:
2361         (viper-toggle-parse-sexp-ignore-comments)
2362         (viper-kill-buffer, viper-brac-function):
2363         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
2364         * lisp/facemenu.el (facemenu-add-new-face):
2365         * lisp/faces.el (face-documentation, read-face-name)
2366         (face-read-string, read-face-font, describe-face):
2367         * lisp/files.el (find-alternate-file, hack-local-variables)
2368         (hack-one-local-variable--obsolete, write-file)
2369         (basic-save-buffer, delete-directory):
2370         * lisp/format.el (format-write-file, format-find-file)
2371         (format-insert-file):
2372         * lisp/help-fns.el (help-fns--key-bindings)
2373         (help-fns--compiler-macro, help-fns--obsolete)
2374         (help-fns--interactive-only, describe-function-1)
2375         (describe-variable):
2376         * lisp/help.el (describe-mode):
2377         * lisp/info-xref.el (info-xref-output):
2378         * lisp/info.el (Info-virtual-index-find-node)
2379         (Info-virtual-index, info-apropos):
2380         * lisp/international/kkc.el (kkc-error):
2381         * lisp/international/mule-cmds.el:
2382         (select-safe-coding-system-interactively)
2383         (select-safe-coding-system, describe-input-method):
2384         * lisp/international/mule-conf.el (code-offset):
2385         * lisp/international/mule-diag.el (describe-character-set)
2386         (list-input-methods-1):
2387         * lisp/international/quail.el (quail-error):
2388         * lisp/minibuffer.el (minibuffer-message):
2389         * lisp/mpc.el (mpc--debug):
2390         * lisp/msb.el (msb--choose-menu):
2391         * lisp/net/ange-ftp.el (ange-ftp-message):
2392         * lisp/net/gnutls.el (gnutls-message-maybe):
2393         * lisp/net/newst-backend.el (newsticker--sentinel-work):
2394         * lisp/net/newst-treeview.el (newsticker--treeview-load):
2395         * lisp/net/nsm.el (nsm-query-user):
2396         * lisp/net/rlogin.el (rlogin):
2397         * lisp/net/soap-client.el (soap-warning):
2398         * lisp/net/tramp.el (tramp-debug-message):
2399         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
2400         * lisp/nxml/nxml-parse.el (nxml-parse-error):
2401         * lisp/nxml/rng-cmpct.el (rng-c-error):
2402         * lisp/nxml/rng-match.el (rng-compile-error):
2403         * lisp/nxml/rng-uri.el (rng-uri-error):
2404         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
2405         * lisp/org/org-ctags.el:
2406         (org-ctags-ask-rebuild-tags-file-then-find-tag):
2407         * lisp/proced.el (proced-log):
2408         * lisp/progmodes/ebnf2ps.el (ebnf-log):
2409         * lisp/progmodes/flymake.el (flymake-log):
2410         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
2411         * lisp/replace.el (occur-1):
2412         * lisp/simple.el (execute-extended-command)
2413         (undo-outer-limit-truncate, define-alternatives):
2414         * lisp/startup.el (command-line):
2415         * lisp/subr.el (error, user-error, add-to-list):
2416         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
2417         (tutorial--find-changed-keys):
2418         * src/callint.c (Fcall_interactively):
2419         * src/editfns.c (Fmessage, Fmessage_box):
2420         Restyle the quotes of format strings intended for use as a
2421         diagnostic, when restyling seems appropriate.
2422         * lisp/subr.el (format-message): New function.
2423         * src/doc.c (Finternal__text_restyle): New function.
2424         (syms_of_doc): Define it.
2426 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
2428         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
2430 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
2432         python.el: Fix python-shell-buffer-substring on indented code
2433         (Bug#21086)
2434         * lisp/progmodes/python.el (python-shell-buffer-substring):
2435         Respect current line indentation when calculating string.
2436         * test/automated/python-tests.el
2437         (python-shell-buffer-substring-10)
2438         (python-shell-buffer-substring-11)
2439         (python-shell-buffer-substring-12): New tests.
2441 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
2443         Fix minor glitches from ‘format’ reversion
2444         * doc/lispref/strings.texi (Formatting Strings):
2445         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
2446         Documentation’, not below.
2447         * src/syntax.c (Finternal_describe_syntax_value):
2448         Prefer AUTO_STRING to build_string where either will do, as
2449         AUTO_STRING is a bit faster.
2451 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
2453         python.el: Defer shell setup code until first interactive prompt
2454         * lisp/progmodes/python.el
2455         (python-shell-comint-watch-for-first-prompt-output-filter): New
2456         function.
2457         (inferior-python-mode): Use it.
2458         (python-shell-first-prompt-hook): New hook.
2459         (python-shell-send-setup-code)
2460         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
2461         this hook instead of inferior-python-hook.
2463 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
2465         Remove the calls to `seq-into` from `seq-concatenate`
2466         Since most new types of seq would have to be defined as sequences (cons
2467         cells or CL structs, mostly), there is no need to convert the seqs to
2468         sequences (which can be a fairly expensive operation).
2469         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
2470         sequences.
2472 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
2474         python.el: Fix completion for pdb interactions
2475         * lisp/progmodes/python.el (python-shell-completion-setup-code):
2476         Simplify.  Toggle print_mode for native wrapped completer.
2477         (python-shell-completion-native-setup): Ensure process buffer.
2478         Add print_mode attribute to completer wrapper to toggle returning
2479         or printing candidates.
2480         (python-shell-completion-native-get-completions): Cleanup.
2481         (python-shell-completion-get-completions): Cleanup.
2482         (python-shell-completion-at-point): Perform prompt checks.  Force
2483         fallback completion in pdb interactions.
2485 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
2487         Make seq.el more extensible by using cl-defmethod
2488         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
2489         make it easier to extend seq.el with new "seq types".
2490         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
2491         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
2492         subseq in cl-extra.el, and use it in seq.el.
2494 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
2496         python.el: Fix prompt detection with user overridden interpreter
2497         * lisp/progmodes/python.el (python-shell-prompt-detect): Honor
2498         buffer local python-shell-interpreter and
2499         python-shell-interpreter-interactive-arg.
2501 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
2503         Support exec-directory with non-ASCII characters on Windows
2504         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
2505         in the system's ANSI codepage, when it is used for invoking
2506         cmdproxy.
2508 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
2510         Revert "Extend ‘format’ to translate curved quotes"
2511         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
2513         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
2514         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
2516 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
2518         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers): Clarify
2519         "invisible window".
2521 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
2523         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
2524         magic-fallback-mode-alist.
2526 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
2528         python.el: fallback completion, ffap and eldoc setup enhancements
2529         Setup codes are now sent continuously so that the current frame is
2530         always taken into account.  This allows working within debuggers
2531         and always keeping a fresh version of setup codes that will return
2532         proper results.
2533         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
2534         (python-shell-send-setup-code): Send code only when
2535         python-shell-setup-codes is non-nil.
2536         (python-shell-completion-string-code): Cleanup trailing newline.
2537         (python-shell-completion-get-completions): Always use
2538         python-shell-completion-setup-code.
2539         (python-ffap-setup-code): Work with any object, not only modules.
2540         (python-ffap-string-code): Cleanup trailing newline.
2541         (python-ffap-module-path): Always use python-ffap-setup-code.
2542         (python-eldoc-string-code): Cleanup trailing newline.
2543         (python-eldoc--get-doc-at-point): Always use
2544         python-eldoc-setup-code.  Return non-nil only if docstring is
2545         found.
2547         python.el: Increase native completion robustness.
2548         * lisp/progmodes/python.el (python-shell-completion-native-setup):
2549         Make completer print real candidates and just return dummy ones to
2550         avoid input modification.
2551         (python-shell-completion-native-get-completions): Set
2552         comint-redirect-insert-matching-regexp to non-nil and make
2553         comint-redirect-finished-regexp match the last dummy candidate.
2554         Use python-shell-accept-process-output to wait for the full list
2555         of candidates.
2557 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
2559         Fix invocation of programs via cmdproxy.exe
2560         * src/w32proc.c (sys_spawnve): Use exec-directory, not
2561         invocation-directory, for finding cmdproxy.exe.  When Emacs is
2562         run from the source tree, look for cmdproxy.exe in the same source
2563         tree.  (Bug#21323)
2565 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
2567         Handle comments inside unquoted URIs in css-mode
2568         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
2569         (css-syntax-propertize-function): New defconst.
2570         (css--font-lock-keywords): Handle parens around unquoted URIs.
2571         (css-mode): Set `syntax-propertize-function'.
2573 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
2575         Support invocation of Hunspell with multiple dictionaries
2576         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file): Support
2577         lists of dictionaries of the form "DICT1,DICT2,...".
2578         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
2580         Minor formatting changes in ispell.el
2581         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
2582         (ispell-print-if-debug, ispell-aspell-find-dictionary)
2583         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
2584         (ispell-hunspell-dictionary-alist)
2585         (ispell-hunspell-fill-dictionary-entry)
2586         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
2587         (ispell-buffer-with-debug, ispell-complete-word)
2588         (ispell-current-dictionary, ispell-current-personal-dictionary)
2589         (ispell-accept-output, ispell-minor-mode)
2590         (ispell-personal-dictionary, ispell-dictionary-alist)
2591         (ispell-really-aspell, ispell-really-hunspell)
2592         (ispell-encoding8-command, ispell-aspell-supports-utf8)
2593         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
2594         Fix whitespace, inconsistent capitalization, and arguments in doc
2595         strings.
2597 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
2599         In ‘adjust-window-trailing-edge’ fix bug with size-preserved windows.
2600         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
2601         function refused to resize a size-preserved window.
2603 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
2605         Improve documentation of 'window-use-time'
2606         * doc/lispref/windows.texi (Selecting Windows): Improve
2607         documentation and indexing of 'window-use-time'.
2609 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
2611         * lisp/progmodes/cc-*.el: Fix up commenting style
2612         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
2613         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
2614         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
2615         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
2616         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
2617         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
2618         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
2619         Fix up commenting style.
2621 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
2623         text-quoting-style in emacs-lisp diagnostics
2624         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
2625         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
2626         (ad-disable-advice, ad-remove-advice, ad-set-argument)
2627         (ad-set-arguments):
2628         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
2629         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
2630         (byte-optimize-while, byte-optimize-apply):
2631         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
2632         (byte-compile-log-file, byte-compile-format-warn)
2633         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
2634         (byte-compile-cl-warn)
2635         (byte-compile-warn-about-unresolved-functions)
2636         (byte-compile-file, byte-compile-fix-header)
2637         (byte-compile--declare-var, byte-compile-file-form-defmumble)
2638         (byte-compile-form, byte-compile-normal-call)
2639         (byte-compile-variable-ref, byte-compile-variable-set)
2640         (byte-compile-subr-wrong-args, byte-compile-setq-default)
2641         (byte-compile-negation-optimizer)
2642         (byte-compile-condition-case--old)
2643         (byte-compile-condition-case--new, byte-compile-save-excursion)
2644         (byte-compile-defvar, byte-compile-autoload)
2645         (byte-compile-lambda-form)
2646         (byte-compile-make-variable-buffer-local, display-call-tree)
2647         (batch-byte-compile):
2648         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
2649         (cconv-analyze-form):
2650         * lisp/emacs-lisp/chart.el (chart-space-usage):
2651         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
2652         (check-declare-warn, check-declare-file)
2653         (check-declare-directory):
2654         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
2655         (checkdoc-message-text-engine):
2656         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
2657         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
2658         (cl-symbol-macrolet):
2659         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
2660         * lisp/emacs-lisp/copyright.el (copyright)
2661         (copyright-update-directory):
2662         * lisp/emacs-lisp/edebug.el (edebug-read-list):
2663         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
2664         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
2665         (eieio-oref, eieio-oset-default):
2666         * lisp/emacs-lisp/eieio-speedbar.el:
2667         (eieio-speedbar-child-make-tag-lines)
2668         (eieio-speedbar-child-description):
2669         * lisp/emacs-lisp/eieio.el (defclass, change-class):
2670         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
2671         (elint-init-form, elint-check-defalias-form)
2672         (elint-check-let-form):
2673         * lisp/emacs-lisp/ert.el (ert-get-test):
2674         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
2675         (find-function-library):
2676         * lisp/emacs-lisp/generator.el (iter-yield):
2677         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
2678         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
2679         * lisp/emacs-lisp/package-x.el (package-upload-file):
2680         * lisp/emacs-lisp/package.el (package-version-join)
2681         (package-disabled-p, package-activate-1, package-activate)
2682         (package--download-one-archive)
2683         (package--download-and-read-archives)
2684         (package-compute-transaction, package-install-from-archive)
2685         (package-install, package-install-selected-packages)
2686         (package-delete, package-autoremove)
2687         (package-install-button-action, package-delete-button-action)
2688         (package-menu-hide-package, package-menu--list-to-prompt)
2689         (package-menu--perform-transaction)
2690         (package-menu--find-and-notify-upgrades):
2691         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
2692         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
2693         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
2694         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
2695         * lisp/emacs-lisp/smie.el (smie-config-save):
2696         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
2697         * lisp/emacs-lisp/testcover.el (testcover-1value):
2698         Use curved quotes in diagnostic format strings.
2700 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
2702         python.el: Ensure remote process-environment on non-interactive processes
2703         * lisp/progmodes/python.el
2704         (python-shell-tramp-refresh-process-environment): New function.
2705         (python-shell-with-environment): Use it.
2706         * test/automated/python-tests.el (python-shell-with-environment-2): Update.
2708         python.el: Enhancements to process environment setup.
2709         * lisp/progmodes/python.el (python-shell-process-environment)
2710         (python-shell-extra-pythonpaths, python-shell-exec-path)
2711         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
2712         (python-shell-setup-codes): Remove :safe.
2713         (python-shell-remote-exec-path): New defcustom.
2714         (python-shell--add-to-path-with-priority): New macro.
2715         (python-shell-calculate-pythonpath): Give priority to
2716         python-shell-extra-pythonpaths.  Update docstring.
2717         (python-shell-calculate-process-environment): Give priority to
2718         python-shell-process-environment.  Update docstring.
2719         (python-shell-calculate-exec-path): Give priority to
2720         python-shell-exec-path and calculated virtualenv bin directory.
2721         Update docstring.
2722         (python-shell-tramp-refresh-remote-path): New function.
2723         (python-shell-with-environment): Use it when working remotely and
2724         do not modify tramp-remote-path.  Allow nesting.
2725         (python-shell-calculate-command): Remove useless
2726         python-shell-with-environment call.
2727         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
2728         (python-shell-calculate-pythonpath-2)
2729         (python-shell-calculate-process-environment-6)
2730         (python-shell-calculate-process-environment-7)
2731         (python-shell-calculate-process-environment-8)
2732         (python-shell-calculate-exec-path-3)
2733         (python-shell-calculate-exec-path-4)
2734         (python-shell-calculate-exec-path-5)
2735         (python-shell-calculate-exec-path-6)
2736         (python-shell-with-environment-3): New tests.
2737         (python-shell-calculate-process-environment-2)
2738         (python-shell-calculate-process-environment-3)
2739         (python-shell-calculate-process-environment-4)
2740         (python-shell-calculate-process-environment-5)
2741         (python-shell-calculate-exec-path-1)
2742         (python-shell-calculate-exec-path-2)
2743         (python-shell-with-environment-1)
2744         (python-shell-with-environment-2): Update and simplify.
2746 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
2748         Avoid hard-coding "M-x command" in docstrings
2749         * lisp/calendar/todo-mode.el (todo-mode):
2750         * lisp/desktop.el (desktop-save-mode):
2751         * lisp/edmacro.el (edit-kbd-macro):
2752         * lisp/emacs-lisp/package.el (package-menu-execute):
2753         * lisp/emulation/viper-cmd.el (viper-ask-level):
2754         * lisp/emulation/viper-init.el (viper-expert-level):
2755         * lisp/filesets.el (filesets-add-buffer):
2756         * lisp/follow.el (follow-mode):
2757         * lisp/gnus/auth-source.el (auth-sources):
2758         * lisp/international/ogonek.el (ogonek-informacja)
2759         (ogonek-information):
2760         * lisp/net/tramp.el (tramp-process-actions):
2761         * lisp/org/org-gnus.el (org-gnus-no-new-news):
2762         * lisp/org/org.el (org-ellipsis):
2763         * lisp/progmodes/python.el (python-shell-get-process-or-error):
2764         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
2765         * lisp/server.el (server-start):
2766         * lisp/type-break.el (type-break-noninteractive-query):
2767         * lisp/userlock.el (ask-user-about-supersession-help):
2768         * lisp/whitespace.el (whitespace-report-region):
2769         Prefer (substitute-command-keys "`\\[foo-command]'")
2770         to "`M-x foo-command'" in docstrings and the like.
2772 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
2774         Use add-function for prettify-symbols-compose-predicate
2775         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
2776         prettify-symbols-compose-predicate in terms of add-function.
2777         * etc/NEWS: Mention prettify-symbols-compose-predicate and
2778         prettify-symbols-mode support in tex-mode.
2780 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
2782         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun
2783         (smie-indent-exps, smie-indent-keyword): Use it.
2784         * test/indent/css-mode.css: Test alignment with leading comment.
2786 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
2788         Respect text-quoting-style in (*Finder*) menus
2789         * lisp/info.el (info--prettify-description):
2790         Treat description as a docstring, so that it's requoted as
2791         per text-quoting-style.
2793 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
2795         Document `window-use-time' in Elisp manual
2796         * doc/lispref/windows.texi (Selecting Windows): Document `window-use-time'.
2798 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
2800         A better fix for bug#21303
2801         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.  This is a
2802         cleaner fix for Bug#21260 than the previous change.
2804 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
2806         Respect text-quoting-style in calc
2807         In calc, tespect text-quoting-style preference in diagnostic
2808         formats and fix a few similar problems in docstrings.
2809         * lisp/calc/calc-aent.el (math-read-factor):
2810         * lisp/calc/calc-embed.el (calc-do-embedded):
2811         * lisp/calc/calc-ext.el (calc-user-function-list)
2812         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
2813         * lisp/calc/calc-help.el (calc-describe-key)
2814         (calc-describe-thing):
2815         * lisp/calc/calc-lang.el (calc-c-language)
2816         (math-parse-fortran-vector-end, math-parse-tex-sum)
2817         (math-parse-eqn-matrix, math-parse-eqn-prime)
2818         (calc-yacas-language, calc-maxima-language, calc-giac-language)
2819         (math-read-big-rec, math-read-big-balance):
2820         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
2821         (calc-auto-recompute):
2822         * lisp/calc/calc-prog.el (calc-user-define-invocation)
2823         (math-do-arg-check):
2824         * lisp/calc/calc-store.el (calc-edit-variable):
2825         * lisp/calc/calc-units.el (math-build-units-table-buffer):
2826         * lisp/calc/calc-vec.el (math-read-brackets):
2827         * lisp/calc/calc-yank.el (calc-edit-mode):
2828         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
2829         Use curved quotes in diagnostic format strings.
2830         * lisp/calc/calc-help.el (calc-describe-thing):
2831         Format docstrings with substitute-command-keys.
2832         * lisp/calc/calc-help.el (calc-j-prefix-help):
2833         * lisp/calc/calc-misc.el (calc-help):
2834         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
2835         Escape a docstring "`".
2837 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
2839         Fix documentation of 'menu-set-font' and 'set-frame-font'
2840         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
2841         * doc/lispref/frames.texi (Frame Font): Document that
2842         set-frame-font with the last argument 't' will also make the font
2843         the default for the future GUI frames.
2845         Document '--create-frame' option to emacsclient
2846         * doc/emacs/misc.texi (emacsclient Options): Document the
2847         '--create-frame' option.  (Bug#21308)
2849 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
2851         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
2853 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
2855         Document 'get-mru-window' in the ELisp manual
2856         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
2857         'get-mru-window'.  (Bug#21306)
2859         Clarify documentation of 'get-buffer-window-list'
2860         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
2861         current window, if relevant, will be the first in the list
2862         returned by 'get-buffer-window-list'.
2863         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
2865 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
2867         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
2868         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
2869         `switch-to-buffer'.
2871 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
2873         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
2874         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
2875         `display-buffer' instead of `switch-to-buffer'.
2877 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
2879         Follow user preference in calendar diagnostics
2880         Respect text-quoting-style preference in diagnostic formats by
2881         using curved quotes (which are translated as per text-quoting-style)
2882         instead of grave accent and apostrophe (which are not).
2883         * lisp/calendar/appt.el (appt-display-message):
2884         * lisp/calendar/diary-lib.el (diary-check-diary-file)
2885         (diary-mail-entries, diary-from-outlook):
2886         * lisp/calendar/icalendar.el (icalendar-export-region)
2887         (icalendar--convert-float-to-ical)
2888         (icalendar--convert-date-to-ical)
2889         (icalendar--convert-ical-to-diary)
2890         (icalendar--convert-recurring-to-diary)
2891         (icalendar--add-diary-entry):
2892         * lisp/calendar/time-date.el (format-seconds):
2893         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
2894         (timeclock-make-hours-explicit):
2895         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
2896         (todo-item-mark, todo-check-format)
2897         (todo-insert-item--next-param, todo-edit-item--next-key)
2898         (todo-mode):
2899         Use curved quotes in diagnostic format strings.
2900         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
2901         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
2902         Just use straight quoting for simple test case.
2904 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
2906         * src/gfilenotify.c (Fgfile_add_watch):
2907         Handle errors from g_file_monitor.
2909 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
2911         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
2912         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
2913         frame" instead of "non-minibuffer frame".
2915         Fix frame geometry related text
2916         * doc/lispref/frames.texi (Frame Layout): Rename
2917         `x-frame-geometry' to `frame-geometry'.
2918         * doc/lispref/frames.texi (Mouse Position):
2919         * doc/lispref/windows.texi (Coordinates and Windows): Use
2920         `set-mouse-absolute-pixel-position' instead of
2921         `x-set-mouse-absolute-pixel-position'.
2923         Sanitize frame geometry related functions
2924         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
2925         (Fx_frame_edges): Rename to Fns_frame_edges.
2926         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
2927         (Fx_frame_edges): Rename to Fw32_frame_edges.
2928         (Fx_mouse_absolute_pixel_position): Rename to
2929         Fw32_mouse_absolute_pixel_position.
2930         (Fx_set_mouse_absolute_pixel_position): Rename to
2931         Fw32_set_mouse_absolute_pixel_position.
2932         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
2933         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
2934         (ns-frame-edges, w32-mouse-absolute-pixel-position)
2935         (x-mouse-absolute-pixel-position)
2936         (w32-set-mouse-absolute-pixel-position)
2937         (x-set-mouse-absolute-pixel-position): Declare.
2938         (frame-geometry, mouse-absolute-pixel-position)
2939         (set-mouse-absolute-pixel-position): New functions.
2940         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
2942 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
2944         Fix MinGW64 build broken by latest w32uniscribe.c changes
2945         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
2946         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
2947         (Bug#21260)
2949 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
2951         Add TeX defaults for prettify-symbol-mode
2952         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Rename
2953         from tex-prettify-symbols-alist.
2954         (tex--prettify-symbols-compose-p): New function.
2955         (tex-common-initialization): Use them as prettify-symbols-alist
2956         and prettify-symbols-compose-predicate.
2958         Generalize prettify-symbols to arbitrary modes
2959         * lisp/progmodes/prog-mode.el
2960         (prettify-symbols-default-compose-p): New function.
2961         (prettify-symbols-compose-predicate): New variable.
2962         (prettify-symbols--compose-symbol): Use it.
2964 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
2966         Don't quote symbols 'like-this' in docstrings etc.
2967         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
2968         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
2969         * lisp/allout.el (allout-add-resumptions, allout-mode):
2970         * lisp/calculator.el (calculator-operators):
2971         * lisp/cedet/data-debug.el (dd-propertize):
2972         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
2973         * lisp/cedet/semantic/analyze/debug.el:
2974         (semantic-analyzer-debug-global-miss-text):
2975         * lisp/cedet/semantic/lex-spp.el:
2976         (semantic-lex-spp-replace-or-symbol-or-keyword):
2977         * lisp/cedet/semantic/symref.el:
2978         (semantic-symref-cleanup-recent-buffers-fcn):
2979         * lisp/cedet/semantic/tag.el (semantic-tag-class):
2980         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
2981         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
2982         * lisp/gnus/pop3.el (pop3-authentication-scheme):
2983         * lisp/help-fns.el (describe-function-orig-buffer):
2984         * lisp/imenu.el (imenu--history-list):
2985         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
2986         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
2987         (feedmail-queue-default-file-slug)
2988         (feedmail-queue-buffer-file-name):
2989         * lisp/net/mairix.el (mairix-searches-mode-map):
2990         * lisp/net/newst-backend.el (newsticker-retrieval-method)
2991         (newsticker-auto-mark-filter-list):
2992         * lisp/obsolete/vi.el (vi-mode):
2993         * lisp/progmodes/cc-engine.el (c-literal-type):
2994         * lisp/progmodes/cpp.el (cpp-face):
2995         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
2996         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
2997         * lisp/progmodes/pascal.el (pascal-auto-lineup):
2998         * lisp/progmodes/prog-mode.el (prog-widen):
2999         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
3000         (verilog-auto-lineup, verilog-auto-reset-widths)
3001         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
3002         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
3003         (flyspell-maybe-correct-doubling):
3004         * lisp/textmodes/table.el (table-justify, table-justify-cell)
3005         (table-justify-row, table-justify-column, table-insert-sequence)
3006         (table--justify-cell-contents):
3007         * lisp/url/url-auth.el (url-get-authentication):
3008         * lisp/window.el (display-buffer-record-window):
3009         * lisp/xml.el (xml-parse-file, xml-parse-region):
3010         * src/gfilenotify.c (Fgfile_add_watch):
3011         Don't quote symbols with apostrophes in doc strings.
3012         Use asymmetric quotes instead.
3013         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
3014         Likewise for symbol in diagnostic.
3015         * lisp/image.el (image-extension-data):
3016         * lisp/register.el (frame-configuration-to-register):
3017         * src/buffer.c (syms_of_buffer):
3018         Remove bogus apostrophes after symbols.
3019         * lisp/thumbs.el (thumbs-conversion-program):
3020         Quote Lisp string values using double-quotes, not apostrophes.
3022 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
3024         Describe frame geometry and related functions in Elisp manual
3025         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
3026         (Showing Images): Update references.
3027         * doc/lispref/elisp.texi (Top): Update node listing.
3028         * doc/lispref/frames.texi (Frame Geometry): New node.  Move
3029         `Size and Position' section here.
3030         (Size Parameters): Update references.
3031         (Mouse Position): Update references and nomenclature.  Describe
3032         new functions `x-mouse-absolute-pixel-position' and
3033         `x-set-mouse-absolute-pixel-position'.
3034         * doc/lispref/windows.texi (Window Sizes): Update references.
3035         (Resizing Windows): Update references.  Move description of
3036         `fit-frame-to-buffer' here.
3037         (Coordinates and Windows): Update nomenclature and references.
3038         Describe new arguments of `window-edges'.  Comment out
3039         descriptions of `window-left-column', `window-top-line',
3040         `window-pixel-left' and `window-pixel-top'.  Describe
3041         `window-absolute-pixel-position'.
3043 2015-08-20  Alan Mackenzie  <acm@muc.de>
3045         Handling of `c-parse-state'.  Fix low level bug.
3046         progmodes/cc-engine.el (c-remove-stale-state-cache-backwards): Add
3047         "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
3049 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
3051         In `widget-color--choose-action' quit *Color* window instead of deleting it
3052         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
3053         window instead of deleting it.
3055 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
3057         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
3058         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
3059         determine whether frame has a titlebar.
3060         Suggested by Eli Zaretskii <eliz@gnu.org>
3062 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
3064         Add a prettify-symbols-alist for (La)TeX
3065         * tex-mode.el (tex-prettify-symbols-alist): New variable holding
3066         an alist suitable as prettify-symbols-alist in (La)TeX modes.
3068 2015-08-19  Alan Mackenzie  <acm@muc.de>
3070         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
3071         Fixes debbugs#21275.
3072         In Emacs >= 25, let electric-pair-mode take precedence over
3073         delete-selection-mode.
3074         delsel.el (delete-selection-uses-region-p): New function, previously a
3075         lambda expression in a property value for `self-insert-command'.
3076         (top-level) Set the `delete-selection' property of `self-insert-command'
3077         to `delete-selection-uses-region-p'.
3078         progmodes/cc-cmds.el (top-level): Give the `delete-selection' property
3079         for c-electric-\(brace\|paren\) the value `delete-selection-uses-region-p'
3080         when the latter function exists.
3082 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
3084         Fix key binding quoting in tutorial *Help*
3085         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
3086         When generating help for custom key bindings, use the user-preferred
3087         quoting style rather than hardcoding the grave style.
3089 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
3091         Improve and future-proof OTF fonts support in w32uniscribe.c
3092         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
3093         about the expected results and why the new Uniscribe APIs are not
3094         used in this function.
3095         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
3096         (ScriptGetFontFeatureTags_Proc): New function typedefs.
3097         (uniscribe_new_apis): New static variable.
3098         (uniscribe_check_features): New function, implements OTF features
3099         verification while correctly accounting for features in the list
3100         after the nil member, if any.
3101         (uniscribe_check_otf_1): New function, retrieves the features
3102         supported by the font for the requested script and language using
3103         the Uniscribe APIs available from Windows Vista onwards.
3104         (uniscribe_check_otf): If the new Uniscribe APIs are available,
3105         use them in preference to reading the font data directly.  Call
3106         uniscribe_check_features to verify that the requested features are
3107         supported, replacing the original incomplete code.
3108         (syms_of_w32uniscribe): Initialize function pointers for the new
3109         Uniscribe APIs.  (Bug#21260)
3110         (otf_features): Scan the script, langsys, and feature arrays back
3111         to front, so that the result we return has them in alphabetical
3112         order, like ftfont.c does.
3113         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
3114         New variable for debugging w32uniscribe.c code.
3116 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
3118         * isearch.el (isearch-search-fun-default): Revert a5bdb87
3119         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
3120         clause of `isearch-search-fun-default'. That lax variable does not
3121         refer to lax-whitespacing.  Related to (bug#21777).
3122         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
3123         * character-fold.el (character-fold-search): Set to nil
3124         Default to nil for now, until someone implements proper
3125         lax-whitespacing with char-fold searching.
3127 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
3129         Fix doc-string of `help-mode-finish'.
3130         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
3132         In nsimage.m include coding.h (Bug#21292)
3133         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
3135         Move window edge functions to Elisp.
3136         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
3137         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
3138         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
3139         Move to window.el.
3140         (calc_absolute_offset): Remove.
3141         * lisp/frame.el (frame-edges): New function.
3142         * lisp/window.el (window-edges, window-pixel-edges)
3143         (window-absolute-pixel-edges): Move here from window.c.
3144         (window-body-edges, window-body-pixel-edges)
3145         (window-absolute-body-pixel-edges): Move here from window.c and
3146         rename "inside" to "body".  Keep old names as aliases.
3147         (window-absolute-pixel-position): New function.
3149 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
3151         [Gnus]: Use overlay functions directly
3152         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
3153         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
3154         (gnus-article-highlight-signature, gnus-article-extend-url-button)
3155         (gnus-article-add-button, gnus-insert-prev-page-button)
3156         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
3157         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
3158         (gnus-cite-add-face):
3159         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
3160         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
3161         (gnus-tree-recenter, gnus-highlight-selected-tree):
3162         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
3163         (gnus-summary-show-thread, gnus-summary-hide-thread)
3164         (gnus-highlight-selected-summary):
3165         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
3166         * lisp/gnus/message.el (message-fix-before-sending)
3167         (message-toggle-image-thumbnails):
3168         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
3169         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
3170         Use overlay functions directly instead of using gnus-overlay-*,
3171         message-overlay-*, and sieve-overlay-*.
3172         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
3173         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
3174         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
3175         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
3176         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
3177         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
3178         (message-overlay-get, message-overlay-put, message-overlays-in):
3179         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
3180         (sieve-overlays-at):
3181         Remove.
3183 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
3185         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version.
3186         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
3187         builds can use the declaration from the system headers.
3188         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
3189         definition of TITLEBAR_INFO.
3190         Suggested by Eli Zaretskii  <eliz@gnu.org>
3192 2015-08-19  Glenn Morris  <rgm@gnu.org>
3194         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
3196 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
3198         Use new q ‘format’ flag when fixing quotes in C
3199         * src/image.c (image_size_error): New function.  All uses of
3200         image_error with "Invalid image size ..."  changed to use it.
3201         * src/image.c (image_size_error, xbm_load_image, xbm_load)
3202         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
3203         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
3204         (imagemagick_load, svg_load, svg_load_image, gs_load)
3205         (x_kill_gs_process):
3206         * src/lread.c (load_warn_old_style_backquotes):
3207         * src/xfaces.c (load_pixmap):
3208         * src/xselect.c (x_clipboard_manager_error_1):
3209         Use %qs, not uLSQM and uRSQM.
3210         * src/syntax.c (Finternal_describe_syntax_value):
3211         Prefer Fsubstitute_command_keys to Fformat, as this lets
3212         us use AUTO_STRING.
3213         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
3214         as it's now guaranteed to be ASCII.
3215         * src/xselect.c (x_clipboard_manager_error_2):
3216         Avoid grave accent in low-level stderr diagnostic.
3218 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
3220         New q flag for ‘format’
3221         * doc/lispref/processes.texi (Sentinels):
3222         Don't hardwire grave quoting style in example.
3223         * doc/lispref/strings.texi (Formatting Strings):
3224         * etc/NEWS:
3225         Document new q flag.
3226         * src/editfns.c (Fformat): Implement it.
3228 2015-08-18  Daiki Ueno  <ueno@gnu.org>
3230         pinentry.el: Add debugging support
3231         * lisp/net/pinentry.el (pinentry-debug): New variable.
3232         (pinentry-debug-buffer): New variable.
3233         (pinentry--process-filter): Send input to the debug buffer, if
3234         `pinentry-debug' is set.
3236         pinentry.el: Improve multiline prompt
3237         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
3238         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
3239         command.
3241 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
3243         Fix multibyte confusion in diagnostics
3244         * src/print.c (print_error_message):
3245         Don't assume that the caller's name is unibyte.
3246         * src/xdisp.c (vadd_to_log):
3247         Don't assume that the formatted diagnostic is unibyte.
3249         Fix file name encodings in diagnostics
3250         Also, close some minor races when opening image files, by opening
3251         them once instead of multiple times.
3252         * src/gtkutil.c (xg_get_image_for_pixmap):
3253         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
3254         (svg_load):
3255         * src/nsimage.m (allocInitFromFile:):
3256         * src/xfns.c (xg_set_icon):
3257         Encode file name, since x_find_image_file no longer does that.
3258         * src/image.c (x_find_image_fd): New function.
3259         (x_find_image_file): Use it.  Do not encode resulting file name,
3260         since callers sometimes need it decoded.
3261         (slurp_file): File arg is now a fd, not a file name.
3262         All callers changed.  This saves us having to open the file twice.
3263         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
3264         (svg_load):
3265         Use x_find_image_fd and fdopen to save a file-open.
3266         Report file name that failed.
3267         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
3269 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
3271         Allow blink-matching-paren to jump off screen
3272         * doc/emacs/programs.texi (Matching): Mention the
3273         `blink-matching-paren' value `jump-offscreen'.
3274         * lisp/simple.el (blink-matching-paren): New possible value.
3275         (blink-matching-paren-on-screen): Clarify the docstring.
3276         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
3278         Refine the previous change
3279         * lisp/simple.el (blink-matching-open): Use minibuffer-message
3280         outside of save-excursion (bug#21286).
3282 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
3284         Rewrite and add frame geometry related functions.
3285         * src/frame.c (Fframe_position): New function.
3286         (Fset_frame_position): Rename parameters and rewrite doc-string.
3287         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
3288         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
3289         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
3290         Qtitle_bar_size.
3291         * src/nsfns.m (frame_geometry): New function.
3292         (Fx_frame_geometry): Call frame_geometry.
3293         (Fx_frame_edges): New function.
3294         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
3295         (GetTitleBarInfo_Proc): Define these so we can use the
3296         GetTitleBarInfo API.
3297         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
3298         (Fx_frame_geometry): Rewrite.
3299         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
3300         (Fx_set_mouse_absolute_pixel_position): New functions.
3301         * src/xfns.c (frame_geometry): New function.
3302         (Fx_frame_geometry): Call frame_geometry.
3303         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
3304         (Fx_set_mouse_absolute_pixel_position): New functions.
3306 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
3308         Improve Tramp's compatibility
3309         * lisp/net/tramp.el (tramp-get-method-parameter):
3310         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
3311         (tramp-adb-get-device):
3312         * lisp/net/trampver.el (tramp-repository-get-version):
3313         Use `tramp-compat-replace-regexp-in-string'.
3315 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
3317         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
3318         Encode/decode string.
3320 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
3322         Clarify what happens to match data on failure
3323         Problem reported by Ernesto Alfonso (Bug#21279).
3324         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
3325         Document more carefully what happens to match data after a failed
3326         search.
3327         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
3328         the return value is undefined if the last search failed.
3329         (Fmatch_data): Simplify doc string line 1.
3331 2015-08-18  Daiki Ueno  <ueno@gnu.org>
3333         Revert "pinentry.el: Support external passphrase cache"
3334         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
3335         pinentry.el shouldn't directly interact with the secrets service,
3336         but ask the caller to cache the passphrase.
3338 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
3340         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
3341         Message mode hooks.
3343 2015-08-17  Daiki Ueno  <ueno@gnu.org>
3345         epg.el: Make gpgconf output parsing future proof
3346         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
3347         --list-options" output.
3349         pinentry.el: Support external passphrase cache
3350         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
3351         (pinentry--allow-external-password-cache): New local variable.
3352         (pinentry--key-info): New local variable.
3353         (secrets-enabled, secrets-search-items, secrets-get-secret):
3354         Declare.
3355         (pinentry--send-passphrase): New function, split from
3356         `pinentry--process-filter'.
3357         (pinentry--process-filter): Use secrets.el to retrieve passphrase
3358         from login keyring.
3360         pinentry.el: Popup window for multiline prompt
3361         * lisp/net/pinentry.el (pinentry): New custom group.
3362         (pinentry-popup-prompt-window): New user option.
3363         (pinentry-prompt-window-height): New user option.
3364         (pinentry--prompt-buffer): New variable.
3365         (pinentry-prompt-mode-map): New variable.
3366         (pinentry-prompt-mode): New function.
3367         (pinentry--prompt): New function.
3368         (pinentry--process-filter): Use `pinentry--prompt' instead of
3369         `read-passwd' and `y-or-n-p'.
3371 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
3373         message.el: Silent the byte compiler
3374         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
3375         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
3376         (message-delete-overlay, message-window-inside-pixel-edges):
3377         Declare before using.
3379         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
3380         (message-window-inside-pixel-edges): XEmacs compatible functions.
3382 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3384         * message.el (message-toggle-image-thumbnails): New command.
3386 2015-08-17  Noah Friedman  <friedman@splode.com>
3388         (blink-matching-open): Restore point before calling minibuffer-message.
3390 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
3392         Update version number in header (now matches help)
3394 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
3396         Curved quotes in --batch diagnostics in non-UTF-8
3397         When run with --batch, check that curved quotes are compatible with
3398         the system locale before outputting them in diagnostics.
3399         Problem reported by Eli Zaretskii in:
3400         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
3401         * lisp/startup.el (command-line): Set internal--text-quoting-flag
3402         after the standard display table is initialized.
3403         * src/doc.c (default_to_grave_quoting_style): New function.
3404         (text_quoting_style): Use it.
3405         (text_quoting_flag): New static var, visible to Lisp as
3406         internal--text-quoting-flag.
3407         * src/emacs.c: Include <wchar.h> if available.
3408         (using_utf8): New function.
3409         (main): Use it to initialize text_quoting_flag.
3410         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
3411         Don't define, as it's not needed and it clashes with wchar.h.
3413 2015-08-17  Glenn Morris  <rgm@gnu.org>
3415         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
3416         from makeinfo about spurious "Note:" cross-reference, and for grammar.
3418 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
3420         Minor change in variable initialization on MS-Windows
3421         * src/w32fns.c <after_dead_key>: Initialize to -1.
3422         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
3423         non-zero.
3425         Fix a bug with LWindow key remapping on MS-Windows
3426         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
3428 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
3430         Improve fontset support for latest OTF script tags
3431         * lisp/international/fontset.el (otf-script-alist): Add some
3432         missing script tags.
3433         (setup-default-fontset): Include settings for v2 versions of the
3434         script tags used by some modern OTF/TTF fonts.
3436 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
3438         Spelling fixes
3440 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
3442         Use curved quotes in core elisp diagnostics
3443         In the core elisp files, use curved quotes in diagnostic formats,
3444         so that they follow user preference as per ‘text-quoting-style’
3445         rather than being hard-coded to quote `like this'.
3446         * lisp/abbrev.el (expand-region-abbrevs):
3447         * lisp/button.el (button-category-symbol, button-put)
3448         (make-text-button):
3449         * lisp/cus-start.el:
3450         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
3451         (custom--sort-vars-1, load-theme):
3452         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
3453         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
3454         (cl-generic-generalizers):
3455         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
3456         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
3457         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
3458         (advice--make, define-advice):
3459         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
3460         * lisp/emacs-lisp/timer.el (timer-event-handler):
3461         * lisp/env.el (setenv):
3462         * lisp/facemenu.el (facemenu-add-new-face)
3463         (facemenu-add-new-color):
3464         * lisp/faces.el (face-documentation, read-face-name)
3465         (face-read-string, read-face-font, face-spec-set-match-display)
3466         (read-color, x-resolve-font-name):
3467         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
3468         (set-auto-mode, hack-local-variables)
3469         (hack-one-local-variable--obsolete)
3470         (dir-locals-set-directory-class, write-file)
3471         (basic-save-buffer, delete-directory, copy-directory)
3472         (recover-session, recover-session-finish, insert-directory)
3473         (file-modes-char-to-who, file-modes-symbolic-to-number)
3474         (move-file-to-trash):
3475         * lisp/font-lock.el (font-lock-fontify-buffer):
3476         * lisp/format.el (format-write-file, format-find-file)
3477         (format-insert-file):
3478         * lisp/frame.el (get-device-terminal, select-frame-by-name):
3479         * lisp/fringe.el (fringe--check-style):
3480         * lisp/help.el (describe-minor-mode-from-indicator):
3481         * lisp/image.el (image-type):
3482         * lisp/international/fontset.el (x-must-resolve-font-name):
3483         * lisp/international/mule-cmds.el (prefer-coding-system)
3484         (select-safe-coding-system-interactively)
3485         (select-safe-coding-system, activate-input-method)
3486         (toggle-input-method, describe-current-input-method):
3487         * lisp/international/mule-conf.el (code-offset):
3488         * lisp/mouse.el (minor-mode-menu-from-indicator):
3489         * lisp/replace.el (query-replace-read-from)
3490         (occur-after-change-function, occur-1):
3491         * lisp/scroll-bar.el (scroll-bar-columns):
3492         * lisp/simple.el (execute-extended-command)
3493         (undo-outer-limit-truncate, compose-mail, set-variable)
3494         (choose-completion-string, define-alternatives):
3495         * lisp/startup.el (site-run-file, tty-handle-args, )
3496         (command-line, command-line-1):
3497         * lisp/subr.el (noreturn, define-error, add-to-list)
3498         (read-char-choice):
3499         * lisp/term/common-win.el (x-handle-xrm-switch)
3500         (x-handle-name-switch, x-handle-args):
3501         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
3502         Use curved quotes in diagnostics.
3503         * lisp/international/mule.el (find-auto-coding):
3504         Use " to quote in a diagnostic, to be consistent with the rest of
3505         this file.
3507         Convert lisp/term/x-win.el to UTF-8
3508         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
3509         runtime behavior, and the file is multilingual so compile-time
3510         appearance shouldn't be an issue.
3511         * admin/notes/unicode: Document this.
3513 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
3515         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
3516             * losp/progmodes/verilog-mode.el: Fix some non-automated indent
3517             issues and comments, bug943.  (verilog-type-font-keywords): Cycle
3518             delay operators like ##1 and ##[0:$] are now highlighted in their
3519             entirety similarly to the # delay-control operator.  Likewise, the
3520             followed-by operators #-# and #=# are no longer partially
3521             highlighed.  (verilog-backward-syntactic-ws-quick,
3522             verilog-skip-backward-comments): Minor performance improvements to
3523             buffer traversal functions for reduced latency.  (verilog-calc-1,
3524             verilog-in-deferred-immediate-final-p): When the keyword 'final'
3525             follows 'assert/assume/cover', then it is part of a deferred
3526             immediate assertion item and should not be treated as a final
3527             construct for indentation.  Reported by Yuri Sugihara.
3528             (verilog-do-indent): Virtual task/function/class definition lines
3529             should not be considered as declarations.  Reported by Enzo Chi.
3530             (verilog-do-indent): Do not falsely indent to '=' of
3531             property/sequence operators on subsequent lines of a multi-line
3532             statement.  (verilog-assignment-operator-re): Fix '!==' operator
3533             and add support for '<->', ':/', '#-#', and '#=#' operators.
3534             (verilog-calculate-indent, verilog-label-be): Enable
3535             case-sensitive regular expression parsing when looking for
3536             keywords.  (verilog-calc-1): Detect 'pure virtual method'
3537             declarations which exist in abstract classes.  Reported by Enzo
3538             Chi and Kaushal Modi.  (verilog-backward-ws&directives): When
3539             moving back to the start of a line and the preceeding line ended
3540             with an escaped-newline, then jump up one line.  This properly
3541             consumes a multi-line pre-processor directive.  Reported by
3542             Kaushal Modi.  (verilog-dpi-import-export-re,
3543             verilog-extended-complete-re, verilog-calc-1): Teach verilog-mode
3544             to properly indent after a DPI import/export statement that
3545             resides outside of a module.  Reported by Kaushal Modi.
3546             (verilog-extended-complete-re): Update regexp to match both
3547             "DPI-C" and "DPI".  Reported by Kaushal Modi.
3549 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
3551         substitute-command-keys a few more doc strings
3552         * lisp/allout.el (outlineify-sticky):
3553         * lisp/files.el (hack-one-local-variable--obsolete):
3554         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
3555         Use substitute-command-keys on some doc strings so that
3556         they don't use hard-coded key bindings or quoting styles.
3558         Fix quoting in Fformat calls
3559         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
3560         (xpm_load, xpm_load_image, pbm_load, png_load_body)
3561         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
3562         (imagemagick_load, svg_load, svg_load_image, gs_load)
3563         (x_kill_gs_process):
3564         * src/lread.c (load_warn_old_style_backquotes):
3565         * src/xfaces.c (load_pixmap):
3566         * src/xselect.c (x_clipboard_manager_error_1):
3567         Quote diagnostics according to user preference when calling
3568         Fformat or its derivatives.
3570 2015-08-15  Glenn Morris  <rgm@gnu.org>
3572         * admin/admin.el (set-version, set-copyright): Remove deleted files.
3574 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
3576         Allow describe-function helpers to access buffer-local values.
3577         This will be used by cedet/mode-local.el `describe-mode-local-override'
3578         on `help-fns-describe-function-functions' in upstream CEDET.
3579         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
3580         `describe-function'.
3581         (describe-function): Bind it, save it on the help xref stack.
3583         Handle pulse-background being nil
3584         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
3585         pulse-background, handle it being nil.
3587 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
3589         Fix "\`" confusion in Lisp strings
3590         * admin/authors.el (authors-canonical-author-name):
3591         Fix typo by using "\\`" not "\`" in string RE.
3592         * lisp/obsolete/complete.el (PC-complete-as-file-name):
3593         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
3594         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
3595         Use plain "`", not the equivalent-but-confusing "\`", in strings.
3596         * lisp/textmodes/texinfmt.el: Fix comment likewise.
3598 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
3600         Remove 'nt/zipdist.bat' (no longer used)
3601         * nt/zipdist.bat: Remove - no longer used.
3603 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
3605         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
3606         rather than "getenforce".
3607         (tramp-sh-handle-set-file-selinux-context): Do not
3608         cache SELinux context if not all context components are given.
3610 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
3612         Add doc strings to 2 help-mode.el functions
3613         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
3614         strings.  (Bug#21263)
3616         Remove files used by the old MS-Windows specific build procedure
3617         * admin/unidata/makefile.w32-in:
3618         * doc/emacs/makefile.w32-in:
3619         * doc/lispintro/makefile.w32-in:
3620         * doc/lispref/makefile.w32-in:
3621         * doc/misc/makefile.w32-in:
3622         * leim/makefile.w32-in:
3623         * lib-src/makefile.w32-in:
3624         * lib/makefile.w32-in:
3625         * lisp/makefile.w32-in:
3626         * nt/INSTALL.OLD:
3627         * nt/config.nt:
3628         * nt/emacs-src.tags:
3629         * nt/envadd.bat:
3630         * nt/gmake.defs:
3631         * nt/makefile.w32-in:
3632         * nt/multi-install-info.bat:
3633         * nt/nmake.defs:
3634         * nt/paths.h:
3635         * src/makefile.w32-in: Files deleted.
3636         * nt/configure.bat: Remove everything except the blurb about the
3637         new build procedure.
3638         * make-dist: Remove references to makefile.w32-in in various
3639         directories, and to files in nt/ that were deleted.
3640         * etc/NEWS: Mention the fact that the files were dropped.
3642 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
3644         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
3645         (Bug#21248)
3647 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
3649         Default to inotify instead of gfile
3650         * configure.ac (with_file_notification): Fix typo that
3651         prevented suppression of file notification if HAVE_NS.
3652         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
3653         with_file_notification is 'yes' (Bug#21241).
3654         * etc/NEWS: Mention this.
3656         Fix broken URLs for ISO-IR
3657         * doc/emacs/mule.texi (Charsets):
3658         * lisp/international/mule-conf.el:
3659         Fix broken URL (Bug#21248).
3661         Low-level diagnostics now use ‘text-quoting-style’
3662         * src/doprnt.c (doprnt):
3663         Format ` and ' as per ‘text-quoting-style’.
3664         * src/xdisp.c (vmessage, message): Mention that the format should
3665         not contain ` or '.
3667         Prefer ‘format’ to ‘substitute-command-keys’
3668         * src/character.h (uLSQM, uRSQM): Move here ...
3669         * src/doc.c (uLSQM, uRSQM): ... from here.
3670         * src/doc.c (Fsubstitute_command_keys):
3671         * src/syntax.c (Finternal_describe_syntax_value):
3672         * lisp/cedet/mode-local.el (mode-local-print-binding)
3673         (mode-local-describe-bindings-2):
3674         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
3675         * lisp/cus-theme.el (describe-theme-1):
3676         * lisp/descr-text.el (describe-text-properties-1, describe-char):
3677         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
3678         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
3679         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
3680         * lisp/emacs-lisp/package.el (describe-package-1):
3681         * lisp/faces.el (describe-face):
3682         * lisp/help-fns.el (help-fns--key-bindings)
3683         (help-fns--compiler-macro, help-fns--parent-mode)
3684         (help-fns--obsolete, help-fns--interactive-only)
3685         (describe-function-1, describe-variable):
3686         * lisp/help.el (describe-mode):
3687         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
3688         to implement quoting style.  This generally makes the code simpler.
3690         Extend ‘format’ to translate curved quotes
3691         This is a followup to the recent doc string change, and deals with
3692         diagnostics and the like.  This patch is more conservative than
3693         the doc string change, in that the behavior of ‘format’ changes
3694         only if its first arg contains curved quotes and the user prefers
3695         straight or grave quotes.  (Come to think of it, perhaps we should
3696         be similarly conservative with doc strings too, but that can wait.)
3697         The upside of this conservatism is that existing usage is almost
3698         surely unaffected.  The downside is that we'll eventually have to
3699         change Emacs's format strings to use curved quotes in places where
3700         the user might want curved quotes, but that's a simple and
3701         mechanical translation that I'm willing to do later.  (Bug#21222)
3702         * doc/lispref/help.texi (Keys in Documentation):
3703         Move description of text-quoting-style from here ...
3704         * doc/lispref/strings.texi (Formatting Strings):
3705         ... to here, and describe new behavior of ‘format’.
3706         * etc/NEWS: Describe new behavior.
3707         * lisp/calc/calc-help.el (calc-describe-thing):
3708         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
3709         * lisp/info.el (Info-find-index-name):
3710         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
3711         of recently-added curved quotes.
3712         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
3713         Move from here ...
3714         * src/lisp.h: ... to here.
3715         * src/doc.c (text_quoting_style): New function.
3716         (Fsubstitute_command_keys): Use it.
3717         * src/editfns.c (Fformat): Implement new behavior.
3718         * src/lisp.h (enum text_quoting_style): New enum.
3720 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
3722         * src/keyboard.c: Use false/true instead of 0/1 for booleans
3723         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
3725 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
3727         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
3728         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
3730 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
3732         Flush file properties in Tramp
3733         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
3734         (tramp-sh-handle-set-file-times):
3735         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
3736         (tramp-adb-handle-set-file-times): Flush the file properties of
3737         the directory.
3739 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
3741         * doc/emacs/misc.text (Amusements): Fixed typo.
3743 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
3745         Don't miss warnings about removing string text properties while dumping
3746         * src/alloc.c (purecopy): Warn about removing a string's text
3747         properties even when the same string was already pure-copied
3748         earlier.
3749         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
3750         (elisp--xref-format-extra): Fix the commentary.
3752 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
3754         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049)
3756 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
3758         * lisp/progmodes/compile.el: Assume 8-wide TABs (bug#21038)
3759         * lisp/progmodes/compile.el: Use lexical-binding.
3760         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
3762 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
3764         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
3765         * lisp/uniquify.el: Remove redundant `:group's.
3767 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
3769         * lisp/net/tramp-adb.el
3770         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
3771         result to prevent modification of the tramp-cache by side effects.
3772         Use the correct cache key.
3774 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
3776         Make add_to_log varargs
3777         * src/alloc.c (run_finalizer_handler):
3778         * src/charset.c (load_charset_map_from_vector):
3779         * src/nsimage.m (ns_load_image):
3780         * src/xfaces.c (load_pixmap, load_color2):
3781         Simplify, now that add_to_log has a variable number of args.
3782         * src/image.c (image_error): Take a variable number of args.
3783         Callers simplified.
3784         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
3785         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
3786         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
3787         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
3789         Optional args for holiday-greek-orthodox-easter
3790         * etc/NEWS: Document this.
3791         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
3792         Add optional args N and STRING, mimicking the API and code of
3793         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
3795 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
3797         xref-find-definitions: Exclude more generic function items.
3798         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method): Add doc string.
3799         (cl--generic-find-defgeneric-regexp): New.
3800         (find-function-regexp-alist): Add it.
3801         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
3802         elisp-mode.el, change to search for ";;; Code:"
3803         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
3804         (find-function-regexp-alist): Add them.
3805         * lisp/progmodes/elisp-mode.el:
3806         (elisp--xref-format, elisp--xref-format-extra): Change back to defvar due
3807         to bug#21237.
3808         (elisp--xref-find-definitions): Exclude co-located default methods for
3809         generic functions. Also exclude implicitly declared defgeneric.
3810         (elisp--xref-find-definitions): Handle C source properly. Exclude minor
3811         mode variables defined by 'define-minor-mode'.
3812         * test/automated/elisp-mode-tests.el: Declare generic functions, add
3813         tests for them.
3814         (xref-elisp-test-run): Fix bug.
3815         (emacs-test-dir): Improve initial value.
3816         (find-defs-defun-defvar-el): Don't expect defvar.
3817         (find-defs-feature-el): Match change to find-feature-regexp.
3819 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
3821         Improve warning about purecopy of strings with properties
3822         * src/alloc.c (purecopy): Show the offending string with the
3823         warning about removing its text properties.
3825 2015-08-12  Alan Mackenzie  <acm@muc.de>
3827         Introduce new macros to cover Emacs's new names in cl-lib.el.
3828         This also eliminates `mapcan' warnings in XEmacs.
3829         progmodes/cc-defs.el (c--mapcan-status): new variable to characterise
3830         [X]Emacs versions.
3831         (top-level): Require either 'cl or 'cl-lib, depending on
3832         c--mapcan-status.
3833         Change this back to cc-external-require from an eval-when-compile
3834         require.
3835         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
3836         (c--delete-duplicates): New macros which expand into either old or new
3837         names.
3838         (c-make-keywords-re, c-lang-defconst, c-lang-const) Use the new macros
3839         rather than the old names.
3840         progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan rather
3841         than mapcan.
3842         progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
3843         progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
3844         depending on c--mapcan-status.
3845         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
3846         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
3847         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
3848         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
3849         (c-decl-block-key, c-keywords, c-keywords-obarray)
3850         (c-regular-keywords-regexp, c-primary-expr-regexp,
3851         c-primary-expr-regexp)
3852         (c-block-prefix-disallowed-chars, c-known-type-key,
3853         c-nonlabel-token-key)
3854         (c-make-init-lang-vars-fun): Use the new macros rather than the old
3855         names.
3857 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
3859         loadhist.el (read-feature): Conform to completing-read
3860         * lisp/loadhist.el (read-feature): According to `completing-read'
3861           documentation, if collection is a list, then it must be a list of
3862           strings. And not a list of symbols like before.
3864 2015-08-12  David Kastrup  <dak@gnu.org>
3866         Deal gracefully with up-events (Bug#19746)
3867         * keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
3868         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
3869         those may easily be injected by user-level Lisp code.
3870         (read_key_sequence): Discard unbound up-events like unbound
3871         down-events: they are even more likely only relevant for special
3872         purposes.
3873         While Emacs will not produce up-events on its own currently (those are
3874         converted to drag or click events before being converted to
3875         Lisp-readable structures), the input queue can be made to contain them
3876         by synthesizing events to `unread-command-events'.  Emacs should deal
3877         consistently with such events.
3879 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
3881         Fix display of thin lines whose newline has line-height property of t
3882         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
3883         and descent values of non-empty glyph rows, since they could have
3884         forced low values deliberately.  (Bug#21243)
3886 2015-08-12  Richard Stallman  <rms@gnu.org>
3888         Offer to combine multiple To or CC fields.
3889         * sendmail.el (mail-combine-fields): New function.
3890         (mail-send): Call 'mail-combine-fields'.
3892         Don't decrypt encrypted files.
3893         * mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
3895         Handle encrypted mbox files.
3896         * rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt the mbox
3897         file if necessary.
3899         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
3900         * rmail.el (rmail-epa-decrypt-1): New subroutine.
3901         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
3902         In a mime message, reenable Mime and show the parts that
3903         were shown before.
3904         Add keyword "decrypt" if anything decrypted.
3906         epa-inhibit inhibits auto-recognition of .gpg files
3907         * lisp/epa-file.el (epa-inhibit): New variable.
3908         (epa-file-handler): Check epa-inhibit.
3910 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
3912         * emacs-lisp/lisp-mnt.el (lm-header): save-excursion
3914 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
3916         Respect python.el imenu when semantic-mode is off
3917         Fixes debbugs:21220
3918         * lisp/cedet/semantic/wisent/python.el: Do not force
3919         wisent-python-default-setup on python-mode-hook.
3921 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
3923         Give names to Unicode code points in C code
3924         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
3925         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
3926         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
3927         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
3928         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
3929         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
3930         (OBJECT_REPLACEMENT_CHARACTER):
3931         New named constants for Unicode code points.
3932         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
3933         * src/composite.c (char_composable_p):
3934         * src/lread.c (readevalloop, read1):
3935         * src/xdisp.c (get_next_display_element):
3936         Use them.
3937         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
3938         Remove; now in character.h.
3940 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
3942         elisp--xref-find-definitions handle cl-defstuct default constructor
3943         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
3944         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
3945         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
3946         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
3947         from xref-elisp-test for ease of debugging.
3948         (xref-elisp-deftest): Rename from xref-elisp-test.
3949         (find-defs-constructor): New test.
3950         (find-defs-defgeneric-el): Match batch test config.
3951         (compile): Required for find-defs compilation-minor-mode test.
3952         (find-defs-defvar-el): Match code change.
3953         (find-defs-face-el): Match code change.
3954         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
3955         Improve doc string.
3957 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
3959         * lisp/replace.el (perform-replace): Document `replacements'.
3960         (perform-replace): Move the description of the format of `replacements' from
3961         the body's comment to the docstring.
3963 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
3965         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
3966         sequence.  Recent adb version send initial escape sequences, even
3967         when terminal type is set to TERM=dumb.
3969 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
3971         Rewrite elisp--xref-find-definitions to handle many more cases; add tests.
3972         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location): deleted
3973         (elisp--xref-format-cl-defmethod): new
3974         (find-feature-regexp): new
3975         (find-alias-regexp): new
3976         (elisp--xref-make-xref): new
3977         (elisp--xref-find-definitions): Rewrite using the above, handle many more
3978         cases. Always output all available definitions.
3979         (xref-location-marker): No need for special cases.
3980         * test/automated/elisp-mode-tests.el: Add more tests of
3981         elisp--xref-find-definitions, improve current tests.
3983 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
3985         Fix recording of events pushed onto unread-command-events
3986         * src/keyboard.c (read_char): Make sure events read from
3987         unread-command-events and unread-post-input-method-events are
3988         always recorded by record_char.  Reported by David Kastrup
3989         <dak@gnu.org>, see
3990         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
3992 2015-08-10  Samer Masterson  <samer@samertm.com>
3994         Set file buffer as current for "--file"
3995         * lisp/startup.el (command-line-1): Set file buffer as current before
3996         it is displayed so it can be used with options like
3997         "--eval".  (Bug#21095)
3999 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
4001         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
4002         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
4003         after setting LC_ALL to the desired locale, to avoid affecting how
4004         numbers are read and printed.  (Bug#21223)
4006 2015-08-10  Alan Mackenzie  <acm@muc.de>
4008         Fix "Invalid search bound (wrong side of point)" in fontification.
4009         progmodes/cc-fonts.el (c-font-lock-declarators): After skipping an
4010         initialization expression, check point is not beyond the fontification
4011         limit.
4013 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
4015         Fix DPI calculation when Xft/DPI is default
4016         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
4017         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
4018         Remove unnecessary cast while we're in the neighborhood.
4020 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
4022         Add project-vc-search-path and project-vc-ignores
4023         * lisp/progmodes/project.el (project-vc): New group.
4024         (project-vc-search-path, project-vc-ignores): New variables.
4025         (project--value-in-dir): Utility function.
4026         (project-search-path, project-ignores): Use them.
4027         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
4028         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
4030 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
4032         Fix some minor quoting issues with grave accent
4033         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
4034         Remove redundant quotes.
4035         * src/doc.c (uLSQM, uRSQM): New macros.
4036         * src/doc.c (Fsubstitute_command_keys):
4037         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
4038         preference for quotes rather than hardcoding the ‘grave’ style.
4039         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
4040         (re_match_2_internal) [DEBUG]: In debugging output, quote C
4041         strings with "...", not `...'.
4043         ChangeLog.2 ignores remote-tracking merges
4044         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
4045         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
4046         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
4048 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
4050         Use kpsewhich in ffap-latex-mode, if available
4051         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
4052         (ffap-latex-mode): Use kpsewhich if available.
4054         ffap: disallow braces in filenames for tex modes
4055         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
4056         braces in tex-related modes.
4058         Remove useless backslashes from ffap-string-at-point-mode-alist
4059         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
4060         misleading backslashes from default value.
4062         Augment docstring of ffap-string-at-point-mode-alist
4063         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
4064         and END are handled.
4066 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
4068         Remove no-op calls to substitute-command-keys
4069         * lisp/org/org-src.el (org-edit-src-code)
4070         (org-edit-fixed-width-region):
4071         * lisp/simple.el (completion-setup-function):
4072         Remove calls to substitute-command-keys that always just return
4073         their argument.
4075 2015-08-09  Daiki Ueno  <ueno@gnu.org>
4077         Utilize `quit-window' in epa.el
4078         * epa.el (epa-exit-buffer-function): Set to `quit-window'.
4079         (Bug#21210)
4081 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
4083         fix link to source code in help window
4084         * lisp/help-fns.el (find-lisp-object-file-name): remove code that
4085         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
4086         'No longer include timestamp in header of .elc files'. Add code
4087         that will return .el source file in load-path.
4089 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
4091         * isearch.el (isearch-search-fun-default): (Bug#21164)
4092         Respect `isearch-lax-whitespace' when searching through
4093         `isearch-word'.
4095 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
4097         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
4099         * org.el: Fix up some lexical scoping warnings, and use dolist
4100         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
4101         (org-set-regexps-and-options, org-assign-fast-keys)
4102         (org-contextualize-keys, org-contextualize-validate-key)
4103         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
4104         (org-find-olp, org-find-exact-heading-in-directory)
4105         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
4106         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
4107         (org-replace-escapes): Use dolist.
4108         (org-mode): Optimize away XEmacs-only code.
4109         (org-refile-get-targets): Remove unused var `f'.
4110         (org-fast-todo-selection): Remove unused var `e'.
4111         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
4112         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
4113         (org-format-latex): Use dolist.  Remove unused var `e'.
4114         (org-toggle-heading): Access vars lexically rather than dynamically.
4115         (org-backward-sentence, org-forward-sentence, org-meta-return)
4116         (org-kill-line): Mark arg as unused.
4117         (org-submit-bug-report): Silence compiler warning.
4118         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
4119         (org-get-cursor-date): Remove unused var `tm'.
4120         (org-comment-or-uncomment-region): Use standard name `_'.
4121         (reftex-docstruct-symbol, reftex-cite-format): Declare to
4122         silence byte-compiler.
4123         (org-reftex-citation): Add `org--' prefix to dynamically scoped
4124         `rds' var.
4126 2015-08-08  Nicolas Petton  <nicolas@petton.fr>
4128         Merge remote-tracking branch 'origin/fix/subsequence-error-with-negative-sequences'
4130 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
4132         Electric quote if coding is undecided or no conv
4133         * lisp/electric.el (electric--insertable-p): Also say that a
4134         string is insertable if the buffer file coding system is undecided
4135         or uses no conversion, as curved quotes will work in either case.
4137         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
4139 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
4141         Fix overlay string display regressions introduced in Emacs 24.5
4142         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
4143         buffer position, if we move the iterator to a new position as
4144         result of jumping over text covered by a "replacing" display
4145         property.
4146         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
4148         Support recovery from C stack overflow on MS-Windows
4149         * src/w32fns.c (w32_reset_stack_overflow_guard)
4150         (stack_overflow_handler): New functions for handling C stack
4151         overflow exceptions.
4152         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
4153         specially, and zero out except_addr if we do.
4154         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
4155         mode.
4156         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
4157         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
4158         the MinGW build, but the code guarded by that is for Posix hosts.
4159         * src/keyboard.c (command_loop) [WINDOWSNT]: Call
4160         w32_reset_stack_overflow_guard.
4161         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
4162         (sigsetjmp): New macro.
4163         (w32_reset_stack_overflow_guard): Declare the prototype.
4164         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
4166 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
4168         Improve error signalling for seq-subseq.
4170         * lisp/seq.el (seq-subseq): The existing behaviour is to error
4171         when indexes are too large, but to silently ignore numbers which
4172         are too negative for lists.  String and vector handling errors in
4173         both cases. This has been regularlised. Error signalling behaviour
4174         has been explicitly added to the docstring.
4176         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
4177         therefore also impacted by this change. The docstring has been
4178         updated to reflect this.
4180         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
4181         added for these exceptional cases, as well as one non exceptional
4182         base case.
4184 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
4186         Improve error checking in tramp-adb.el
4187         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
4188         Improve error checking.  "ls -l" on Android in Enforcing mode can
4189         print "lstat './FILENAME failed: Permission denied".
4191 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
4193         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
4194         non-struct vectors.
4196 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
4198         lisp/window.el: fix typo, more `display-buffer-use-some-frame'
4199         * lisp/window.el: fix typo that broke build
4200         (display-buffer--action-function-custom-type): add
4201         `display-buffer-use-some-frame'
4202         (display-buffer): add `display-buffer-use-some-frame' to doc string
4204         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
4205         * lisp/window.el (display-buffer-use-some-frame): Add support for
4206         'inhibit-same-window in alist.
4207         * doc/windows.texi (display-buffer-use-some-frame): Doc support for
4208         'inhibit-same-window in alist.
4210 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
4212         Avoid infinite loop in display of invisible text in strings
4213         * src/xdisp.c (handle_invisible_prop): If the next change of
4214         invisibility spec does not mean the beginning of a visible text,
4215         update the string position from which to start the search for the
4216         next invisibility change.  This avoids an infinite loop when we
4217         have more than one invisibility spec that are made inactive by
4218         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
4219         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
4220         for the situation that caused bug #21200.
4222 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
4224         * lisp/emacs-lisp/package.el: Simplify describe-package-1
4225         (package-help-section-name-face): New face.
4226         (package--print-help-section): New function.
4227         (describe-package-1): Refactor section printing.
4228         (package-make-button): Use face instead of font-lock-face, which
4229         doesn't work on buttons.
4231         * lisp/emacs-lisp/package.el: Define custom faces
4232         (package-name-face, package-description-face)
4233         (package-status-built-in-face, package-status-external-face)
4234         (package-status-available-face, package-status-new-face)
4235         (package-status-held-face, package-status-disabled-face)
4236         (package-status-installed-face, package-status-dependency-face)
4237         (package-status-unsigned-face, package-status-incompat-face)
4238         (package-status-avail-obso-face): New faces.
4239         (package-menu--print-info-simple): Use them.
4241 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
4243         Fix some confusion with ‘format’
4244         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
4245         (allout-graphics-modification-handler):
4246         Protect arbitrary string in a format context with "%s" format.
4247         * lisp/avoid.el:
4248         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
4249         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
4250         * lisp/erc/erc-button.el (erc-button-beats-to-time):
4251         * lisp/gnus/message.el (message-send-form-letter):
4252         * lisp/org/ob-core.el (org-babel-check-evaluate)
4253         (org-babel-confirm-evaluate):
4254         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
4255         * lisp/org/ox-latex.el (org-latex-compile):
4256         * lisp/org/ox-man.el (org-man-compile):
4257         * lisp/org/ox-odt.el (org-odt-template):
4258         * lisp/org/ox-texinfo.el (org-texinfo-compile):
4259         * lisp/progmodes/prolog.el (prolog-help-info)
4260         (prolog-view-predspec):
4261         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
4262         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
4263         * lisp/textmodes/rst.el (rst-replace-lines):
4264         Change (message (format ...)) to (message ...), and likewise
4265         for ‘error’.  This lessens the probability of confusion when the
4266         output of ‘format’ contains ‘%’.
4268 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
4270         * lisp/replace.el (replace-character-fold): Default to nil
4272         * lisp/character-fold.el: Fix lax whitespace
4273         (character-fold-table): Don't make space match other whitespace chars.
4274         (character-fold-to-regexp): Simplify lax behaviour.
4276 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
4278         Preserve window point in xref-find-definitions-other-window
4279         Fix the problem reported by Ingo Logmar in
4280         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
4281         * lisp/progmodes/xref.el (xref--goto-char): Extract from
4282         xref--goto-location.
4283         (xref--pop-to-location): Use it. Replace xref--goto-location with
4284         a direct xref-location-marker call.
4285         (xref--show-location): Likewise.
4286         (xref--display-position): Use xref--goto-char.
4288         * lisp/progmodes/project.el: Add a paragraph to the front matter.
4290 2015-08-04  David Kastrup  <dak@gnu.org>
4292         Do not overwrite preexisting contents of unread-command-events
4293         * lisp/vc/emerge.el (emerge-show-file-name):
4294         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
4295         (vhdl-comment-insert, vhdl-hooked-abbrev):
4296         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
4297         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
4298         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
4299         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
4300         * lisp/obsolete/vip.el (vip-escape-to-emacs)
4301         (vip-prefix-arg-value, vip-prefix-arg-com):
4302         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
4303         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
4304         (quail-tibkey-update-translation):
4305         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
4306         * lisp/leim/quail/lao.el (quail-lao-update-translation):
4307         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
4308         (quail-japanese-self-insert-and-switch-to-alpha):
4309         * lisp/leim/quail/hangul.el (hangul2-input-method)
4310         (hangul3-input-method, hangul390-input-method):
4311         * lisp/language/hanja-util.el (hangul-to-hanja-char):
4312         * lisp/international/robin.el (robin-input-method):
4313         * lisp/international/quail.el (quail-start-translation)
4314         (quail-start-conversion):
4315         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
4316         (gnus-article-describe-key-briefly):
4317         * lisp/eshell/em-hist.el (eshell-list-history):
4318         * lisp/term.el (term-dynamic-list-input-ring)
4319         (term-dynamic-list-completions):
4320         * lisp/subr.el (momentary-string-display):
4321         * lisp/simple.el (read-quoted-char):
4322         * lisp/pcomplete.el (pcomplete-show-completions):
4323         * lisp/kmacro.el (kmacro-repeat-on-last-key):
4324         * lisp/info.el (Info-summary):
4325         * lisp/ehelp.el (electric-help-command-loop):
4326         * lisp/ebuff-menu.el (electric-buffer-list)
4327         (Electric-buffer-menu-exit):
4328         * lisp/double.el (double-translate-key):
4329         * lisp/comint.el (comint-dynamic-list-input-ring)
4330         (comint-dynamic-list-completions): Do not overwrite preexisting
4331         contents of `unread-command-events' when putting new events into
4332         it.
4334 2015-08-04  Daniel Colascione  <dancol@dancol.org>
4336         Improve ansi-color filtering of unrecognized escape sequences
4337         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
4338         escape sequences.
4339         (ansi-color-filter-apply): Filter out unrecognized escape sequences
4340         (ansi-color-apply): Filter out unrecognized escape sequences
4342 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
4344         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
4345         definitions to `easy-menu-define', improve a couple to account for
4346         async, and add a couple of new commands.
4348 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
4350         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
4352 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
4354         Add new 'calendar-weekend-days' option
4355         Make the days receiving the 'calendar-weekend-header' face freely
4356         customizable, as they differ by region/culture.
4357         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
4358         new variable.
4359         * lisp/calendar/calendar.el (calendar-generate-month): New variable
4360         calendar-weekend-days to customize day header fontification.
4362 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
4364         Redo text-quoting-style variable
4365         Rename help-quote-translation to text-quoting-style,
4366         and use symbols rather than characters as values.
4367         This follows suggestions along these lines by Alan Mackenzie in:
4368         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
4369         and by Drew Adams in:
4370         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
4371         * doc/lispref/help.texi (Keys in Documentation)
4372         * etc/NEWS:
4373         * lisp/cus-start.el (standard):
4374         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
4375         Document and/or implement the new behavior instead of the old.
4376         (syms_of_doc): New symbols 'grave' and 'straight'.
4378 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
4380         nnimap.el: Use IMAP MOVE extension if available
4381         * lisp/gnus/nnimap.el (nnimap-request-move-article)
4382         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
4383         Use MOVE extension if available.
4385         nnimap.el: Explicitly ask for server capabilities
4386         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
4387         capabilities will be returned in the login-result.
4389 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
4391         Treat help strings like other doc strings
4392         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
4393         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
4394         substitute-command-keys.
4395         * src/keyboard.c (show_help_echo, parse_menu_item): Call
4396         substitute-command-keys on the help string before displaying it.
4398         Also mention "curly quotes"
4399         See Drew Adams's email in:
4400         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
4401         * doc/lispref/help.texi (Keys in Documentation):
4402         Add index entry "curly quotes".
4403         * etc/NEWS: Use the phrase "curly quotes" too.
4405         ede-proj-target-makefile docstring tweaks
4406         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
4407         Consistently use "all:" to describe the all: target,
4408         replacing three different and confusingly-quoted usages.
4410 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
4412         Whitespace fixes
4414 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
4416         Don't abort emacsclientw when -a was specified
4417         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
4418         out if we are in emacsclientw and -a was specified.
4420 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
4422         Fix handling of 1st keystroke on MS-Windows
4423         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
4424         This is needed to correctly handle the session's first keystroke,
4425         if it has any modifiers.  (Bug#19994)
4427 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
4429         Substitute some customization etc. doc strings
4430         These changes apply substitute-command-keys to some
4431         doc strings that were going through untranslated
4432         when creating customization or other widgets.
4433         * lisp/cus-edit.el (custom-group-value-create):
4434         * lisp/wid-edit.el (widget-default-create):
4435         (widget-push-button-value-create):
4436         Treat the widget tag as a doc string.
4437         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
4438         Treat the :documentation value as a doc string.
4439         * lisp/wid-edit.el (widget-choose):
4440         Treat the choice names as doc strings.
4441         (widget-default-create): Treat the :doc value as a doc string.
4442         (widget-toggle-value-create): Treat the :on and :off values
4443         as doc strings.
4444         (widget-documentation-string-value-create):
4445         Substitute the doc string.
4447 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
4449         Add a second argument to project-ignores
4450         * lisp/progmodes/project.el (project-ignores): Add a second
4451         argument DIR.
4452         * lisp/progmodes/project.el (project-ignores): Only include the VC
4453         ignores if DIR is the VC root.
4454         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
4456 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
4458         Prevent incorrect display when 'line-spacing' variable is set
4459         * src/xdisp.c (try_window_id): Give up this optimization if the
4460         buffer has its 'line-spacing' variable set non-nil.
4462 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
4464         Don't pass NOVISIT to find-file
4465         * lisp/progmodes/etags.el (next-file):
4466         Don't pass NOVISIT to find-file (bug#21175).
4468         Ignore buffer restriction for tags-loop-eval
4469         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
4470         restriction (bug#21167).
4472 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
4474         Fix a thinko in 'ffap-gopher-at-point'
4475         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
4477         Honor 'line-spacing' for empty lines
4478         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
4479         property and 'line-spacing' frame parameter or variable or
4480         property for empty lines, by doing the same processing as in
4481         x_produce_glyph for newline characters.  (Bug#21165)
4483 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
4485         Simplify by assuming C99 integer division
4486         * src/floatfns.c (ceiling2, floor2, truncate2):
4487         Assume C99 (i.e., Fortran) semantics for integer division.
4488         This simplifies the code.
4490 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
4492         Don't overflow if computing approximate percentage
4493         * lisp/align.el (align-region):
4494         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
4495         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
4496         * lisp/cus-edit.el (custom-buffer-create-internal):
4497         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
4498         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
4499         (checkdoc-next-message-error):
4500         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
4501         * lisp/epa.el (epa-progress-callback-function):
4502         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
4503         * lisp/ffap.el (ffap-menu-rescan):
4504         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
4505         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
4506         * lisp/gnus/nneething.el (nneething-retrieve-headers):
4507         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
4508         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
4509         * lisp/gnus/nnml.el (nnml-retrieve-headers):
4510         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
4511         * lisp/gnus/nntp.el (nntp-retrieve-headers)
4512         (nntp-retrieve-articles):
4513         * lisp/imenu.el (imenu--relative-position):
4514         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
4515         (skkdic-convert-okuri-nasi):
4516         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
4517         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
4518         * lisp/org/org-list.el (org-update-checkbox-count):
4519         * lisp/org/org.el (org-table-map-tables)
4520         (org-update-parent-todo-statistics):
4521         * lisp/play/decipher.el (decipher-insert-frequency-counts)
4522         (decipher-analyze-buffer):
4523         * lisp/profiler.el (profiler-format-percent):
4524         * lisp/progmodes/cc-cmds.el (c-progress-update):
4525         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
4526         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
4527         (idlwave-list-load-path-shadows):
4528         * lisp/progmodes/opascal.el (opascal-step-progress):
4529         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
4530         (vhdl-scan-directory-contents):
4531         * lisp/textmodes/bibtex.el (bibtex-progress-message):
4532         * lisp/textmodes/flyspell.el (flyspell-small-region)
4533         (flyspell-external-point-words):
4534         * lisp/textmodes/table.el (table-recognize):
4535         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
4536         progress-report percentages and the like.  This avoids problems
4537         if (* 100 NUMERATOR) would overflow.
4538         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
4539         * lisp/gnus/registry.el (registry-reindex):
4540         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
4541         * lisp/descr-text.el (describe-char):
4542         * lisp/org/org-colview.el (org-nofm-to-completion):
4543         * lisp/ps-print.el (ps-plot):
4544         * lisp/simple.el (what-cursor-position):
4545         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
4546         more-complicated and less-accurate approximation.
4548         Fix some int overflows in profiler.c
4549         * src/profiler.c (make_log): Make args EMACS_INT, not int,
4550         to avoid unwanted behavior on 'int' overflow.
4551         (make_log, evict_lower_half, record_backtrace):
4552         Use ptrdiff_t, not int, for object indexes.
4554         Port to pedantic memcpy
4555         * src/keyboard.c (menu_bar_items, tool_bar_items):
4556         * src/xrdb.c (magic_db):
4557         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
4559         Merge from gnulib
4560         This incorporates:
4561         2015-07-29 time_rz: port to pedantic memcpy
4562         * lib/time_rz.c: Copy from gnulib.
4564 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
4566         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print): Fix bug
4567         When updating the very last entry, tabulated-list-print would
4568         erase it and then try to look at the next one (which obviously
4569         isn't there).
4571 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
4573         Allow to use the old key processing code on MS-Windows
4574         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
4575         New variable.
4576         (w32_wnd_proc): Use it to invoke the old code that processed
4577         character keys, as fallback, when this variable is non-nil.  Fix
4578         typos in comments.  (Bug#19994)
4580 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
4582         Improve handling of Unicode keyboard input on MS-Windows
4583         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
4584         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
4585         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
4586         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
4587         successful, don't call TranslateMessage.  (Bug#19994)
4589 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
4591         Fix default-directory in changeset diffs after vc-print-log
4592         * lisp/vc/log-view.el (log-view-diff-common): Move the
4593         revision-granularity check back into log-view-diff-changeset.
4594         (log-view-diff-changeset): Bind default-directory to the current
4595         VC root.
4597         Rename project-directories to project-roots
4598         * lisp/progmodes/project.el (project-search-path-function)
4599         (project-search-path): Update the docstring.
4600         (project-directories): Rename to `project-roots', update all
4601         callers and implementations accordingly.
4602         (project-root): Remove.
4603         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
4604         as the default file mask.
4606 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
4608         Support long URLs in w32-shell-execute
4609         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
4610         and filename_to_ansi to convert the DOCUMENT argument, as it could
4611         be a URL that is not limited to MAX_PATH characters.  Instead, use
4612         MultiByteToWideChar directly, and allocate heap storage as
4613         required to accommodate the converted string.  Likewise with
4614         non-Unicode operation.  Ensure OPERATION is null-terminated, even
4615         if it is longer than 32K bytes.  (Bug#21158)
4617 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
4619         vc-mtn-find-revision handle null rev.
4620         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): handle null rev
4622 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
4624         Add docs for display-buffer action display-buffer-use-some-frame
4625         * lisp/window.el (display-buffer-use-some-frame): improve doc string
4626         * doc/lispref/windows.texi (Display Action Functions): add
4627           display-buffer-use-some-frame
4628         * etc/NEWS: mention display-buffer-use-some-frame
4630         Add display-buffer action display-buffer-use-some-frame
4631         * lisp/window.el (display-buffer-use-some-frame): new
4633         Handle vc-mtn error more gently
4634         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): return "" when branch is nil
4636 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
4638         Fix Tramp problems with multihops, and nc.
4639         * lisp/net/tramp-cache.el (tramp-get-file-property)
4640         (tramp-set-file-property, tramp-flush-file-property)
4641         (tramp-get-connection-property, tramp-set-connection-property)
4642         (tramp-flush-connection-property): Remove hop from vector.
4643         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
4644         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
4645         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
4646         netstat to 60".
4647         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
4648         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
4649         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
4650         Keep hop in result.
4651         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
4652         Add hop tests.
4654 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
4656         Resurrect highlighting of repeated words by Flyspell Mode
4657         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
4658         characters between point and the doublon candidate, so that
4659         flyspell-word-search-backward finds it.  (Bug#21157)
4661         Fix redisplay of large images on expose events
4662         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
4663         between signed negative values and unsigned values.  This
4664         prevented redisplay on expose events when the window showed a very
4665         large image.
4667 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
4669         Remove unnecessary stack overflow dependency
4670         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
4671         Don't worry about $ac_cv_header_sys_resource_h and
4672         $ac_cv_func_getrlimit, as they're no longer needed for this.
4673         Problem reported by Eli Zaretskii in:
4674         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
4676 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
4678         Pacify compilation -Wincompatible-pointer-types warnings
4679         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
4680         warning.
4681         (CompareStringW_Proc): New typedef.
4682         (w32_compare_strings): Use it, to pacify compiler warnings under
4683         "-Wincompatible-pointer-types".
4684         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
4685         (GetDiskFreeSpaceExA_Proc): New typedefs.
4686         (Ffile_system_info): Use them, to pacify compiler warnings under
4687         "-Wincompatible-pointer-types".
4689 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
4691         Fix subscript error in calculate_direct_scrolling
4692         Use slightly-longer cost vectors.  Without this change,
4693         calculate_direct_scrolling can have a subscript violation when
4694         FRAME_LINES (frame) <= delta.
4695         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
4696         (line_ins_del, do_line_insertion_deletion_costs):
4697         Allocate and use slightly-larger cost vectors, ones based on
4698         FRAME_TOTAL_LINES instead of FRAME_LINES.
4700         Fix uninitalized value in encode_coding_object
4701         * src/coding.c (encode_coding_object): Also initialize
4702         coding->src_pos and coding->src_pos_byte when NILP (src_object).
4703         This avoids later use of uninitialized storage.
4705 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
4707         * doc/lispref/variables.texi (Variable Aliases): Typo fix.  (Bug#21141)
4709 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
4711         Merge from gnulib
4712         This incorporates:
4713         2015-07-27 time_rz: port better to MinGW
4714         2015-07-27 time: port __need_time_t to MinGW
4715         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
4716         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
4717         * lib/time-internal.h: New file, from gnulib.
4719 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
4721         Handle NULL pointers in w32heap.c allocation routines
4722         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
4723         freeable".
4724         (realloc_after_dump, realloc_before_dump, free_before_dump):
4725         Handle NULL pointers gracefully, as Emacs now seems to expect
4726         that.
4728         Fix Cairo build without PNG
4729         * src/image.c: Define PNG function when USE_CAIRO is defined, even
4730         if HAVE_PNG is not.  (Bug#21133)
4732         MS-Windows follow-up for recent TZ-related changes
4733         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
4734         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
4735         picking up 'struct timespec' from pthread.h, if it is installed on
4736         the user's system.  We want either the definitions from MinGW
4737         system headers, if available, or the Gnulib replacements if not.
4738         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
4739         lib/time.h.
4740         * lib/time.in.h: Don't let __need_* symbols affect what happens on
4741         MinGW.  These symbols are defined by MinGW system headers, but we
4742         don't want that to affect whether Gnulib portions of the header
4743         are or aren't used.
4745 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
4747         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
4749         New optional ZONE arg for format-time-string etc.
4750         This simplifies time conversions in other time zones.
4751         It also prevents display-time-world tampering with TZ (Bug#21020).
4752         * admin/admin.el (add-release-logs):
4753         Use improved add-log-time-format API.
4754         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
4755         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
4756         * configure.ac (tzalloc): Remove test for this, since
4757         Emacs no longer uses HAVE_TZALLOC directly.
4758         * doc/lispref/os.texi (Time of Day, Time Conversion)
4759         (Time Parsing):
4760         * etc/NEWS: Document the new behavior.
4761         Merge from gnulib, incorporating:
4762         2015-07-25 strftime: fix newly-introduced bug on Solaris
4763         2015-07-23 fprintftime, strftime: use timezone_t args
4764         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
4765         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
4766         * m4/time_h.m4:
4767         Update from gnulib.
4768         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
4769         New files from gnulib.
4770         * lisp/time-stamp.el (time-stamp-string):
4771         * lisp/time.el (display-time-world-list)
4772         (display-time-world-display):
4773         Use new API, with time zone arg.
4774         * lisp/time.el (display-time-world-display):
4775         Fix race when current-time advances while we're running.
4776         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
4777         (add-log-iso8601-time-string): Accept optional time zone arg.
4778         * lisp/vc/add-log.el (add-change-log-entry):
4779         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
4780         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
4781         Add rules for the time module, since they're now needed
4782         for tzalloc etc.
4783         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
4784         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
4785         * src/editfns.c: Include errno.h.
4786         (set_time_zone_rule): Omit unnecessary forward decl.
4787         (initial_tz): Remove, replacing with ...
4788         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
4789         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
4790         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
4791         (tzlookup): New static functions.
4792         (init_editfns): New arg DUMPING.  All uses changed.
4793         (init_editfns): Omit most initialization if dumping, not if
4794         !initialized.  Initialize wall_clock_tz and local_tz.
4795         (emacs_nmemftime, format_time_string): Time zone argument can now
4796         be any time zone, not just a boolean for UTC or local time.  All
4797         callers changed.
4798         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
4799         (Fcurrent_time_zone): New optional arg ZONE.
4800         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
4801         the same form as with the other new additions.
4802         (decode_time_zone): Remove; no longer needed.
4803         (tzvalbuf): Now file-scope.
4804         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
4805         (syms_of_editfns): Define Qwall.
4806         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
4807         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
4808         [!HAVE_TZALLOC]:
4809         Remove; now supplied by gnulib.
4810         * src/emacs.c (main):
4811         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
4813 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
4815         Fix infinite loop in delete-consecutive-dups
4816         * lisp/subr.el (delete-consecutive-dups): Work even if the last
4817         element is nil (Bug#20588).  Avoid rescan of a circular list in
4818         deletion of last element.
4820 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
4822         Have `x-frame-geometry' return nil for terminal and initial frames (Bug#21132)
4823         * src/nsfns.m (Fx_frame_geometry):
4824         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
4825         terminal frames.
4826         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
4827         (Fx_frame_geometry): Return nil for terminal frames
4829 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
4831         * etc/tutorials/TUTORIAL.ja: Improve translation.
4833 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
4835         Avoid crashes when w32 GUI functions are called in -batch
4836         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
4837         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
4838         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
4840         Fix flyspell-check-previous-highlighted-word
4841         * lisp/textmodes/flyspell.el
4842         (flyspell-check-previous-highlighted-word): Really accept a
4843         numeric argument, as the doc string describes.  Fix an off-by-one
4844         error in looking up overlays, so invocation with point immediately
4845         after a word would check that word.  Clarify the doc string as
4846         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
4848 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
4850         Minor cleanup in tramp-tests.el
4851         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
4852         Implement using the documented interface
4853         `tramp-connection-properties', rather than with internal functions.
4855 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
4857         Pass lambdas to `skeleton-read'
4858         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
4859         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
4860         lambdas to `skeleton-read' (bug#20386).
4862 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
4864         * INSTALL (DETAILED BUILDING AND INSTALLATION): Mention --without-imagemagick.
4866         Don't require GUI frames and mouse for Flyspell menus
4867         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
4868         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
4869         support, since pop-up menus work with text terminals and can be
4870         controlled via the keyboard.
4872         Improve documentation of Flyspell commands
4873         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
4874         can be invoked via the keyboard.  Mention those commands by name
4875         and add them to the fn index.  (Bug#21125)
4877 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
4879         Fix some Tramp problems with HP-UX
4880         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
4881         Add "tab0" to stty call.
4882         * test/automated/tramp-tests.el (tramp-persistency-file-name):
4883         Set to nil.
4884         (tramp--test-hpux-p): New defun.
4885         (tramp--test-utf8): Use it.
4887 2015-07-22  Glenn Morris  <rgm@gnu.org>
4889         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
4891 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
4893         Fix point positioning in ffap-next-guess
4894         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
4895         as our callers expect.  This was clobbered as part of fixing
4896         bug#5673.  (Bug#21107)
4897         (ffap-gopher-at-point): Set ffap-string-at-point-region.
4899 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
4901         Fix customization type of `even-window-sizes'.
4902         * lisp/window.el (even-window-sizes): Fix customization type.
4904         Optionally even widths of `display-buffer' windows.  (Bug#21100)
4905         * lisp/window.el (quit-restore-window): Restore width if
4906         requested.
4907         (display-buffer-record-window): Record width when window is
4908         reused and horizontally combined.
4909         (even-window-sizes): New option to allow evening window widths.
4910         (even-window-heights): Defalias to `even-window-sizes'.
4911         (window--even-window-heights): Rename to
4912         `window--even-window-sizes'.  Handle side-by-side windows.
4913         (display-buffer-use-some-window): Call `window--even-window-sizes'
4914         instead of `window--even-window-heights'.
4915         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
4916         * doc/lispref/windows.texi (Choosing Window Options): Describe
4917         `even-window-sizes'.
4918         (Coordinates and Windows): Fix typo.
4920 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
4922         add file name to autoload error messages.
4923         * lisp/emacs-lisp/autoload.el (autoload-save-buffers): add condition-case
4924           to add file name to error message.
4926 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
4928         Use 0.0.0.1 as test host in Tramp
4929         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
4930         Use 0.0.0.1 as test host.
4932 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
4934         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
4935         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
4936         Fix inf-loop (bug#21083).
4938 2015-07-21  Glenn Morris  <rgm@gnu.org>
4940         * test/automated/package-test.el (package-test-signed):
4941         Update for recent changes.
4943         * test/automated/elisp-mode-tests.el
4944         (elisp-xref-finds-both-function-and-variable)
4945         (elisp-xref-finds-only-function-for-minor-mode):
4946         Update for recent xref name changes.
4948 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
4950         Make eldoc timer non-repeatable
4951         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
4952         non-repeatable.  Since it's on post-command hook, that just wasted
4953         CPU cycles.
4955 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
4957         Mention `tramp-connection-properties' in NEWS
4959         Sync with Tramp repository
4960         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
4961         required prior changing its configuration.
4962         (Connection caching, Predefined connection information)
4963         (Remote shell setup): Fix typos.
4964         (Predefined connection information): Describe, how to overwrite
4965         parameters of `tramp-methods'.
4966         (Remote programs, Remote processes, Traces and Profiles):
4967         Simplify example.
4968         (Remote programs): Remove superfluous comment.
4969         * doc/misc/trampver.texi: Update release number.
4970         * lisp/net/tramp-cache.el (tramp-connection-properties): Adapt docstring.
4971         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
4972         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
4973         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
4974         "gvfs-mkdir -p ..." does not work robust.
4975         (tramp-gvfs-maybe-open-connection): Adapt `tramp-get-method-parameter' call.
4976         * lisp/net/tramp-sh.el (tramp-methods):
4977         Add `tramp-remote-shell-login' parameter where it fits.
4978         (tramp-get-remote-path): Use it.
4979         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
4980         (all): Adapt `tramp-get-method-parameter' calls.
4981         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
4982         (tramp-get-method-parameter): Replace argument METHOD by VEC.
4983         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
4984         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
4985         (all): Adapt `tramp-get-method-parameter' calls.
4986         * lisp/net/trampver.el Update release number.
4987         * test/automated/tramp-tests.el (tramp--instrument-test-case):
4988         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
4989         (tramp-test13-make-directory, tramp--test-adb-p)
4990         (tramp--test-smb-or-windows-nt-p): Simplify.
4991         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
4992         (tramp--test-special-characters): Fix docstring.  Add gvfs and ftp tests.
4993         (tramp--test-utf8): Fix docstring.
4995 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
4997         Add new xref-query-replace command
4998         * lisp/progmodes/xref.el (xref--match-buffer-bounds): New
4999         function, extracted from xref-pulse-momentarily.
5000         (xref-query-replace): New command.
5001         (xref--query-replace-1): New helper function.
5002         (xref--xref-buffer-mode-map): Add `r' binding.
5004 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
5006         Simplify icalendar decoding of Z dates
5007         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
5008         Simplify calculation of time strings with trailing "Z".
5010 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
5012         Do not corrupt grep-find-ignored-files
5013         * lisp/progmodes/project.el (project-ignores): Change the order of
5014         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
5016         Add xref-match-item, and use it
5017         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
5018         (xref-file-location): Add reader for the column slot.
5019         (xref-match-item): New class.
5020         (xref-match-bounds): A method implementation for it.
5021         (xref-make-match): New constructor function.
5022         (xref--current-item): New private variable.
5023         (xref-pulse-momentarily): Use it.
5024         (xref--pop-to-location): Change the first argument to an xref
5025         item, instead of location, bind xref--current-item.
5026         Update all callers.
5027         (xref-next-line, xref-prev-line, xref--next-error-function)
5028         (xref--mouse-2): Look for the property `xref-item',
5029         instead of `xref-location'.
5030         (xref--item-at-point): Likewise.  This function replaces
5031         `xref-location-at-point'.  Update all callers.
5032         (xref--insert-xrefs): Add the `xref-item' text property, instead
5033         of `xref-location'.
5034         (xref--collect-match): Use xref-make-match.
5036         Rename xref--xref to xref-item
5037         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
5038         Update all references.
5040         Rename xref description slot to summary
5041         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
5042         slot to `summary'.
5044         vc-hg: Perform the print-log call asynchronously
5045         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
5046         asynchronously (bug#21067).
5048         Add xref-after-jump-hook and xref-after-return-hook
5049         * lisp/progmodes/xref.el (xref-after-jump-hook)
5050         (xref-after-return-hook): New hooks.
5051         (xref-pulse-on-jump): Remove, in favor of the above.
5052         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
5053         (xref--pop-to-location, xref--display-position)
5054         (xref-pop-marker-stack): Use the new hooks, as requested in
5055         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
5057 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
5059         Correct js-mode's lighter
5060         * lisp/progmodes/js.el (js-mode): Correct the lighter.
5062 2015-07-19  Leo Liu  <sdl.web@gmail.com>
5064         Fix a bug in cfengine3-mode
5065         * progmodes/cfengine.el (cfengine3-mode): Handle nil
5066           eldoc-documentation-function.
5068 2015-07-18  Julien Danjou  <julien@danjou.info>
5070         sieve-mode: support "body" test command
5071         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
5072         Add missing "body" test command.
5074 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
5076         Fix info-apropos when the default encoding is Latin-N
5077         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
5078         'undecided', so that it is set to the encoding of the Info file we
5079         are about to insert.  Otherwise, 'info-apropos' will fail to find
5080         some index nodes in some UTF-8 encoded files, if the buffer's
5081         previous encoding is Latin-N or some such.
5083 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
5085         * epg.el (epg--start): Check that gpgconf can be found before calling it.
5087         Expose more file types to OS X that Emacs understands.
5088         * Cocoa/Emacs.base/Contents/Info.plist: Add editor role for sty, dtx,
5089         json, and org files.  Export UTIs for el, elc, and org files.
5091 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
5093         Fix visual-order cursor movement when lines are truncated
5094         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
5095         simulate display in a window of infinite width, to allow move_it_*
5096         functions reach positions outside of normal window dimensions.
5097         Remove code that tried to handle a subset of these situations by
5098         manual iteration of buffer text.  (Bug#17777)
5100         Fix following Info cross-references to anchors
5101         * lisp/info.el (Info-read-subfile): Add to the returned value the
5102         length of subfile preamble, after converting it to file's byte
5103         offset, as expected by the caller.  Use bufferpos-to-filepos.
5104         (Info-find-node-2): If searching for a node with a
5105         1000-character slop fails, try again with a 10000-character slop,
5106         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
5107         * lisp/international/mule-util.el (bufferpos-to-filepos): New
5108         function.
5109         * etc/NEWS: Mention bufferpos-to-filepos.
5111         Fix scrolling backwards on TTY frames under scroll-conservatively
5112         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
5113         in moving backwards on TTY frames.  (Bug#21080)
5115 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
5117         Consider a jsdoc tag to be a beginning of a paragraph as well
5118         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
5119         consider a jsdoc tag to be a beginning of a paragraph as well.
5121 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
5123         * lisp/emacs-lisp/package.el: Fix warnings
5125         * lisp/emacs-lisp/package.el (package-buffer-info):
5126         Add author and maintainers to `package-buffer-info'.
5128         * lisp/emacs-lisp/package.el: Many small changes
5129         Replace all instances of 'face with 'font-lock-face.
5130         (describe-package-1): Improve some strings and move the summary up the
5131         list.
5132         (package-install-file): Update docstring.
5133         (package-menu-hide-package): Bind to `H'.
5135         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
5136         Fix error handling.
5138 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
5140         Fix hang with large yanks This should fix the bug fixed by Mike
5141         Crowe's patch in:
5142         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
5143         A problem in this area has been reported by several users; see
5144         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
5145         This fix differs from Mike Crowe's patch in that it should avoid a
5146         race condition that could lose SIGIO signals.  ignore_sigio dates
5147         back to the 1980s when some platforms couldn't block signals, and
5148         could only ignore them, which led to races when signals arrived
5149         while being ignored.  We shouldn't have to worry about those old
5150         platforms now.
5151         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
5152         * src/emacs.c (shut_down_emacs):
5153         Don't call ignore_sigio; unrequest_sigio should suffice.
5154         * src/keyboard.c (kbd_buffer_store_buffered_event):
5155         Use unrequest_sigio, not ignore_sigio.
5156         (kbd_buffer_get_event):
5157         Call request_sigio when getting the ball rolling again.
5159 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
5161         * lisp/obsolete/longlines.el (longlines-search-function):
5162         Fallback on `isearch-search-fun-default'.
5164 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
5166         Support @-mentions
5167         * rcirc.el (rcirc-completion-at-point): Support completion of
5168         mentions/messages with @nick instead of just nick.
5170 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
5172         Fix Bug#20943.
5173         * lisp/autorevert.el (auto-revert-handler): Do not check for
5174         `buffer-modified-p'.
5175         * lisp/files.el (buffer-stale--default-function): Check for
5176         `buffer-modified-p'.
5177         * test/automated/auto-revert-tests.el
5178         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
5180 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
5182         Fix delete-dups bug on long lists
5183         * lisp/subr.el (delete-dups):
5184         Don't mistakenly keep some dups when applied to long lists.
5186 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
5188         Better heuristic for C stack overflow
5189         Improve the heuristic for distinguishing stack overflows from
5190         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
5191         the getrlimit method wasn't portable to Cygwin; see:
5192         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
5193         Corinna suggested pthread_getattr_np but this also has problems.
5194         Instead, replace the low-level system stuff with a simple
5195         heuristic based on known good stack addresses.
5196         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
5197         * src/sysdep.c: Don't include <sys/resource.h>.
5198         (stack_direction): Remove.  All uses removed.
5199         (stack_overflow): New function.
5200         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
5201         Make SEGV fatal in non-main threads.
5203 2015-07-16  Daiki Ueno  <ueno@gnu.org>
5205         epg: Automatically start pinentry server
5206         * epg-config.el (epg-gpgconf-program): New variable.
5207         * epg.el (epg--start): Call `pinentry-start' if
5208         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
5210 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
5212         * lisp/gnus/nnimap.el: Fix my last bogus change
5213         Reinstall Stefan Monnier's change that was made in
5214         <83d824bc4041332f338ad7e5e830f443535aa300>.
5216 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
5218         Merge from gnulib
5219         This incorporates:
5220         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
5221         2015-07-05 acl-permissions: Fix on FreeBSD
5222         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
5223         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
5224         * lib/set-permissions.c: Copy from gnulib.
5226         Port to stricter C99
5227         * src/keyboard.h (kbd_buffer_store_event_hold):
5228         Don't return a void expression.
5230 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
5232         * doc/emacs/frames.texi (Creating Frames): Fix the command `C-x 5 m' runs.
5234 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
5236         New autorevert tests.
5237         * test/automated/auto-revert-tests.el: New file.
5239 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
5241         Clear gcprolist etc. after stack overflow
5242         After stack overflow, command_loop calls init_eval, and this needs to
5243         clear gcprolist and byte_stack_list (Bug#20996).
5244         * src/alloc.c (init_alloc):
5245         Move gcprolist and byte_stack_list initialization from here ...
5246         * src/eval.c (init_eval): ... to here.
5248 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
5250         * doc/emacs/windows.texi (Pop Up Window): Fix the description of `C-x 4 m'.
5252 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5254         Avoid deprecated enums in mac-ct font backend driver
5255         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
5256         (mac_ctfont_get_advance_width_for_glyph)
5257         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
5259         Cache font family in mac-ct font backend driver
5260         * src/macfont.m (macfont_family_cache): New variable.
5261         (syms_of_macfont): Initialize it.
5262         (macfont_available_families_cache): New variable.
5263         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
5264         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
5265         (macfont_handle_font_change_notification)
5266         (macfont_init_font_change_handler)
5267         (macfont_copy_available_families_cache): New functions.
5268         (macfont_create_family_with_symbol): Use font family caches.
5269         (macfont_list, macfont_list_family): Use
5270         macfont_copy_available_families_cache instead of
5271         mac_font_create_available_families.
5273 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
5275         Show the default value in the prompt
5276         * lisp/progmodes/xref.el: Add `M-?' binding for
5277         xref-find-references.  Declare functions `grep-read-files' and
5278         `grep-expand-template'.
5279         (xref--read-identifier): Show the default value in the prompt.
5281         When called with prefix argument, ask for file patterns to search as well
5282         * lisp/progmodes/xref.el (xref-find-regexp): When called with
5283         prefix argument, ask for file patterns to search as well.  When
5284         prompting for the directory, require an existing one.
5285         (xref-collect-matches): Add a new argument, FILES.  Use it in the
5286         above function.
5288         Add `project-ignores'
5289         * lisp/progmodes/project.el (project-ignores): New generic
5290         function, and an implementation for the VC project type.
5291         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
5292         variant of rgrep-default-command that handles a generic list of
5293         ignores.
5294         (xref-collect-matches): Use it, and pass through to it the value
5295         of the newly added argument.
5296         (xref-find-regexp): Handle ignored paths within the project.
5297         Remove outdated comment.
5298         * lisp/vc/vc.el (vc-default-ignore-completion-table):
5299         Skip the comments and the empty lines.
5301 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
5303         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
5305 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
5307         gnus-registry.el: Correct function argument order
5308         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
5309         Reverse the order of function arguments.
5311 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
5313         Bind grep-highlight-matches to nil
5314         * lisp/progmodes/xref.el (xref-collect-matches):
5315         Bind grep-highlight-matches to nil (bug#20728).
5317 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
5319         nnimap.el: Fix IMAP message size parsing
5320         * lisp/gnus/nnimap.el (nnimap-transform-headers):
5321         Don't assume that UID comes before RFC822.SIZE.
5323 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
5325         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
5326         (auth-source-creation-prompts): Declare.
5327         (nnimap-retrieve-headers, nnimap-status-message)
5328         (nnimap-request-create-group, nnimap-request-delete-group)
5329         (nnimap-close-group, nnimap-request-move-article)
5330         (nnimap-request-accept-article, nnimap-request-newgroups)
5331         (nnimap-request-post, nnimap-dummy-active-number)
5332         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
5333         (nnimap-parse-flags): Remove unused var `p'.
5334         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
5335         (nnimap-flags-to-marks): Remove unused var `totalp'.
5337 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
5339         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
5341 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5343         * src/macfont.m (macfont_list): Ignore font families lacking font descriptors.
5345 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
5347         Don't check the exit status, it can be misleading
5348         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
5349         exit status, it can be misleading.
5351         Introduce a Project API
5352         * lisp/progmodes/project.el: New file.
5353         * lisp/cedet/ede.el: (project-try-ede): New function.
5354         (project-root): New implementation.
5355         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
5356         Set project-search-path-function.
5357         (elisp--xref-find-references): Delegate some logic to
5358         project-search-path.
5359         (elisp-search-path): New function.
5360         (elisp-xref-find): Don't implement `matches' anymore.
5361         * lisp/progmodes/etags.el: Don't implement `matches'.
5362         Delegate some logic to project-search-path.
5363         (etags-search-path): New function.
5364         * lisp/progmodes/xref.el (xref-find-function):
5365         Remove `matches' from the API.
5366         (xref-find-regexp): Move whatever common logic was in elisp and
5367         etags implementations, and search the directories returned by
5368         project-directories and project-search-path.
5370 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
5372         * test/automated/map-tests.el (test-map-delete-return-value): Uncomment test.
5374         Add support for gv.el in map.el
5375         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
5376         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
5377         * test/automated/map-tests.el: Update tests to work with the new
5378         implementations of map-elt and map-put.
5380 2015-07-09  Glenn Morris  <rgm@gnu.org>
5382         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
5384 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
5386         Syntax-propertize until the end of the line first
5387         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
5388         until the end of the line first.
5390 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
5392         * doc/emacs/files.texi (File Archives): Add a cross reference.
5394 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
5396         nnimap.el: Handle plain value for nnimap-stream
5397         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
5398         capabilities, so that a 'plain value for the `nnimap-stream' server
5399         variable is handled correctly.
5400         * doc/misc/gnus.texi (Customizing the IMAP Connection):
5401         Document the 'plain option.
5403 2015-07-08  Leo Liu  <sdl.web@gmail.com>
5405         Fix bug in thing-at-point--bounds-of-well-formed-url
5406         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
5407           sure boundary contains current point.
5409 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
5411         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse' in the end.
5413         Declare whitespace-line-column a safe file-local
5414         * lisp/whitespace.el (whitespace-line-column): Declare to be a
5415         safe file-local when the value is an integer.
5417 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
5419         gnus-group.el: Check if group names are already strings
5420         * lisp/gnus/gnus-group.el (gnus-group-group-name):
5421         The group name may already be a string.
5422         Specifically, in the group list reached from the *Server* buffer,
5423         the 'gnus-group text property returns a string.  Everywhere else
5424         it returns a symbol.
5426         nnimap.el: Remove unused let variables
5427         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
5429 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
5431         Support "maximized" property of runemacs's shortcut
5432         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
5433         the '--maximized' switch to Emacs.
5435         Support "minimized" property of runemacs's shortcut
5436         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
5437         pass the '--iconic' switch to Emacs.  (Bug#20991)
5439 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
5441         Doc fixes
5442         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
5443         C-w' in Diff mode.
5444         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
5445         Add a cross reference.
5447 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
5449         * lisp/obsolete/landmark.el: Add Obsolete-since header
5451 2015-07-07  Glenn Morris  <rgm@gnu.org>
5453         * test/automated/ert-tests.el (ert-test-deftest):
5454         Update for recent changes.
5456 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
5458         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
5459         * lisp/emacs-lisp/gv.el (gv-setter): New function.
5460         (gv-invalid-place): New error.
5461         (gv-get): Use them.
5462         (gv-synthetic-place, gv-delay-error): New places.
5463         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
5464         (cl-defgeneric, cl-defmethod): Use gv-setter.
5466 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
5468         Make vc-tests work with MSYS svn program
5469         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
5470         svn is an MSYS program.
5472 2015-07-07  Ken Brown  <kbrown@cornell.edu>
5474         Improve recent change to emacsclient on Cygwin
5475         * lisp/server.el (server-process-filter): Remove redundant check
5476         that 'cygwin-convert-file-name-from-windows' is defined as a
5477         function on Cygwin.  Don't call that function unless its argument
5478         starts with a drive letter.
5480 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5482         * lisp/emacs-lisp/package.el (package-compute-transaction): Bug fix
5483         Fix void variable due to `found-something' being in the wrong `let'.
5485 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
5487         * lisp/play/landmark.el: Move to lisp/obsolete/
5489 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
5491         Have `x-show-tip' handle `right' and `bottom' frame parameters.
5492         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
5493         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
5494         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
5495         tooltips also via `right' and `bottom' frame parameters.
5497 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
5499         Add online-help support to describe types
5500         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
5501         (describe-symbol): Improve the selection of default.
5502         * lisp/help-mode.el: Require cl-lib.
5503         (describe-symbol-backends): Move from help-fns.el.
5504         (help-make-xrefs): Use it.
5505         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
5506         for types.
5507         (cl--typedef-regexp): New const.
5508         (find-function-regexp-alist): Add entry for types.
5509         (cl-help-type, cl-type-definition): New buttons.
5510         (cl-find-class): New function.
5511         (cl-describe-type): New command.
5512         (cl--describe-class, cl--describe-class-slot)
5513         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
5514         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
5515         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
5516         New functions.  Moved from eieio-opt.el.
5517         (cl--generic-class-parents): New function, extracted from
5518         cl--generic-struct-specializers.
5519         (cl--generic-struct-specializers): Use it.
5520         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
5521         Improve constructor's docstrings.
5522         (cl-struct-unknown-slot): New error.
5523         (cl-struct-slot-offset): Use it.
5524         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
5525         definition in current-load-list.
5526         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
5527         (eieio--add-new-slot): Set it.
5528         (eieio-defclass-internal): Use new name for current-load-list.
5529         (eieio-oref): Add compiler-macro to warn about unknown slots.
5530         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
5531         as compile-time as well.  Improve constructor docstrings.
5532         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
5533         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
5534         (eieio-class-def): Remove button.
5535         (eieio-help-constructor): Use new name for load-history element.
5536         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
5537         (eieio-method-documentation): Move to cl-generic.el.
5538         (eieio-display-method-list): Use new names.
5539         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
5540         Add "define-linline".
5541         (lisp-fdefs): Remove "defsubst".
5542         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
5543         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
5544         (macroexp--warn-and-return): Use it to avoid inf-loops.
5545         Add `compile-only' argument.
5547 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
5549         python.el: Fix local/remote shell environment setup
5550         * lisp/progmodes/python.el (python-shell-with-environment): Fix
5551         remote/local environment setup.
5552         * test/automated/python-tests.el (python-shell-with-environment-1)
5553         (python-shell-with-environment-2): New tests.
5555 2015-07-06  Glenn Morris  <rgm@gnu.org>
5557         * lisp/simple.el (set-variable): Tweak recent doc fix.
5559 2015-07-06  Ken Brown  <kbrown@cornell.edu>
5561         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE
5563 2015-07-06  Glenn Morris  <rgm@gnu.org>
5565         * lisp/simple.el (set-variable): Use user-error for type mismatch.
5567 2015-07-06  Ken Brown  <kbrown@cornell.edu>
5569         * src/emacs.c (main): Don't increase the stack size on Cygwin
5571 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
5573         (describe-symbol): Rewrite describe-function-or-variable
5574         * lisp/help-fns.el (describe-symbol-backends): New var.
5575         (help-xref-stack-item): Declare.
5576         (describe-symbol): Rename from describe-function-or-variable.
5577         Rewrite using describe-symbol-backends instead of help-xref-interned.
5578         * lisp/help.el (help-map): Use it.
5579         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
5580         (help-xref-interned): Make it into an obsolete alias.
5582         (eieio-persistent-save): Don't ignore `file' arg (bug#20972)
5583         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
5584         `file' arg.  Always use utf-8-emacs.  Use with-temp-buffer and cl-letf.
5586 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
5588         Fix parsing glitches in dired-mark-sexp (bug#13575)
5589         * lisp/dired-x.el (dired-x--string-to-number): New function.
5590         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
5591         of directory-listing-before-filename-regexp.  Consider
5592         forward-word harmful and replace it.  Add more verbiage in
5593         comments and doc string.
5595 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
5597         python.el: Respect process environment for remote shells
5598         * lisp/progmodes/python.el
5599         (python-shell-calculate-process-environment): Calculate
5600         process-environment or tramp-remote-process-environment depending
5601         whether current file is remote.
5602         (python-shell-calculate-exec-path): Calculate exec-path or
5603         tramp-remote-path depending whether current file is remote.
5604         (python-shell-with-environment): New macro.
5605         (python-shell-prompt-detect, python-shell-calculate-command)
5606         (python-shell-make-comint, python-check): Use it.
5608         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
5609         * lisp/progmodes/python.el (python-shell--interpreter)
5610         (python-shell--interpreter-args): New vars.
5611         (inferior-python-mode, python-shell-make-comint): Use them.
5613         python.el: Fixes for IPython 3.x  (Bug#20580)
5614         * lisp/progmodes/python.el:
5615         (python-shell-completion-native-setup): Fix IPython 3.x setup.
5616         (python-shell-completion-native-get-completions): Fix timeout
5617         logic.
5619         python.el: Fix mark-defun behavior  (Bug#19665)
5620         * lisp/progmodes/python.el: (python-mark-defun): New function.
5621         * test/automated/python-tests.el (python-mark-defun-1)
5622         (python-mark-defun-2, python-mark-defun-3): New tests.
5624 2015-07-05  Glenn Morris  <rgm@gnu.org>
5626         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
5627         such as "extends(parent), private".  (Bug#20969)
5628         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
5629         New tests.
5631 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
5633         Avoid duplicate calls to current_timespec
5634         * src/process.c (wait_reading_process_output):
5635         Cache current_timespec results as long as we're not waiting.
5637 2015-07-05  Ian Kelling  <ian@iankelling.org>
5639         Avoid returning early reading process output due to SIGIO
5640         * src/process.c (wait_reading_process_output): Extend the behavior of
5641         not breaking due to not finding output when a timer has lowered the
5642         timeout to include when SIGIO lowers the timeout.
5644         Don't return as fast reading any process output
5645         * src/process.c (wait_reading_process_output):
5646         The patch for Bug#17647 returns too fast sometimes when reading
5647         from any processes. Revert part of it, and limit the timeout more
5648         sensibly (Bug#20978).
5650         Refactor timeouts in wait_reading_process_output
5651         * src/process.c (wait_reading_process_output):
5652         Simplify timeouts with an enum.  Remove a redundant condition.
5653         (Bug#20978)
5655         Remove ADAPTIVE_READ_BUFFERING ifdef
5656         * src/process.c (make-process, make-pipe-process, deactivate_process)
5657         (wait_reading_process_output, read_process_output, send_process)
5658         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
5659         added in case there was an operating system in which it was not
5660         useful.  That was 11 years ago and it hasn't happened.  Make
5661         development easier by not considering the effect of changes on a
5662         theoretical OS where this is disabled (Bug#20978).
5664 2015-07-05  Glenn Morris  <rgm@gnu.org>
5666         * lisp/simple.el (set-variable): Doc fix.
5668         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
5670 2015-07-05  Ian Kelling  <ian@iankelling.org>
5672         accept-process-output fix
5673         This is a followon to the fix for Bug#17647 (Bug#20976).
5674         * src/process.c (status_notify): Fix too high return in some cases.
5676 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
5678         * lisp/character-fold.el (character-fold-table):
5679         Only fold decompositions if at least one character is non-spacing.
5680         (Bug#20975)
5682 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
5684         Merge from gnulib
5685         This incorporates:
5686         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
5687         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
5688         2015-07-02 update-copyright: fix test failure with perl >= 5.22
5689         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
5690         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
5691         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
5692         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
5694 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
5696         Respect `prog-indentation-context' in python.el
5697         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
5698         (python-indent-context, python-indent--calculate-indentation)
5699         (python-info-current-defun)
5700         (python-info-dedenter-opening-block-message)
5701         (python-info-line-ends-backslash-p)
5702         (python-info-beginning-of-backslash)
5703         (python-info-continuation-line-p): Use `prog-widen'.
5704         (python-indent--calculate-indentation)
5705         (python-indent--calculate-levels)
5706         (python-indent-calculate-indentation): Use `prog-first-column'.
5707         (python-indent--calculate-levels): Simplify.
5708         Ignore also initial empty lines for syntax calculation.
5709         * lisp/progmodes/python.el (python-indent-context): Return
5710         :no-indent for first non-empty line, not just in line 1.
5711         * test/automated/python-tests.el (python-indent-base-case)
5712         (python-indent-inside-paren-1, python-indent-inside-paren-2)
5713         (python-indent-inside-paren-3, python-indent-inside-paren-4)
5714         (python-indent-inside-paren-5, python-indent-inside-paren-6)
5715         (python-indent-after-backslash-1)
5716         (python-indent-after-backslash-2)
5717         (python-indent-after-backslash-3)
5718         (python-indent-after-backslash-4, python-indent-inside-string-1):
5719         Expect :no-indent for first non-empty line.
5721 2015-07-04  Daniel Colascione  <dancol@dancol.org>
5723         Factor isearch word description into new function
5724         * lisp/isearch.el (isearch--describe-word-mode): New function.
5725         (isearch-message-prefix, isearch-query-replace): Use it.
5727 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
5729         Fix mouse pointer on w32 when a menu is active
5730         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
5731         shape while a menu is in use.  This started happening since we now
5732         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
5734 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
5736         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
5737         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
5738         parameter.  (Bug#17344)
5740         Have `compilation-set-window' use right window for getting fringes (Bug#20829)
5741         * lisp/progmodes/compile.el (compilation-set-window): Take
5742         `window-fringes' from argument window.  (Bug#20829)
5744 2015-07-03  Glenn Morris  <rgm@gnu.org>
5746         Update eieio tests for recent eieio-core change.
5747         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
5748         * test/automated/eieio-tests.el
5749         (eieio-test-32-slot-attribute-override-2):
5750         Replace the deleted eieio--class-v with cl--find-class.
5752 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
5754         Fix some issues with `window-divider-mode'
5755         * lisp/frame.el (window-divider-default-places): New option.
5756         (window-divider-mode): Remove option.
5757         (window-divider-mode): Make it a "regular" minor mode.
5758         (window-divider-width-valid-p): Drop frame- prefix.
5759         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
5760         prefix.  Handle `window-divider-default-places'.
5761         (frame--window-divider-mode-set-and-apply): Remove.
5762         (window-divider-default-bottom-width)
5763         (window-divider-default-right-width): Drop :group entries.
5764         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
5765         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
5766         (menu-bar-no-window-divider): Set `window-divider-default-places'
5767         and call `window-divider-mode'.
5768         * doc/emacs/frames.texi (Window Dividers): Document
5769         `window-divider-default-places'.
5771 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
5773         Add cross references in documentation
5774         * doc/emacs/display.texi (Displaying Boundaries):
5775         * doc/emacs/search.texi (Word Search): Add cross references.
5777 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
5779         -batch should not affect ‘’ -> `' display
5780         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
5781         -batch (Bug#20926).
5783 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
5785         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
5786         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el,
5787           lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
5788         Use cl--find-class instead.
5790         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
5792 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
5794         Some further fixes in Change Window node.  (Bug#20183)
5795         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
5796         by "resizing" in section title.  Add some concept indices.
5797         Suggested by N. Jackson (Bug#20183).
5799         Reference window dividers in Change Window section.
5800         * doc/emacs/windows.texi (Change Window): Reference window
5801         dividers.
5803         Document new `window-divider-mode'.
5804         * lisp/frame.el (window-divider-mode): Fix doc-string.
5805         * doc/emacs/frames.texi (Window Dividers): New section.
5807         Improve accessibility of window dividers.  (Bug#20183)
5808         * lisp/faces.el (window-divider)
5809         (window-divider-first-pixel, window-divider-last-pixel): Change
5810         membership from `frames' to `window-divider' customization group.
5811         * lisp/frame.el (window-divider): New customization group.
5812         (window-divider-mode): New minor mode.
5813         (window-divider-default-bottom-width)
5814         (window-divider-default-right-width): New options.
5815         (frame--window-divider-previous-mode): New variable.
5816         (frame-window-divider-width-valid-p)
5817         (frame--window-divider-mode-apply)
5818         (frame--window-divider-mode-set-and-apply): New functions.
5819         * lisp/menu-bar.el (menu-bar-options-save): Save
5820         window-divider-mode settings.
5821         (menu-bar-window-divider-customize)
5822         (menu-bar-bottom-and-right-window-divider)
5823         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
5824         (menu-bar-no-window-divider): New functions.
5825         (menu-bar-showhide-window-divider-menu): New variable.
5826         (menu-bar-showhide-menu): Show/hide window divider menu.
5827         * lisp/mouse.el (mouse-split-window-vertically)
5828         (mouse-split-window-horizontally): Replace `error' by
5829         `user-error'.  Bind `window-combination-resize' to nil.
5830         (top-level): Add/reorder mouse key bindings on mode- and
5831         vertical-line.
5833 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
5835         Don't display ‘’ as `' under X in en_GB
5836         The curved quote setup code invokes (char-displayable-p ?‘),
5837         but this isn’t reliable until after the X frame replaces the
5838         terminal frame (Bug#20926).
5839         * lisp/international/mule-cmds.el (set-locale-environment):
5840         Move curved quote setup code from here ...
5841         * lisp/startup.el (command-line): ... to here, after creating
5842         the X frame.
5844 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
5846         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring
5848         Add argument to reverse the meaning of ido-restrict-to-matches
5849         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
5850         to reverse the meaning (Bug#15631).
5852 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
5854         Be more tolerant to fonts named "Foobar-12"
5855         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
5856         don't barf; instead, request a new fontset to be generated.  This
5857         avoids unnecessarily rejecting fonts named against XLFD rules.  See
5858         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
5859         for the description of the original problem.
5860         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
5861         by a hyphen in a font's name.
5863         Fix value of posn-at-pont in R2L lines
5864         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
5865         coordinate of -1, for a newline in a right-to-left line that
5866         overflowed into the left fringe.
5868 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
5870         (cl--copy-slot-descriptor): Copy the `props' alist as well
5871         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
5872         Rename from cl--copy-slot-descriptor.
5873         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
5875 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
5877         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
5878         (xterm-query-timeout): New var.
5879         (xterm--query): Use it.  Fallback on async method if we timeout before
5880         getting the first byte of the reply (bug#12354).
5882 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
5884         Spelling fixes
5886 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
5888         * doc/emacs/frames.texi (Frame Commands): Typo fix. (Bug#20946)
5890 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
5892         In strings, prefer plain ` and ' to \` and \'
5893         * lisp/allout.el (allout-insert-listified):
5894         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
5895         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
5896         (ls-lisp-string-lessp):
5897         * lisp/menu-bar.el (menu-bar-open):
5898         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
5899         * lisp/progmodes/compile.el (compile):
5900         * lisp/progmodes/etags.el (tags-loop-scan):
5901         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
5902         * lisp/subr.el (posn-actual-col-row):
5903         * lisp/term/pc-win.el (x-list-fonts):
5904         * lisp/textmodes/texinfmt.el (texinfmt-version):
5905         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
5906         * lisp/time.el (display-time-world-list):
5907         * lisp/tmm.el (tmm-menubar):
5908         * src/buffer.c (syms_of_buffer):
5909         * src/fileio.c (syms_of_fileio):
5910         Omit unnecessary and confusing backslash before quote.
5911         * lisp/erc/erc.el (erc-cmd-LASTLOG):
5912         * lisp/progmodes/flymake.el (flymake-fix-file-name):
5913         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
5914         Fix string that was intended to escape a backslash and not a quote.
5916 2015-06-30  Glenn Morris  <rgm@gnu.org>
5918         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
5920         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
5921         Replace hard-coded lists with wildcard + filter-out.
5923         * configure.ac (system-configuration-features): Add X11, NS.
5925         Improve reproducibility of generated loaddefs file.
5926         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
5927         Make the return value the modtime of the input file (if no autoloads).
5928         (update-directory-autoloads): In the "no autoloads" section,
5929         use "most recent modtime" rather than "current time".
5931 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
5933         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic
5934         (Bug#20930)
5936 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
5938         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
5940         Add seq-min and seq-max
5941         Bump version number.
5942         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
5943         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
5945 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
5947         Make sure sleep-for always delays for as long as it's told
5948         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
5949         a loop, to ensure we always wait exactly the required amount of
5950         time.  (Bug#15990)
5952 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
5954         Fix pointer signedness glitch
5955         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
5957 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
5959         Don't block changes in mouse pointer inside 'track-mouse'
5960         * etc/NEWS:
5961         * doc/lispref/frames.texi (Mouse Tracking): Document the special
5962         effect of setting 'track-mouse' to 'dragging'.
5963         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
5964         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
5965         * lisp/mouse-drag.el (mouse-drag-throw):
5966         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
5967         to avoid changes in the shape of the mouse pointer.
5968         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
5969         pointer shape when do_mouse_tracking has the value of 'dragging',
5970         not just any non-nil value.  (Bug#20934)
5971         (syms_of_xdisp): DEFSYM 'dragging'.
5973 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
5975         * lisp/isearch.el (isearch-toggle-word): Fix toggle
5977         * lisp/emacs-lisp/package.el (package-compute-transaction):
5978         Don't assume version sorting.
5980         * lisp/emacs-lisp/package.el (package--save-selected-packages):
5981         Don't save before init time, to avoid overwriting configurations.
5982         (Bug#20855)
5984 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
5986         Add cross references.
5987         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
5988         references.
5990 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
5992         cfengine.el: update for the upcoming CFEngine 3.7 release
5993         Update for the upcoming CFEngine 3.7 release: support macros and
5994         quoted context strings; reformat JSON; indent promise attributes 2
5995         units by default; give function parameter descriptions in the eldoc
5996         glue.
5997         * cfengine.el: Update version and docs and fix name.  Autoload
5998         `json-pretty-print'.  Support new features in 3.7.
5999         (cfengine-parameters-indent): Set default promise attribute indent to
6000         2 more than the promise itself.
6001         (cfengine3-macro-regex): New variable to match the new macro syntax.
6002         (cfengine3-font-lock-keywords): Use it to highlight macros.
6003         (cfengine3-indent-line): Use it to indent macros to column 0.
6004         (cfengine3-class-selector-regex): Update for the new quoted strings
6005         format.
6006         (cfengine3-reformat-json-string): New function to reformat a JSON
6007         string using `json-pretty-print'.
6008         (cfengine3-format-function-docstring): Use function parameter
6009         description if it's provided by the cf-promises syntax dump.
6011 2015-06-29  Michael R. Mauger  <michael@mauger.com>
6013         Cygwin emacsclient handles w32 file names
6015 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
6017         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice (bug#20925).
6019 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
6021         * doc/lispref/text.texi (Sticky Properties): Improve wording.
6022         (Bug#20924)
6024         Allow font names that end in "-NN", where NN is a number
6025         * src/font.c (font_load_for_lface): If the font-spec didn't match
6026         any available fonts, try again without interpreting trailing "-NN"
6027         as the font size.  For the description of the original problem, see
6028         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
6030         .gdbinit followup to changes in !USE_LSB_TAG
6031         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
6032         !USE_LSB_TAG, as Emacs no longer does.
6034 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
6036         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
6037         Otherwise `s p' of f and F will stomp on each other's value.  (Bug#20916)
6039 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
6041         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
6042         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
6044 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
6046         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point as additional guess
6048         * lisp/emacs-lisp/package.el (describe-package): Convert the guess to a string
6050 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
6052         apropos-library quoting fix
6053         * lisp/apropos.el (apropos-library): Quote library consistently
6054         with the rest of the quoting used by apropos.
6056         Clarify interpreter-mode-alist doc
6057         * lisp/files.el (interpreter-mode-alist):
6058         Reword to avoid confusing quoting that wasn't working anyway.
6060 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
6062         Sync with Tramp 2.2.12
6063         * doc/misc/trampver.texi:
6064         * lisp/net/trampver.el: Update release number.
6065         * test/automated/tramp-tests.el (tramp-test13-make-directory):
6066         Fix cleanup.
6068 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
6070         * lisp/isearch.el (isearch-mode): Don't char-fold regexps
6071         (bug#20913)
6073 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
6075         Bind grep-highlight-matches around the rgrep call
6076         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
6077         around the rgrep call (bug#20728).
6079         Put "--color" before the other options in grep-command
6080         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
6081         before the other options in grep-command (bug#20912).
6083         Add --color Grep option to the command dynamically
6084         * lisp/progmodes/grep.el (grep-template, grep-find-template):
6085         Update the description for <C>.  (Bug#20728)
6086         (grep-compute-defaults): Don't add the --color option to
6087         grep-options.  Only add it to grep-command.
6088         (grep-expand-keywords): Expand the env value opts into <C>.
6089         (grep-expand-template): Replace cf in the env with the opts list,
6090         that can include -i and --color.
6091         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
6092         "--color=always" from the template, because we don't have to.
6094 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
6096         cl-extra fixes for most-negative-fixnum
6097         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
6098         Don't mishandle an argument equal to most-negative-fixnum,
6099         whose absolute value equals itself.
6100         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
6102         Initialize cl--gensym-counter to 0
6103         Previously it was initialized to a random value, which made it
6104         harder to reproduce earlier Emacs runs.  The need for a random
6105         value went away when Emacs introduced and used the #: syntax for
6106         uninterned symbols (Bug#20862).
6107         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
6108         Document that cl--gensym-counter now starts with 0.
6109         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
6110         (cl--random-time): Move to near only remaining use.
6111         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
6113         Improve docstring for macroexp-let2
6114         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
6115         Improve as per suggestion by RMS in:
6116         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
6117         Also, rename args to match new doc string.
6119 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
6121         Fix VC test suite on MS-Windows
6122         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
6123         always starts with 3 slashes after the colon.
6124         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
6125         'w32-application-type' to invoke CVS on MS-Windows with properly
6126         formatted CVSROOT directory name.
6128         Add a new function w32-application-type
6129         * src/w32proc.c (Fw32_application_type): New function.
6131         Avoid error in TLS connections due to incorrect format
6132         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
6133         the call to 'error', instead of the unsupported %u.  Reported by
6134         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
6136 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
6138         * lisp/replace.el (replace-search): Fix regexp case (bug#20901)
6140 2015-06-26  Leo Liu  <sdl.web@gmail.com>
6142         Fix indentation for with-output-to-string
6143         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
6144           `with-output-to-string' in elisp.
6145           Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string"
6146           This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
6148 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
6150         Minor corrections in ELisp manual
6151         * doc/lispref/nonascii.texi (Character Properties): Correct
6152         inaccuracies in description of values of the Unicode properties.
6154         Fix invisible mouse pointers on Windows.
6155         * src/w32fns.c: Include windowsx.h.
6156         (w32_wnd_proc): If the mouse moved and the mouse pointer is
6157         invisible, make it visible again even when the main (Lisp)
6158         thread is busy.
6159         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
6160         garbaging the frame have the input thread call SetCursor.
6162 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
6164         Provide invisible mouse pointers on Windows.  (Bug#6105) (Bug#12922)
6165         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
6166         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
6167         * src/w32term.c (w32_hide_hourglass): Handle
6168         f->pointer_invisible.
6169         (w32_toggle_invisible_pointer): New function.
6170         (w32_create_terminal): Add w32_toggle_invisible_pointer as
6171         toggle_invisible_pointer_hook for this terminal.
6173 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
6175         Doc fix for deletion commands
6176         'delete-char' does not respect the value of 'delete-active-region'.
6177         * doc/emacs/killing.texi (Deletion):
6178         Fix documentation for some single-char deletion commands.
6180         * doc/emacs/help.texi (Apropos):
6181         Improve documentation of 'apropos-do-all'.
6183         * doc/emacs/help.texi (Help Summary):
6184         Improve documentation of 'describe-mode'.
6186 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
6188         Fix submake dependency bug with .h files
6189         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
6190         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
6191         before the submake in $(libsrc) would spin off a subsubmake
6192         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
6194 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
6196         * lisp/character-fold.el (character-fold-table): Reuse `table'
6198 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
6200         Translate undisplayable ‘ to `
6201         * doc/lispref/help.texi (Keys in Documentation):
6202         * lisp/international/mule-cmds.el (set-locale-environment):
6203         * lisp/term/w32console.el (terminal-init-w32console):
6204         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
6205         If ‘ is not displayable, transliterate it to `, not to '.  See:
6206         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
6208         Fix C99 incompatibilities in Cairo code
6209         * src/image.c (xpm_load) [USE_CAIRO]:
6210         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
6211         Fix pointer signedness problem.
6213 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
6215         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
6216         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
6217           `with-output-to-string' should have the same indent as `progn'.
6218           This is in line with the declaration of `with-output-to-string'.
6220 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
6222         Get ‘./configure; make -C src emacs’ to work
6223         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
6224         * lib-src/Makefile.in (../lib/libgnu.a):
6225         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
6227 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
6229         Fix GC bugs --with-wide-int and Qnil == 0
6230         Use the same alignment for the !USE_LSB_TAG case as for the
6231         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
6232         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
6233         once we changed the representation of symbols so that Qnil == 0.
6234         Problem reported by Eli Zaretskii (Bug#20862).
6235         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
6236         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
6237         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
6238         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
6239         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
6240         This optimization in the !USE_LSB_TAG case is no longer valid when
6241         symbols are represented via offsets.  Change the only use to
6242         assume that pointers might hide in objects.
6243         * src/lisp.h (alignas) [!USE_LSB_TAG]:
6244         Require support in this case, too.
6245         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
6246         This is OK, because the !USE_LSB_TAG case now applies only when
6247         Lisp_Object is wider than void *, so there's no longer any need
6248         to shift the offset.  Not shifting the offset means that
6249         symbol representations have the same alignment as pointers,
6250         which the GC assumes.
6252 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
6254         * doc/lispintro/emacs-lisp-intro.texi (Data types):
6255         Improve documentation of 'substring'.
6257 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
6259         * lisp/character-fold.el (character-fold-table): Fix table generation
6261 2015-06-24  Glenn Morris  <rgm@gnu.org>
6263         * nextstep/Makefile.in (all): Make it the first target.
6264         (../src/emacs${EXEEXT}): Add rule for making it.
6266 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
6268         * etc/NEWS: Fix mention to old function name
6270         * lisp/character-fold.el: New file (Bug#20887)
6271         (character-fold-to-regexp): New function.
6272         * lisp/replace.el (replace-search): Check value of
6273         `character-fold-search'.
6274         * lisp/isearch.el: Move character-folding code to
6275         character-fold.el
6276         (isearch-toggle-character-fold): New command.
6277         (isearch-mode-map): Bind it to "\M-sf".
6278         (isearch-mode): Check value of `character-fold-search'.
6280 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
6282         * lisp/subr.el (remove-from-invisibility-spec): Handle the t case
6283         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
6284         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
6286         * lisp/progmodes/xref.el: Avoid init-args in oref.
6287         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
6288         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
6290 2015-06-24  Glenn Morris  <rgm@gnu.org>
6292         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
6294 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
6296         * lisp/gnus/nnmaildir.el: Silence lexical warnings
6297         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
6298         functional style.
6299         (nnmaildir--update-nov): Remove unused var `numdir'.
6300         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
6301         (nnmaildir-request-group, nnmaildir-request-create-group)
6302         (nnmaildir-request-post, nnmaildir-request-move-article)
6303         (nnmaildir-request-accept-article, nnmaildir-active-number): Mark unused args.
6304         (nnmaildir-get-new-mail, nnmaildir-group-alist)
6305         (nnmaildir-active-file): Declare.
6306         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
6307         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
6308         `mark', `end', `new-mark', and `mark-sym'.
6309         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
6310         `nlist2'.
6311         (nnmaildir-request-expire-articles):
6312         Remove unused vars `article', `stop' and `nlist2'.
6313         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
6314         `end'.  Use nnmaildir--article when dyn-binding is needed.
6315         Give the value directly in the `let' for `del-mark', `del-action',
6316         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
6317         (nnmaildir-close-server): Declare those local vars that need to be
6318         dyn-bound.
6320 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
6322         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
6324         Port selection info fix to clang
6325         * src/keyboard.h (kbd_buffer_store_event_hold):
6326         Don't assume C11 semantics for alignof (Bug#20756).
6328         Fix bug that munged selection info
6329         On some optimizing C compilers, copying a structure did not
6330         copy the padding bytes between elements, and the type punning
6331         between struct input_data and struct selection_input_data did
6332         not work.  Change the C code to use a proper union type instead.
6333         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
6334         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
6335         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
6336         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
6337         (mark_kboards):
6338         Use union buffered_input_event, not struct input_event.
6339         (clear_event, deliver_input_available_signal, process_special_events):
6340         Remove unnecessary forward decls.
6341         (kbd_buffer_store_buffered_event): New function, mostly just the
6342         old kbd_buffer_store_event_hold, except its argument is of type
6343         union buffered_input_event, not struct input_event.
6344         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
6345         not needed otherwise.  Argument is now of type
6346         struct selection_input_event *, not struct input_event *.
6347         All callers changed.
6348         (clear_event): Arg is now of type union buffered_input_event *,
6349         not struct input_event *.  All callers changed.
6350         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
6351         (union buffered_input_event): New type.
6352         (kbd_buffer_store_event_hold): Now an inline function,
6353         defined here.
6354         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
6355         (struct input_event): Use it.
6356         * src/xselect.c (struct selection_event_queue):
6357         Make elements be of type struct selection_input_event,
6358         not struct input_event.
6359         (selection_input_event_equal): New static function.
6360         (x_queue_event): Use it.
6361         (x_queue_event, x_decline_selection_request)
6362         (x_selection_current_request, x_reply_selection_request)
6363         (x_handle_selection_request, x_handle_selection_clear)
6364         (x_handle_selection_event): Use struct selection_input_event,
6365         not struct input_event.  All callers changed.
6366         (x_convert_selection): Omit unused first arg.  All callers changed.
6367         (Fx_disown_selection_internal): Omit unnecessary union.
6368         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
6369         rather than rolling our own equivalent.  Prefer sie.kind when
6370         setting up that kind of structure.
6371         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
6372         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
6373         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
6374         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
6375         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
6376         (SELECTION_EVENT_TIME, x_handle_selection_event):
6377         Arg is now of type struct selection_input_event *)
6378         not struct input_event *.  All callers changed.
6380 2015-06-23  Glenn Morris  <rgm@gnu.org>
6382         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
6384 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
6386         * lisp/isearch.el: Fold many unicode characters to ASCII
6387         (isearch-character-fold-search, isearch--character-fold-extras)
6388         (isearch--character-fold-table): New variable.
6389         (isearch--character-folded-regexp): New function.
6390         (isearch-search-fun-default): Use them.
6391         * lisp/replace.el (replace-character-fold): New variable.
6392         (replace-search): Use it.
6393         * etc/NEWS: Document it.
6395 2015-06-23  Glenn Morris  <rgm@gnu.org>
6397         Check for an input event before showing a dialog box.  (Bug#20813)
6398         * lisp/subr.el (y-or-n-p):
6399         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
6400         as last-nonmenu-event.
6402 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
6404         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
6405         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
6406         (switch-to-prev-buffer, switch-to-next-buffer): Respect
6407         switch-to-visible-buffer independent of the windows history.
6409 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
6411         * src/keyboard.c (last_timer_event): Remove unused var.
6413 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
6415         * test/automated/package-test.el (package-test-update-listing):
6416         Fix test.
6418 2015-06-23  Glenn Morris  <rgm@gnu.org>
6420         Revert 2014-06-25 nextstep/Makefile change.
6421         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
6422         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
6423         not as an order-only prerequisite.
6425         * configure.ac (--with-ns): Enable by default on OS X.
6427 2015-06-23  Leo Liu  <sdl.web@gmail.com>
6429         Fix shell-for/backward-command to exclude spaces
6430         * lisp/shell.el (shell-forward-command, shell-backward-command):
6431           Handle the 'move case from re-search-forward/backward.
6432           fixes debbugs:20873
6434 2015-06-22  Juri Linkov  <juri@linkov.net>
6436         * lisp/replace.el (query-replace-read-from): Add separator to
6437         the local binding of text-property-default-nonsticky.  (Bug#20690)
6439         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
6440         (Bug#20785)
6442 2015-06-22  Ken Brown  <kbrown@cornell.edu>
6444         Enable CPU profiling on Cygwin
6445         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
6446         change that undefined this.
6447         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
6448         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
6449           Cygwin.
6451         Improve diagnostics of profiler-cpu-start
6452         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
6453         return -1 if the sampling interval is invalid.
6454         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
6455         fails.  (Bug#20843)
6457 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
6459         * lisp/emacs-lisp/package.el: Exclude packages by name
6460         (package-hidden-regexps): New variable.
6461         (package-menu--refresh): Use it.
6462         (package-menu-hide-package): New command.
6464         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding
6466 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
6468         Fix debug-timer-check on systems without HAVE_TIMERFD
6469         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
6470         the expired timers, since wait_reading_process_output doesn't.
6471         (debug_timer_callback): Enlarge the tolerance to 20 msec.
6473         Fix RCS crashes in vc-test
6474         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
6475         ports of 'ci' on MS-Windows by always passing the -t- switch.
6477 2015-06-22  Glenn Morris  <rgm@gnu.org>
6479         * doc/emacs/package.texi (Packages):
6480         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
6482         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
6484 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
6486         Port tests to help-quote-translation
6487         * test/automated/ert-x-tests.el (ert-test-describe-test):
6488         * test/automated/package-test.el (package-test-describe-package)
6489         (package-test-signed): Allow straight quotes, too.
6491 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
6493         Make find-function-on-key use the current window
6494         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
6495         Extract from `find-function-on-key', add a second argument.
6496         (find-function-on-key): Use it (bug#19679).
6497         (find-function-on-key-other-window)
6498         (find-function-on-key-other-frame): New commands.
6500 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
6502         Revert "Define `map-elt' as a generalized variable"
6503         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
6505 2015-06-21  Ken Brown  <kbrown@cornell.edu>
6507         Drop support for CPU profiling on Cygwin
6508         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
6509         (Bug#20843)
6511 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
6513         Fix some “nested” quoting confusion in doc strings
6514         * lisp/emacs-lisp/advice.el (ad-map-arglists):
6515         * lisp/kermit.el (kermit-clean-on):
6516         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
6517         * src/keyboard.c (Frecursive_edit):
6518         Use curved quotes when quoting text containing apostrophe,
6519         so that the apostrophe isn't curved in the output.
6521 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
6523         Define `map-elt' as a generalized variable
6524         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
6525         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
6526         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
6527         `setf' with `map-elt'.
6528         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
6530 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
6532         Improve error handling in tramp-adb.el
6533         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
6534         Improve error handling.
6536 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
6538         Reuse `alist-get' in map.el
6539         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
6540         elements.
6542 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
6544         Fix bytecomp-tests--warnings when $TMPDIR has a long name
6545         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
6546         Allow the warning to begin on the 3rd, not only 2nd line, which
6547         happens if temporary-file-directory has a very long name.
6549         Expect 2 icalendar tests to fail on MS-Windows
6550         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
6551         (icalendar-real-world): Make them expected failures on MS-Windows.
6553 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
6555         Improve port of settings UI to older displays
6556         * lisp/cus-start.el (standard): Don't assume curved quotes are
6557         easily distinguishable when users are tinkering with a setting
6558         that affects how curved quotes are generated.
6560         Fix quoting in electric-quote-mode doc string
6561         * lisp/electric.el (electric-quote-mode): Fix quoting.
6562         This is a fallout from the recent change introducing
6563         ‘help-quote-translation’.
6565         Spelling fix
6567         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
6569         * src/doc.c (syms_of_doc): Remove unused symbols.
6571 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
6573         In ‘window-state-put’ undedicate target window.  (Bug#20848)
6574         * lisp/window.el (window-state-put): Undedicate target window
6575         before putting STATE into it.  (Bug#20848)
6577 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
6579         Merge from origin/emacs-24
6580         a5e6f33 Fixes: debbugs:20832
6581         b9f02cf Fixes: debbugs:20832
6583 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
6585         Fix file-in-directory-p when the directory is UNC
6586         * lisp/files.el (file-in-directory-p): Support files and
6587         directories that begin with "//".  (Bug#20844)
6589 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
6591         (Bug#20832)
6592         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
6593         in the minibuffer.
6595 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
6597         (Bug#20832)
6598         * lisp/calendar/todo-mode.el (todo-show): Signal an error
6599         if buffer for adding new todo file is empty but modified.
6601 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
6603         (filepos-to-bufferpos): Further tweaks to the utf-16 code
6604         * lisp/international/mule-util.el (filepos-to-bufferpos):
6605         Fix typo.  Move non-exact check to the utf-16 branch (the only one
6606         affected).  Don't use byte-to-position for the utf-16 case.
6608 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
6610         Minor fixes in filepos-to-bufferpos
6611         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
6612         test for utf-8-emacs.  Exempt single-byte encodings from the
6613         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
6614         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
6615         UTF-16 encoded files for CR-LF EOLs.
6617 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
6619         Improve the optional translation of quotes
6620         Fix several problems with the recently-added custom variable
6621         help-quote-translation where the code would quote inconsistently
6622         in help buffers.  Add support for quoting 'like this', which
6623         is common in other GNU programs in ASCII environments.  Change
6624         help-quote-translation to use more mnemonic values: values are now the
6625         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
6626         traditional Emacs help-buffer quoting style `like this'.  Change the
6627         default behavior of substitute-command-keys to match what's done in
6628         set-locale-environment, i.e., quote ‘like this’ if displayable,
6629         'like this' otherwise.
6630         * doc/lispref/help.texi (Keys in Documentation): Document
6631         new behavior of substitute-command-keys, and document
6632         help-quote-translation.
6633         * doc/lispref/tips.texi (Documentation Tips):
6634         Mention the effect of help-quote-translation.
6635         * etc/NEWS: Mention new behavior of substitute-command-keys,
6636         and merge help-quote-translation news into it.
6637         When talking about doc strings, mention new ways to type quotes.
6638         * lisp/cedet/mode-local.el (overload-docstring-extension):
6639         Revert my recent change to this function, which shouldn't be
6640         needed as the result is a doc string.
6641         * lisp/cedet/mode-local.el (mode-local-print-binding)
6642         (mode-local-describe-bindings-2):
6643         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
6644         * lisp/cus-theme.el (describe-theme-1):
6645         * lisp/descr-text.el (describe-text-properties-1, describe-char):
6646         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
6647         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
6648         (eieio-help-constructor):
6649         * lisp/emacs-lisp/package.el (describe-package-1):
6650         * lisp/faces.el (describe-face):
6651         * lisp/help-fns.el (help-fns--key-bindings)
6652         (help-fns--compiler-macro, help-fns--parent-mode)
6653         (help-fns--obsolete, help-fns--interactive-only)
6654         (describe-function-1, describe-variable):
6655         * lisp/help.el (describe-mode):
6656         Use substitute-command-keys to ensure a more-consistent quoting
6657         style in help buffers.
6658         * lisp/cus-start.el (standard):
6659         Document new help-quote-translation behavior.
6660         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
6661         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
6662         (help-xref-url-regexp):
6663         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
6664         * lisp/wid-edit.el (widget-documentation-link-regexp):
6665         Also match 'foo', in case we're in a help buffer generated when
6666         help-quote-translation is ?'.
6667         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
6668         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
6669         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
6670         (Fsubstitute_command_keys): Document and implement new behavior.
6671         (Vhelp_quote_translation): Document new behavior.
6673 2015-06-18  Glenn Morris  <rgm@gnu.org>
6675         * lisp/cus-start.el (help-quote-translation): Add :version.
6677         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
6679 2015-06-18  Alan Mackenzie  <acm@muc.de>
6681         Make translation of quotes to curly in doc strings optional.
6682         src/doc.c (traditional, prefer-unicode): new symbols.
6683         (help-quote-translation): new variable.
6684         (Fsubstitute_command_keys): make translation of quotes dependent on
6685         `help-quote-translation'; also translate curly quotes back to ASCII
6686         ones.
6687         lisp/cus-start.el (top-level): Add a customization entry for
6688         `help-quote-translation'.
6690 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
6692         * lisp/emacs-lisp/package.el: Don't always propagate async errors
6693         (package--with-work-buffer-async): Only propagate the error if the
6694         callback returns non-nil.
6695         (package--download-one-archive): Return nil on the signature
6696         checking callback if we accept unsigned.
6697         (package--download-and-read-archives): Return non-nil on the
6698         archive download callback.
6700 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
6702         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
6703         * src/nsfns.m (Fx_create_frame):
6704         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
6705         image_cache_refcount before first x_default_parameter call.
6707 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
6709         Improve and extend filepos-to-bufferpos
6710         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
6711         Don't barf if F returns nil for some argument.
6712         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
6713         that every encoding of type 'charset' is single-byte.
6715 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
6717         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
6718         Properly delete packages.  (Bug#20836)
6720 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
6722         Update data files from just-released Unicode 8.0
6723         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
6724         status.
6725         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
6726         * admin/unidata/BidiMirroring.txt:
6727         * admin/unidata/BidiBrackets.txt:
6728         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
6730 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
6732         Document curved quotes a bit better
6733         * doc/emacs/basic.texi (Inserting Text):
6734         Mention C-x 8.  Change example to use curved quote rather
6735         than infinity, as this lets us give more ways to do it.
6736         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
6737         and quotation marks.
6738         * doc/emacs/text.texi (Quotation Marks):
6739         * doc/lispref/tips.texi (Documentation Tips):
6740         Add "curly quotes" and "curved quotes" to the index.
6741         * doc/emacs/text.texi (Quotation Marks):
6742         Give the C-x 8 shorthands for curved quotes.
6743         Cross-reference to "Quotation Marks".
6745 2015-06-17  Daiki Ueno  <ueno@gnu.org>
6747         Add pinentry.el for better GnuPG integration
6748         * lisp/pinentry.el: New file.
6749         * etc/NEWS: Add entry about pinentry.el.
6750         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
6751         (Bug#20550)
6753 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
6755         * lisp/emacs-lisp/package.el: Slightly better error reporting.
6757 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
6759         (define-minor-mode): Use setq-default for :global minor modes
6760         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
6761         Use setq-default for :global minor modes (bug#20712).
6763 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
6765         Avoid infloop in redisplay with tall images
6766         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
6767         down near ZV.  (Bug#20808)
6768         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
6769         instead of CHARPOS.
6771 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
6773         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
6774         Fix error reporting.
6776         * lisp/let-alist.el: move to lisp/emacs-lisp/let-alist.el
6778         * lisp/emacs-lisp/package.el: Revert buffer after any operation
6779         Call `package-menu--post-refresh' after any operation that changes
6780         the package database (`package-install' and `package-delete').  To
6781         avoid performance issues in large transactions, these functions
6782         add `post-refresh' to `post-command-hook' instead of calling it
6783         immediately.
6784         (package-menu--mark-or-notify-upgrades): New function.
6785         (list-packages): Add it to `package--post-download-archives-hook'.
6786         (package-menu--post-refresh): Lose the upgrade-checking code, add
6787         code to remove itself from `post-command-hook'.
6788         (package-install, package-delete): Add it to `post-command-hook'.
6789         (package-menu-execute): Don't call `package-menu--post-refresh'.
6791 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
6793         Add missing function xref-location-group for elisp-mode.
6794         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
6796 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
6798         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
6799         The behavior now matches the description in the manual.  (Bug#20783)
6801 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
6803         Update tutorials/TUTORIAL.cn
6804         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
6806 2015-06-17  Glenn Morris  <rgm@gnu.org>
6808         Generate char-script-table from Unicode source.  (Bug#20789)
6809         * admin/unidata/Makefile.in (AWK): New, set by configure.
6810         (all): Add charscript.el.
6811         (blocks): New variable.
6812         (charscript.el, ${unidir}/charscript.el): New targets.
6813         (extraclean): Also remove generated charscript.el.
6814         * admin/unidata/blocks.awk: New script.
6815         * admin/unidata/Blocks.txt: New data file, from unicode.org.
6816         * lisp/international/characters.el: Load charscript.
6817         * src/Makefile.in (charscript): New variable.
6818         (${charscript}): New target.
6819         (${lispintdir}/characters.elc): Depend on charscript.elc.
6820         (temacs$(EXEEXT)): Depend on charscript.
6822         * lisp/international/characters.el (char-script-table): Tweak
6823         some ranges to better match the source.  (Bug#20789#17)
6825         Remove "no-byte-compile: t" from a few files.
6826         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
6827         * lisp/obsolete/patcomp.el: No reason not to compile these.
6829 2015-06-16  Glenn Morris  <rgm@gnu.org>
6831         Fix some typos in copied Unicode data.  (Bug#20789)
6832         * lisp/international/characters.el (char-script-table):
6833         * lisp/international/fontset.el (script-representative-chars)
6834         (setup-default-fontset): Fix typos.
6836         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
6837         Don't print filename twice (it's in the prefix now).
6839         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
6840         No longer needed.
6842         Address a compilation warning.
6843         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
6844         Replace 't' with '_' in pcase.
6846         Address some check-declare warnings.
6847         * lisp/simple.el (tabulated-list-print):
6848         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
6849         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
6850         (ns-get-selection): Update declarations.
6852         Address some compilation warnings.
6853         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
6854         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
6855         Replace 't' with '_' in pcase.
6857         Address some compilation warnings.
6858         * lisp/face-remap.el (text-scale-adjust):
6859         * lisp/menu-bar.el (popup-menu-normalize-position):
6860         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
6861         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
6862         * lisp/emacs-lisp/generator.el (cps--transform-1):
6863         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
6864         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
6865         * lisp/progmodes/octave.el (octave-goto-function-definition)
6866         (octave-find-definition-default-filename):
6867         Replace 't' with '_' in pcase.
6869         * lisp/emacs-lisp/pcase.el (pcase--u1):
6870         Paper-over today's bootstrap failure.
6872 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
6874         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
6876         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
6878         Better confirmation message in `find-alternate-file' (Bug#20830)
6879         * lisp/files.el (find-alternate-file'): Improve the confirmation
6880         message to show the buffer name.
6882         Better docstring for null. (Bug#20815)
6883         * src/data.c (null): Improves the docstring, saying what null returns
6884         when OBJECT is non-nil.
6886 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
6888         * lisp/net/newst-treeview.el: Use lexical-binding.
6890         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
6891         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
6892         New auxiliary function, extracted from filepos-to-bufferpos.
6893         Make sure it terminates.
6894         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
6895         Add support for the `exact' quality.
6897 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
6899         Identify feeds in newsticker treeview with :nt-feed property
6900         * lisp/net/newst-treeview.el:
6901         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
6903 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
6905         * lisp/emacs-lisp/pcase.el: Improve docs and error handling
6906         (pcase--self-quoting-p): Floats aren't self-quoting.
6907         (pcase): Tweak docstring.
6908         (pcase--u1): Deprecate the t pattern.  Improve error detection for
6909         the nil pattern.
6910         (\`): Tweak docstring.  Signal an error for unrecognized cases.
6911         (bug#20784)
6913 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
6915         Fix infloop in filepos-to-bufferpos
6916         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
6917         offset calculation, and make it conditional on the eol-type of the
6918         file's encoding.  (Bug#20825)
6920 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
6922         Fix handling of image cache refcounts.  (Bug#20802)
6923         This backports Eli Zaretskii's solution of this problem for W32
6924         to X and NS.
6925         * src/nsfns.m (image_cache_refcount): Define unconditionally.
6926         (unwind_create_frame): If the image cache's reference count
6927         hasn't been updated yet, do that now.
6928         (Fx_create_frame): Set image_cache_refcount unconditionally.
6929         * src/xfns.c (image_cache_refcount): Define unconditionally.
6930         (unwind_create_frame): If the image cache's reference count
6931         hasn't been updated yet, do that now.
6932         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
6933         unconditionally.
6934         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
6935         X and NS.
6937 2015-06-16  Nils Ackermann  <nils@ackermath.info>
6939         Improve reftex-label-regexps default value
6940         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
6941         keyvals label regexp more strict to better cope with unbalanced
6942         brackets common in math documents.
6944 2015-06-16  Glenn Morris  <rgm@gnu.org>
6946         * doc/emacs/calendar.texi (Format of Diary File):
6947         Move "nonmarking" from here...
6948         (Displaying the Diary): ... to here.
6950         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
6951         Swap the order of these nodes.
6952         * doc/emacs/emacs.texi: Update detailed menu for the above change.
6954         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
6955         Update date of examples.
6956         (Diary, Format of Diary File): Move example from former to latter.
6957         Reduce duplication.
6959         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
6960         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
6961         Don't set no-byte-compile in the outputs.
6962         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
6964 2015-06-15  Glenn Morris  <rgm@gnu.org>
6966         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
6967         * doc/emacs/calendar.texi (Diary, Format of Diary File):
6968         Update for above diary-file change.
6969         : * etc/NEWS: Mention this.
6971         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
6972         (apply-macro-to-region-lines): Use user-error.
6974         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
6975         (pages-directory-for-addresses): Doc fixes.
6977 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
6979         * lisp/info.el: Cleanup bytepos/charpos issues
6980         * lisp/international/mule-util.el: Use lexical-binding.
6981         (filepos-to-bufferpos): New function.
6982         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
6983         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
6984         (Info-read-subfile, Info-search): Use 0-based file positions.
6986         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
6987         (perl--syntax-exp-intro-keywords): New var.
6988         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
6989         (bug#20800).
6991 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
6993         Fix quoting when making derived mode docstring
6994         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
6995         Nest regexp-quote inside format, not the reverse.
6996         Problem reported by Artur Malabarba in:
6997         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
6999 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
7001         Fix current-iso639-language on MS-Windows
7002         * lisp/international/mule-cmds.el (set-locale-environment):
7003         Downcase the locale name before interning it.  This is so the
7004         'current-iso639-language' on MS-Windows matches the ':lang'
7005         property of font-spec objects.
7007         Limit Symbola usage some more
7008         * lisp/international/fontset.el (setup-default-fontset): Limit
7009         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
7010         (Bug#20727)
7012 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
7014         * lisp/emacs-lisp/map.el (map-let): Better docstring.
7016 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
7018         Spelling fixes
7020 2015-06-14  Glenn Morris  <rgm@gnu.org>
7022         * lisp/version.el (emacs-repository-version-git): Demote errors.
7023         Check result is a hash.
7025 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
7027         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
7028         Catch errors that happen before going async.  (Bug#20809)
7030 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
7032         Another improvement of documentation of set-fontset-font
7033         * doc/lispref/display.texi (Fontsets): Say explicitly that
7034         CHARACTER can be a single codepoint.
7035         * src/fontset.c (Fset_fontset_font): Doc fix.
7037         Another improvement for symbol and punctuation characters
7038         * lisp/international/fontset.el (setup-default-fontset): Exclude
7039         from Symbola character ranges for symbols and punctuation covered
7040         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
7041         installed and where its coverage of symbols and punctuation is
7042         known to be good.  (Bug#20727)
7044 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
7046         Some generic support for multi-mode indentation.
7047                 * lisp/progmodes/prog-mode.el (prog-indentation-context): New
7048                 variable.
7049                 (prog-first-column, prog-widen): New convenience functions.
7051 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
7053         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
7054         Don't assume that `tabulated-list-printer' will leave point at the
7055         end of the buffer.  (Bug#20810)
7057 2015-06-13  Glenn Morris  <rgm@gnu.org>
7059         Tweaks for getting repository version; a bit more like it was for bzr.
7060         * lisp/version.el (emacs-repository-version-git)
7061         (emacs-repository--version-git-1): New functions,
7062         split from emacs-repository-get-version.
7063         (emacs-repository-get-version): Make the second argument meaningful.
7065         * lisp/startup.el (command-line-1): Inform if skipping relative
7066         file names due to deleted PWD.
7068         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
7069         when starup directory is missing.  (Bug#18851)
7070         (errno.h): Include it.
7072 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
7074         Better fix for documenting `X as "`X"
7075         Fix suggested by Stefan Monnier.
7076         * lisp/help-fns.el (help-fns--signature):
7077         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
7078         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
7079         Don't treat `X specially, as help-fns--signature now handles this.
7081 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
7083         Improve the default fontset when Symbola is not installed
7084         * lisp/international/fontset.el (setup-default-fontset): Only
7085         prepend Symbola and FreeMono font specs for symbols and
7086         punctuation; do not replace the default spec for them.  This
7087         should have better results when Symbola/FreeMono are not
7088         installed.  (Bug#20727)
7090         Improve documentation of ':lang' in font specs
7091         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
7092         use of the ':lang' property of the font spec.
7093         * doc/emacs/frames.texi (Fonts): Document the language names that
7094         can be in the STYLE part of XLFD.
7095         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
7096         property.
7098         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
7100         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
7102         Revert last change in fontset.el
7103         * lisp/international/fontset.el (setup-default-fontset): Revert
7104         the change "Configure Symbola font only if installed", since font
7105         search is evidently not yet set up when this function is called.
7106         (Bug#20727)
7108 2015-06-12  Glenn Morris  <rgm@gnu.org>
7110         Ensure early startup warnings are visible at the end.  (Bug#20792)
7111         * lisp/emacs-lisp/warnings.el (display-warning):
7112         If startup isn't complete, delay the warning.
7113         * lisp/startup.el (normal-top-level, command-line):
7114         Let display-warning automatically handle the needed delays.
7115         Run delayed-warnings-hook.
7117         * lisp/version.el (emacs-repository-get-version):
7118         Avoid calling external executable if possible.  (Bug#20799)
7120 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
7122         Document `X as "`X", not as "(` X)"
7123         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
7124         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
7126         * src/print.c (print_object): Minor simplification.
7128 2015-06-12  Glenn Morris  <rgm@gnu.org>
7130         * src/buffer.c (init_buffer): Add final newline to message.
7132 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
7134         Configure Symbola font only if installed
7135         * lisp/international/fontset.el (setup-default-fontset):
7136         Don't specify the Symbola font if it's not installed.
7137         Likewise for FreeMono.  (Bug#20727)
7139 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
7141         Configure Symbola font only for symbols and punctuation
7142         * lisp/international/fontset.el (setup-default-fontset): Leave
7143         only symbols and punctuation in the fontset setup for Symbola
7144         font; remove "Greek and Coptic" and "Cyrillic Supplement".
7145         (Bug#20798)
7147 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
7149         Fix crash in fontset-info
7150         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
7151         non-nil.
7153 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
7155         Port to Solaris 10 sparc + Sun C 5.13
7156         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
7157         Adjust to process.c change.
7158         * src/process.c (create_process): Declare volatile variables at
7159         top level of this function, so that they're less likely to be
7160         reused later in the function in the code executed by the vforked
7161         child.  Do not declare locals used only in the vforked child, as
7162         they might share memory with locals still live in the parent.
7163         Instead, use the same variables in the child as in the parent.
7164         This works around a subtle bug that causes a garbage collector
7165         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
7167 2015-06-12  Glenn Morris  <rgm@gnu.org>
7169         * lisp/startup.el (normal-top-level): Don't let *Messages* get
7170         a nil default-directory.
7172 2015-06-11  Glenn Morris  <rgm@gnu.org>
7174         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
7176         Some progress towards starting with PWD deleted.  (Bug#18851)
7177         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
7178         * lisp/startup.el (normal-top-level, command-line-1):
7179         * lisp/minibuffer.el (read-file-name-default):
7180         Handle default-directory being nil.
7182 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
7184         Fix "not a tty" bug on Solaris 10
7185         * configure.ac (PTY_OPEN): Define to plain 'open'
7186         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
7187         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
7188         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
7189         hosts that call grantpt which does its work via a setuid subcommand
7190         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
7191         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
7192         seems relevant in that case too.
7194 2015-06-11  Juri Linkov  <juri@linkov.net>
7196         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
7197         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
7198         (Bug#20785)
7200 2015-06-11  Glenn Morris  <rgm@gnu.org>
7202         * lisp/international/characters.el (char-script-table): Fix typo.
7204 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
7206         Fix quoting of help for functions with odd names
7207         While investigating Bug#20759, I discovered other quoting problems:
7208         C-h f mishandled characters like backslash and quote in function names.
7209         This fix changes the behavior so that 'C-h f pcase RET' now
7210         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
7211         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
7212         in src/lread.c's read1 function says that the backslash will be
7213         needed starting in Emacs 25, which implies that 'format' is
7214         correct and the old pcase documention was wrong to omit the backslash.
7215         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
7216         * lisp/help-fns.el (help-fns--signature):
7217         * lisp/help.el (help-add-fundoc-usage):
7218         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
7219         Use help--make-usage-docstring rather than formatting
7220         help-make-usage.
7221         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
7222         Return raw docstring.
7223         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
7224         raw docstring.  Take more care to distinguish raw from cooked dstrings.
7225         (describe-function-1): Let help-fns--signature substitute
7226         command keys.
7227         * lisp/help.el (help--docstring-quote): New function.
7228         (help-split-fundoc): Use it, to quote funny characters more
7229         systematically.
7230         (help--make-usage): Rename from help-make-usage, since this
7231         should be private.  Leave an obsolete alias for the old name.
7232         (help--make-usage-docstring): New function.
7233         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
7235 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
7237         * lisp/thingatpt.el (in-string-p): Revert last change,
7238         since in-string-p is not used in thingatpt.el but only from outside.
7239         Also, use lexical binding.
7241 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
7243         * lisp/let-alist.el (let-alist--deep-dot-search): Fix cons
7244         * test/automated/let-alist.el (let-alist-cons): Test it.
7246 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
7248         * src/syntax.c (Fbackward_prefix_chars): Reword docstring
7250 2015-06-10  Glenn Morris  <rgm@gnu.org>
7252         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
7254         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
7255         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
7256         * admin/gitmerge.el (gitmerge-commit-message):
7257         Exclude "skipped" messages from ChangeLog once again.
7259         Slight namespace cleanup for thingatpt.el.
7260         * lisp/thingatpt.el (thing-at-point--in-string-p)
7261         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
7262         (thing-at-point--read-from-whole-string): Rename from
7263         old versions without "thing-at-point--" prefix.
7264         Keep old versions as obsolete aliases.  Update all uses.
7266         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
7267         Move requiring of finder from here...
7268         (checkdoc-package-keywords): ... to here.
7270         Use 'user-error' in a few calendar files.
7271         * lisp/calendar/appt.el (appt-add):
7272         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
7273         (calendar-generate):
7274         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
7275         Replace 'error' with 'user-error'.
7277         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
7279         * lisp/files-x.el (add-file-local-variable):
7280         Special-case 'lexical-binding'.  (Bug#20641)
7282         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
7283         No longer autoload.
7284         * doc/misc/autotype.texi (Executables):
7285         Undocument executable-self-display.
7287         * lisp/progmodes/executable.el (executable-self-display):
7288         Use non-obsolete tail syntax.  (Bug#20779)
7289         (executable-self-display): Doc update.
7291 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
7293         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
7294         (finder-known-keywords): Silence byte-compiler.
7296 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7298         * lisp/simple.el (eval-expression): Macroexpand before evaluating (bug#20730)
7300         * lisp/progmodes/sh-script.el: Better handle nested quotes
7301         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
7302         (sh-font-lock-quoted-subshell): Make sure double quotes within single
7303         quotes don't mistakenly end prematurely the surrounding string.
7305         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
7307 2015-06-09  Glenn Morris  <rgm@gnu.org>
7309         * test/automated/Makefile.in (ELFILES): Sort.
7311         * Makefile.in (SUBDIR_MAKEFILES):
7312         * lwlib/Makefile.in (WARN_CFLAGS):
7313         Use built-in Make functions rather than echo+sed.
7315 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
7317         Update char-script-table
7318         * lisp/international/characters.el (char-script-table): Update
7319         from Unicode 8.0 Draft.
7321         Improve font selection for punctuation and other symbols
7322         * src/fontset.c (face_for_char): If the character's script is
7323         'symbol', and the font used for ASCII face has a glyph for it, use
7324         the font for the ASCII face instead of searching the fontsets.
7325         This comes instead of NS-specific code that used the current
7326         face's font instead, which is now disabled due to undesirable
7327         consequences.  (Bug#20727)
7329 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
7331         Skip past `#' to find BEG
7332         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Skip
7333         past `#' to find BEG (bug#20771).
7334         * test/automated/elisp-mode-tests.el
7335         (elisp-completes-functions-after-hash-quote): New test.
7337 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
7339         Fix compilation warning/error in --without-x builds
7340         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
7341         code on HAVE_WINDOW_SYSTEM.
7343         Improve the default fontset wrt symbols
7344         * lisp/international/fontset.el (setup-default-fontset): Better
7345         setup of fontset-default for symbols: use Symbola and FreeMono.
7346         (Bug#20727)
7348 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
7350         Add new command checkdoc-package-keywords
7351         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag): New
7352           defcustom.
7353         (checkdoc-list-of-strings-p): Add doc.
7354         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
7355         non-nil, call `checkdoc-package-keywords'.
7356         (checkdoc-get-keywords): New defun.
7357         (checkdoc-package-keywords): New command. Warns if the current file
7358         has package.el-style keywords that aren't in `finder-known-keywords'.
7359         * etc/NEWS: Add entry.
7361 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
7363         Avoid crashes when key-binding is called from a timer
7364         * src/keymap.c (Fkey_binding): Don't segfault if called with an
7365         empty vector as KEY.  (Bug#20705)
7367         Fix a thinko in arc-mode.el
7368         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
7369         non-Zip64 case.  (Bug#20769)
7371 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
7373         * lisp/emacs-lisp/package.el (package-delete): Make interactive
7375 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
7377         checkdoc.el (checkdoc-file): New function
7378         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When
7379           `checkdoc-diagnostic-buffer' is set to "*warn*", print the warning
7380           to the standard output.
7381         (bug#20754)
7383 2015-06-07  Glenn Morris  <rgm@gnu.org>
7385         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
7387         * src/font.c (syms_of_font) <font-log>: Doc fix.
7389         Remove the obsolete leading "*" from some C doc strings.
7390         * src/coding.c (syms_of_coding):
7391         * src/font.c (syms_of_font): Remove leading "*" from docs.
7392         * lisp/cus-start.el (enable-character-translation): Add it.
7394 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
7396         Move gen_origin from program to data
7397         That way, 'make change-history' needs to change only ChangeLog.2,
7398         instead of having to change two files.
7399         * ChangeLog.2: Add commit info for range that this file covers.
7400         * Makefile.in (new_commit_regexp): New macro.
7401         (change-history-nocommit): Simplify, by putting what used to be
7402         the gen_origin value into the data (ChangeLog.2) rather than
7403         into the program (gitlog-to-emacslog).
7404         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
7405         the input file (e.g., ChangeLog.2) rather than by having a
7406         constant in the program.  Substitute it into the output.
7408 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
7410         Escape any quotes in the function name
7411         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
7412         function name (bug#20759).
7414 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
7416         Adapt 'struct timespec' to next release of MinGW runtime
7417         * nt/inc/ms-w32.h (struct timespec): Don't declare if
7418         __struct_timespec_defined is defined.
7420 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
7422         Merge from gnulib
7423         This incorporates:
7424         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
7425         2015-06-05 stdio: Don't redefine gets when using C++
7426         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
7427         2015-06-02 file-has-acl: fix build on Mac OS X 10
7428         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
7429         2015-06-01 pthread_sigmask: discount system version if a simple macro
7430         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
7431         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
7432         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
7433         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
7434         * lib/gnulib.mk: Regenerate.
7436 2015-06-06  Juri Linkov  <juri@linkov.net>
7438         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
7439         before calling grep-compute-defaults because now it affects the
7440         command lines computed in grep-compute-defaults. (Bug#20728)
7442 2015-06-06  Glenn Morris  <rgm@gnu.org>
7444         Address some compilation warnings.
7445         * lisp/international/mule-cmds.el (w32-get-console-codepage)
7446         (w32-get-console-output-codepage):
7447         * lisp/progmodes/elisp-mode.el (xref-collect-references):
7448         * lisp/version.el (cairo-version-string): Declare.
7449         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
7451 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
7453         Fix display when a font claims large values of ascent and descent
7454         This fixes bug#20628.
7455         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
7456         coordinate of a hollow cursor glyph when the original glyph's
7457         ascent is too small.
7458         (get_font_ascent_descent, normal_char_ascent_descent)
7459         (normal_char_height): New functions.
7460         (handle_single_display_spec, append_space_for_newline)
7461         (calc_pixel_width_or_height, produce_stretch_glyph)
7462         (calc_line_height_property): Use normal_char_ascent_descent and
7463         normal_char_height.
7464         (x_produce_glyphs): When font-global values of ascent and descent
7465         are too large, use per-character glyph metrics instead, if
7466         possible.  But don't allow the glyph row's ascent and descent
7467         values become smaller than the values from the metrics of the
7468         font's "normal" character.
7469         * src/xftfont.c (xftfont_draw):
7470         * src/w32font.c (w32font_draw): Correct the values of ascent and
7471         descent used to draw glyphless characters' hex code in a box.
7472         * src/xterm.c (x_draw_glyph_string_background):
7473         * src/xdisp.c (x_produce_glyphs):
7474         * src/w32term.c (x_draw_glyph_string_background):
7475         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
7476         to detect fonts whose global ascent and descent values are too
7477         large to be used in layout decision, and redraw the background
7478         when that happens.
7479         * src/dispextern.h (FONT_TOO_HIGH): New macro.
7480         (get_font_ascent_descent): Add prototype.
7481         * src/xterm.c (x_new_font):
7482         * src/w32term.c (x_new_font):
7483         * src/nsterm.m (x_new_font):
7484         * src/font.c (font_open_entity):
7485         * src/composite.c (composition_gstring_width): Use
7486         get_font_ascent_descent to obtain reasonable values for ascent and
7487         descent of a font.
7489 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
7491         Add assertion in adjust_point_for_property
7492         * src/keyboard.c (adjust_point_for_property): Add eassert for
7493         current buffer being shown in selected window.
7495 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
7497         Replace uses of in-string-p; make it obsolete
7498         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
7499         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
7501 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
7503         Fix Dired display of an explicit list of files by ls-lisp.el
7504         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
7505         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
7506         correct for when displaying individual files separately, not as
7507         part of listing a directory, in which case these values are not
7508         recomputed by 'ls-lisp-insert-directory', but used verbatim.
7510         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
7512 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
7514         Do not adjust point in a non-selected window
7515         * src/keyboard.c (command_loop_1): Do not adjust point when
7516         current buffer is not shown in selected window (Bug#20590).
7518         * etc/DEBUG: Mention 'maybe_call_debugger'
7520 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
7522         Fix a unit test for map.el
7523         * test/automated/map-tests.el (test-map-let): Fix the test to work
7524         with the new syntax of `map-let'.
7526         * lisp/emacs-lisp/map.el (map-let): Better docstring.
7528         Better syntax for the map pcase pattern
7529         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
7530         bindings of the form (KEY PAT) or SYMBOL. KEY is not quoted.
7532         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
7534         Fix a byte-compiler error in map-put and map-delete
7535         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
7536         called with a symbol.
7538 2015-06-05  Glenn Morris  <rgm@gnu.org>
7540         * admin/gitmerge.el (gitmerge-commit-message):
7541         Revert to including "skipped" messages in ChangeLog once again.
7543 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
7545         Use string> instead of equiv lambda with string<
7546         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
7547         lambda with string<.
7549 2015-06-05  Glenn Morris  <rgm@gnu.org>
7551         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
7552         (map--delete-array): Fix typo.
7554         * test/automated/map-tests.el: Replace "assert" with "should".
7556         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
7557         (SUBDIRS_REL): Derive from SUBDIRS.
7559         Tweak some build messages.
7560         * lisp/Makefile.in ($(lisp)/loaddefs.el):
7561         * lisp/cus-dep.el (custom-make-dependencies):
7562         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
7563         * lisp/international/titdic-cnv.el (batch-titdic-convert):
7564         Don't say how to compile.
7566 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
7568         Omit U+0332 COMBINING LOW LINE in previous change
7569         It turns out that it does not work on Ubuntu 15.04.
7571         Fix transliteration of Bahá'í months
7572         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
7573         Improve quality of Latin transliteration of Bahá'í month names.
7575         Fix curved quotes in a few places
7576         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
7577         The strings in question are not doc strings, so this partially
7578         undoes the recent change that assumed they were doc strings.
7579         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
7580         * lisp/info.el (Info-finder-find-node):
7581         Use curved quotes.
7582         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
7583         Also allow curved quotes in doc strings.
7585 2015-06-04  Glenn Morris  <rgm@gnu.org>
7587         * lisp/Makefile.in (AM_V_at): Add missing definition.
7589         * lisp/Makefile.in: Quieten output a bit.
7590         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
7591         Don't echo directories, since the commands we invoke print them.
7593         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
7594         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
7595         (SUBDIRS_SUBDIRS): New variables.
7596         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
7597         Remove.
7598         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
7599         (update-subdirs, compile-main, compile-clean):
7600         Replace "setwins" usage with new "SUBDIRS" variables.
7602         * lisp/vc/compare-w.el (compare-windows-get-window-function):
7603         Fix :version tag.
7605 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7607         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
7609         Undo removal of x_clear_area call on expose for GTK3 or cairo.
7610         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]: Clear
7611         exposed area.  (Bug#20677)
7613 2015-06-04  Glenn Morris  <rgm@gnu.org>
7615         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
7617         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
7619         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
7620         Rename from quail-lao-update-translation, since lao.el defines that.
7622 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
7624         Handle new-style advice in find-funct
7625         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
7626         Handle new-style advice.  Return the symbol's function definition.
7627         (Bug#20718)
7628         (find-function-library): Update accordingly.
7630 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
7632         Merge branch 'map'
7634         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
7636         Add new function string-greaterp
7637         * lisp/subr.el (string-greaterp): New function.  Also aliased to
7638         `string>'.
7639         * test/automated/subr-tests.el (string-comparison-test): Add unit
7640         tests for `string>'and `string<'.
7641         * src/fns.c (string-lessp): Better docstring.
7643 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
7645         Fix timezone-related functions on MS-Windows
7646         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
7647         'xputenv', even if no reallocation of tzvalbuf was necessary.
7648         This fixes a bug in timezone-related functions on MS-Windows.
7649         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
7651 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
7653         Don't pass raw directory name to 'error'
7654         * lisp/files.el (basic-save-buffer-2): Avoid format error if
7655         a directory name contains a string like "%s".
7657 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
7659         Override 'grep --color=always'
7660         * lisp/progmodes/xref.el (xref-collect-matches):
7661         Override --color=always in grep-find-template.
7663 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
7665         Fix error introduced recently in file-notify-tests.el
7666         * test/automated/file-notify-tests.el
7667         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
7668         (file-notify--deftest-remote): Revert previous patch, not
7669         necessary anymore.
7671 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
7673         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
7674         Starting from a display string after a newline, point went to the
7675         previous line.  Also, fix an inadvertent use of a buffer position
7676         with FETCH_BYTE.  (Bug#20701)
7678 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
7680         Instrument file-notify-test.el in order to catch hydra error.
7681         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
7682         Wrap body by `ignore-case', in order to trap non-local errors.
7684 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7686         Undo previous changes in non-toolkit scroll bar drawing.
7687         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
7688         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
7690 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
7692         * .gitignore: Also ignore doc/*/*/*.html and .ps.
7694         Support quotes 'like this' in info files
7695         This is possible when 'makeinfo --disable-encoding' is used
7696         in Texinfo 5.
7697         * lisp/calc/calc-help.el (calc-describe-thing):
7698         * lisp/gnus/gnus-art.el (gnus-button-alist):
7699         * lisp/info.el (Info-find-index-name):
7700         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
7701         Also support quotes 'like this'.
7702         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
7703         * lisp/finder.el (finder-font-lock-keywords): Remove var that
7704         hasn't been used in years, instead of bothering to fix its quoting.
7706 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
7708         * .gitignore: Remove !test/etags/html-src/*.html.
7709         It's no longer needed, since *.html was removed.  Sort.
7711 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
7713         Restore <D> instead of '.' in grep-find-template
7714         * lisp/cedet/semantic/symref/grep.el
7715         (semantic-symref-grep-use-template): Update a comment.
7716         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
7717         instead of '.' in grep-find-template (bug#20719).
7718         (rgrep): Pass nil as the directory to rgrep-default-command.
7719         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
7720         default value for DIR.
7721         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
7722         workaround.
7724 2015-06-02  Glenn Morris  <rgm@gnu.org>
7726         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
7728         * configure.ac (emacs_config_features): Add Cairo.
7730         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
7732 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
7734         Ensure, that autorevert works for remote files in file-notify-tests.el
7735         * test/automated/file-notify-tests.el (file-notify--test-desc):
7736         New defvar.
7737         (file-notify--test-remote-enabled)
7738         (file-notify-test00-availability, file-notify-test01-add-watch)
7739         (file-notify-test02-events): Use it.
7740         (file-notify--test-event-test): Check proper descriptor.
7741         (file-notify-test03-autorevert): Ensure, that
7742         `visited-file-modtime' has changed.
7743         (Bug#20392)
7745 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
7747         Add a pcase pattern for maps and `map-let' based on it
7748         * lisp/emacs-lisp/map.el (map-let): New macro.
7749         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
7750         * test/automated/map-tests.el: New test for `map-let'.
7752 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
7754         Reuse rgrep mechanics in xref-find-regexp
7755         * lisp/progmodes/grep.el (rgrep-default-command):
7756         Extract from `rgrep'.
7757         * lisp/progmodes/xref.el (xref-collect-references): Split from
7758         `xref-collect-matches'.  Only handle the case of symbol search.
7759         (xref-collect-matches): Instead of Semantic Symref, use
7760         `rgrep-default-command', to take advantage of its directory and
7761         file ignore settings.
7762         (xref--collect-match): Remove the last argument, leaving the
7763         regexp construction up to the caller.
7764         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
7765         Change to take the xref-collect- function to use as an argument.
7766         (elisp-xref-find): Update accordingly.
7767         * lisp/progmodes/etags.el (etags--xref-find-matches)
7768         (etags-xref-find): Same.
7770         Move xref-elisp-location to elisp-mode.el
7771         * lisp/progmodes/xref.el (xref-elisp-location)
7772         (xref-make-elisp-location, xref-location-marker): Remove here.
7773         (xref--xref): Don't limit the type of the location slot.
7774         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
7775         Define as a cl-struct here.
7776         (xref-location-marker): Move here.
7778 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
7780         Minor tweaks for .gitignore
7781         * .gitignore: Don't ignore versioned *.html and *.ps files.  Don't
7782         ignore admin/notes/tags that might be ignored as TAGS on
7783         case-insensitive filesystems.  (Bug#20710)
7785 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
7787         Generate curved quotes in ert doc
7788         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
7789         (ert-results-mode-menu)
7790         (ert-results-pop-to-backtrace-for-test-at-point)
7791         (ert-results-pop-to-messages-for-test-at-point)
7792         (ert-results-pop-to-should-forms-for-test-at-point)
7793         (ert-describe-test):
7794         Quote ‘like this’, not `like this', when generating doc strings
7795         and the like.
7796         * test/automated/ert-x-tests.el (ert-test-describe-test):
7797         Allow quoting ‘like this’.
7799 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
7801         Add test for previous commit
7802         * test/automated/replace-tests.el: New file.
7803         (query-replace--split-string-tests): Add test for previous commit.
7805         Avoid confusion in query-replace history when replacing NUL chars
7806         * lisp/replace.el (query-replace--split-string): New function.
7807         (query-replace-read-from): Rely on the 'separator' property
7808         instead of searching for the NUL character (Bug#20690).
7810 2015-06-02  Glenn Morris  <rgm@gnu.org>
7812         Merge from origin/emacs-24
7813         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
7815         * admin/gitmerge.el (gitmerge-commit-message):
7816         Exclude "skipped" messages from ChangeLog.
7818 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
7820         Sync with Tramp repository
7821         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
7822         messages.
7823         (tramp-handle-make-auto-save-file-name): When calling
7824         `make-auto-save-file-name' internally, make sure it uses Unix-like
7825         behavior, not Windows-like behavior.
7826         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
7827         the local case, because "chown" might fail on w32.
7828         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
7829         for XEmacs.
7831 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
7833         MS-Windows followup for batch stdout/stderr output changes
7834         * lisp/international/mule-cmds.el (set-locale-environment): In
7835         batch mode, use console codepages for keyboard and terminal
7836         encoding.  (Bug#20545)
7838         Update .gitattributes for DOS EOL files
7839         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
7840         CRLF end-of-line format.
7842         NS equivalents of xterm.c and w32term.c changes
7843         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
7844         glyph string background also when the font in use claims
7845         preposterously large global height value.  Helps to remove
7846         artifacts left from previous displays when glyphless characters
7847         are displayed as hex code in a box.
7848         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
7849         value for FRAME_LINE_HEIGHT, even when a font claims very large
7850         value for its height.
7852 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
7854         Avoid grave accent quoting in stderr diagnostics
7855         A few Emacs diagnostics go directly to stderr, and so can't easily
7856         contain curved quotes (as non-UTF-8 locales might mishandle them).
7857         Instead of bothering to add support for this rarity, reword the
7858         diagnostics so that they don't use grave accent to quote.
7859         * src/alloc.c (mark_memory): Fix comment.
7860         * src/buffer.c (init_buffer):
7861         * src/dispnew.c (init_display):
7862         * src/emacs.c (main, sort_args):
7863         * src/lread.c (dir_warning):
7864         * src/term.c (init_tty):
7865         * src/unexmacosx.c (unexec):
7866         * src/xfns.c (select_visual):
7867         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
7868         Reword stderr diagnostics to avoid quoting `like this'.
7869         * src/unexmacosx.c: Include errno.h.
7870         * src/xfns.c (select_visual): Encode value for locale.
7872 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
7874         Treat batch stdout/stderr like standard display
7875         Calls like (print FOO) could generate improperly encoded or
7876         hard-to-read output if FOO contains characters outside the system
7877         locale.  Fix this by treating batch stdout and stderr like
7878         interactive standard display, when it comes to transliterating and
7879         encoding characters (Bug#20545).
7880         * doc/emacs/mule.texi (Communication Coding):
7881         * doc/lispref/display.texi (Active Display Table):
7882         * doc/lispref/nonascii.texi (Locales):
7883         * etc/NEWS:
7884         * src/coding.c (syms_of_coding):
7885         * src/dispnew.c (syms_of_display):
7886         Document this.
7887         * src/print.c: Include disptab.h.
7888         (printchar_to_stream): New function, with much of the guts of the
7889         old Fexternal_debugging_output, except this one also uses the
7890         standard display table.
7891         (printchar, strout, Fexternal_debugging_output): Use it.
7893 2015-05-31  Glenn Morris  <rgm@gnu.org>
7895         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
7897 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
7899         Remove unused DEFSYMs
7900         Remove DEFSYMs that aren't used at the C level.  Also:
7901         * src/decompress.c (Qzlib_dll):
7902         * src/font.c (Qunicode_sip):
7903         * src/frame.c (Qtip_frame):
7904         * src/ftfont.c (Qserif):
7905         * src/gnutls.c (Qgnutls_dll):
7906         * src/xml.c (Qlibxml2_dll):
7907         Move from here ...
7908         * src/w32fns.c (syms_of_w32fns): ... to here,
7909         as these are used only on MS-Windows.
7911 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
7913         Use another default value for tramp-histfile-override
7914         * lisp/net/tramp-sh.el (tramp-histfile-override):
7915         Use ".tramp_history" as default.
7916         Fixes: debbugs:#20446
7918 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
7920         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
7922 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
7924         * etc/NEWS: Add an entry about map.el
7926         Improve the docstring of functions in map.el
7927         Since a map is not a data structure but a concept, adding information
7928         about the possible types of maps can be useful information.
7929         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
7930         each public function.
7932 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
7934         Faster implementation of map-empty-p
7935         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
7936         specific tests depending on the type of the map.
7938         * lisp/emacs-lisp/map.el: Better docstrings.
7940 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
7942         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda
7944 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
7946         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
7948         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
7950         Fix a false negative in `map-elt' with alists and values being nil
7951         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
7952         found but its associated value is nil, do not return the default
7953         value.
7954         * test/automated/map-tests.el: Add a regression test.
7956 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
7958         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
7960         Do not signal an error when trying to delete a key from an array
7961         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
7962         the key is present to avoid signaling an error.
7963         * test/automated/map-tests.el: Add a test for deleting non-existing
7964         keys from maps.
7966         * lisp/emacs-lisp/map.el: Better docstring.
7968         Minor improvement in map-elt.
7969         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
7970         doing a lookup in arrays, but check the boundaries of the array
7971         instead.
7972         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
7973         and a negative integer as key.
7975 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
7977         * test/automated/map-tests.el: Refactoring of test methods.
7979         * test/automated/map-tests.el: Renamed from map-test.el.
7981 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
7983         * lisp/emacs-lisp/map.el (map-into): Better error message.
7985         * lisp/emacs-lisp/map.el: Removes byte-compilation warnings.
7987         Throw an error when converting a map into an unknown map type
7988         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is not valid.
7989         * test/automated/map-test.el: Add a regression test.
7991         New library map.el similar to seq.el but for mapping data structures.
7992         * test/automated/map-test.el: New file.
7993         * lisp/emacs-lisp/map.el: New file.
7995 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
7997         Make sure there's no explicit tag name
7998         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
7999         there's no explicit tag name (bug#20629).
8001 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
8003         Remove format2
8004         * src/editfns.c, src/lisp.h (format2): Remove.
8005         It is more trouble than it's worth, now that we have CALLN.
8006         This is just a minor refactoring.
8007         * src/buffer.c (Fkill_buffer):
8008         * src/dbusbind.c (XD_OBJECT_TO_STRING):
8009         * src/fileio.c (barf_or_query_if_file_exists):
8010         Adjust to format2 going away.
8012         Don't misencode C-generated messages
8013         Also, be more consistent about calls to 'Fmessage' vs 'message'.
8014         * src/alloc.c (Fgc_status):
8015         Prefer AUTO_STRING to build_string for Fmessage call.
8016         * src/data.c (Fmake_variable_buffer_local)
8017         (Fmake_local_variable, Fmake_variable_frame_local):
8018         * src/doc.c (store_function_docstring):
8019         Use Fmessage, not message, since the argument can contain
8020         non-ASCII characters, and this can cause the resulting message
8021         to be incorrectly encoded for the current environment.
8022         * src/fns.c (maybe_resize_hash_table):
8023         * src/xselect.c (x_clipboard_manager_save_all):
8024         Use message, not Fmessage, since Fmessage's power isn't needed here.
8025         * src/process.c (Fmake_network_process): Reword message to avoid %s.
8026         * src/xdisp.c (vmessage): Document restrictions on message contents.
8027         (message_nolog) [false]: Remove unused code.
8029         Use \r rather than ^M in string literals
8030         This is less likely to cause problems on platforms that
8031         use CRLF (or CR!) termination for lines.
8033         Update .gitattributes to match current sources
8034         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
8035         * .gitattributes: Accommodate tests that insist on DOS format.
8036         Remove test/automated/data/decompress/foo-gzipped.
8037         Add etc/e/eterm-color.
8039 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
8041         Document 'face-ignored-fonts'
8042         * doc/emacs/mule.texi (Modifying Fontsets): Document
8043         face-ignored-fonts.  (Bug#20628)
8045         Add etags test for the new -Q option
8046         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
8047         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
8048         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
8049         test-case changes below.
8050         * test/etags/ETAGS.good_6: New file.
8051         * test/etags/cp-src/x.cc: New file.
8052         * test/etags/Makefile (CPSRC): Add x.cc.
8053         (check): Add one more test, for -Q.
8055 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
8057         Use list for the tags completion table, not obarray
8058         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
8059         list instead of an obarray
8060         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
8061         (tags-completion-table): Combine those lists.
8062         (tags-completion-table): Update the docstring.
8064 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
8066         Restore EOL format testing in etags
8067         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
8068         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
8069         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
8070         test-case changes below.
8071         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
8072         * test/etags/cp-src/c.C (B): Add back stray CR character.
8073         * test/etags/c-src/dostorture.c: Add back.
8074         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
8076 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
8078         Declare Emacs on MS-Windows to be DPI-aware
8079         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
8080         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
8081         This avoids Windows entering compatibility mode for Emacs,
8082         which causes fonts to look less nice.
8084 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
8086         Improve Tramp traces.
8087         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
8088         * lisp/net/tramp.el (tramp-debug-message): Use it.
8090 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
8092         backup-buffer minor reworking of internals
8093         * lisp/files.el (backup-buffer): Rework to avoid a couple of
8094         unused locals inadvertently introduced in the previous change.
8096         backup-buffer now reports .emacs.d/%backup% ills
8097         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
8098         fails due to disk space exhaustion or whatever, do not pretend
8099         that it succeeded.  More generally, do a better job of checking
8100         for I/O failures, and limit the scope of the condition-case to
8101         just the operations where file errors should be caught and ignored
8102         (Bug#20595).  Also, don't bother trying to delete later backups if
8103         an earlier deletion fails, as this is a sign of trouble and it's
8104         better to stop when there's trouble.
8106         copy-file now truncates output after writing
8107         * src/fileio.c (Fcopy_file): Truncate output after writing rather
8108         than before.  This is more likely to work than truncation before
8109         writing, if the file system is out of space or the user is over
8110         disk quota (Bug#20595).  Also, check for read errors.
8112 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
8114         * lisp/emacs-lisp/package.el: Don't load from parent dir
8115         (package-load-all-descriptors): Don't load descriptors from
8116         directories above the package directories.
8118 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
8120         Merge from gnulib
8121         This incorporates the following (Bug#20681):
8122         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
8123         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
8124         * lib/set-permissions.c: Copy from gnulib.
8126 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
8128         Improve Tramp traces.
8129         * lisp/net/tramp.el (tramp-call-process-region): New defun.
8130         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
8132 2015-05-29  Glenn Morris  <rgm@gnu.org>
8134         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
8136 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
8138         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
8139         The signature was changed in the cairo branch, merged on 2015-05-23.
8140         This oversight broke compiling only the non-toolkit X version.
8142 2015-05-29  Samer Masterson  <samer@samertm.com>
8144         * doc/lispref/os.texi: Update initial-buffer-choice docs.
8146 2015-05-29  Glenn Morris  <rgm@gnu.org>
8148         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
8149         Mark as an expected failure.
8151 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
8153         Change package test to look for curved quotes
8154         * test/automated/package-test.el (package-test-describe-package)
8155         (package-test-signed): Search for curved single quotes as well as
8156         for grave accent and apostrophe.
8158 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
8160         gnus-art.el: Re-revert last change
8161         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
8162         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
8164 2015-05-28  Samer Masterson  <samer@samertm.com>
8166         Show files when `initial-buffer-choice' is non-nil
8167         * startup.el (command-line-1): When Emacs is given a file as an
8168         argument and `initial-buffer-choice' is non-nil, display both the file
8169         and `initial-buffer-choice'.  For more than one file, show
8170         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
8171         commands out of the command line arg parser.
8172         (initial-buffer-choice): Clarify docstring.
8174 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
8176         Fix last commit
8177         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
8178         (gnulib module qcopy-acl): Add back, as it is harmless.  This
8179         minimizes differences wrt lib/gnulib.mk.
8181         Fix the MS-Windows build as followup to gnulib update
8182         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
8183         set-permissions.c, as they don't compile on MinGW.
8184         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
8186 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
8188         Revert my change to gnus-art.el
8189         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
8190         It wasn't that important, and it caused a Gnus build to fail.  See:
8191         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
8193         New minor mode Electric Quote
8194         This lets you easily insert quotes ‘like this’ by typing
8195         quotes `like this', and similarly you can easily insert
8196         quotes “like this” by typing quotes ``like this'' (Bug#20545).
8197         * doc/emacs/basic.texi (Inserting Text):
8198         * doc/emacs/modes.texi (Minor Modes):
8199         * etc/NEWS: Document it.
8200         * doc/emacs/text.texi (Quotation Marks): New section.
8201         * lisp/electric.el (electric-quote-comment)
8202         (electric-quote-string, electric-quote-paragraph):
8203         New custom vars.
8204         (electric--insertable-p)
8205         (electric-quote-post-self-insert-function): New functions.
8206         (electric-quote-mode, electric-quote-local-mode): New minor modes.
8207         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
8208         Add curved single quotes to electric-pair-text-pairs.
8209         Set electric-quote-string in this buffer.
8211         A few more doc string fixes (Bug#20385)
8213         Accept curved quotes in doc strings
8214         * lisp/info-look.el (info-lookup-guess-custom-symbol):
8215         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
8217         Generate curved quotes in pseudo-info nodes
8218         * lisp/info.el (Info-virtual-index-find-node)
8219         (Info-virtual-index, Info-apropos-find-node, info-apropos):
8220         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
8222         Fix minor quoting problems in doc strings
8223         Most of these fixes involve escaping grave accents that are
8224         actually intended to be grave accents, not left quotes.
8225         (Bug#20385)
8227         Support curved quotes in doc strings
8228         Emacs's traditional doc string style has been to quote symbols
8229         `like this'.  This worked well on now-obsolete terminals where
8230         ` and ' were symmetric quotes, but nowadays curved quotes
8231         ‘like this’ look better.  Support quoting the new way too.
8232         (Bug#20385)
8233         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
8234         ‘like-this’ as well as `like-this'.
8235         * etc/NEWS: Mention this.
8236         * lisp/cedet/mode-local.el (overload-docstring-extension)
8237         (mode-local-print-binding, mode-local-describe-bindings-2):
8238         * lisp/cus-theme.el (describe-theme-1):
8239         * lisp/descr-text.el (describe-text-properties-1, describe-char):
8240         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
8241         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
8242         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
8243         (eieio-help-constructor):
8244         * lisp/emacs-lisp/package.el (describe-package-1):
8245         * lisp/faces.el (describe-face):
8246         * lisp/help-fns.el (help-fns--key-bindings)
8247         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
8248         (help-fns--interactive-only, describe-function-1):
8249         (describe-variable):
8250         * lisp/help.el (describe-mode):
8251         * lisp/international/mule-cmds.el (describe-input-method)
8252         (describe-language-environment):
8253         * lisp/international/mule-diag.el (describe-character-set)
8254         (print-coding-system-briefly, list-input-methods)
8255         (list-input-methods-1):
8256         Insert curved quotes rather than grave accent and apostrophe.
8257         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
8258         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
8259         (checkdoc-proper-noun-region-engine):
8260         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
8261         (lisp-cl-font-lock-keywords-2):
8262         * lisp/finder.el (finder-font-lock-keywords):
8263         * lisp/gnus/gnus-art.el (gnus-button-alist):
8264         * lisp/help-fns.el (help-do-arg-highlight)
8265         (describe-function-1, describe-variable):
8266         * lisp/help-mode.el (help-xref-symbol-regexp)
8267         (help-xref-info-regexp, help-xref-url-regexp):
8268         * lisp/help.el (describe-mode):
8269         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
8270         * lisp/wid-edit.el (widget-documentation-link-regexp):
8271         Parse symbols quoted ‘like-this’ as well as `like-this'.
8272         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
8273         Add "‘" and "’" to electric-pair-text-pairs.
8274         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
8275         (elisp-completion-at-point, elisp--preceding-sexp):
8276         Also treat "‘" and "’" as quoting chars.
8278         substitute-command-keys now curves quotes
8279         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
8280         * doc/lispref/help.texi (Keys in Documentation):
8281         * etc/NEWS: Document this.
8282         * src/doc.c (Fsubstitute_command_keys): Implement it.
8284 2015-05-28  Glenn Morris  <rgm@gnu.org>
8286         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
8287         (rmail-summary-by-topic, rmail-summary-by-senders):
8288         No longer strip leading/trailing whitespace.
8290         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
8291         (f90-no-block-limit): Add "enum".  (Bug#20680)
8292         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
8293         New tests.
8295 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
8297         * lisp/isearch.el (isearch--current-buffer): Give a default value.
8299         Un-revert changes mistakenly dropped by f9fabb2b
8301 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
8303         Merge from gnulib
8304         This incorporates:
8305         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
8306         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
8307         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
8308         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
8309         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
8310         2015-05-26 stdio: fix probe on mingw under gcc 5.1
8311         * admin/merge-gnulib (GNULIB_MODULES):
8312         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
8313         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
8314         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
8315         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
8316         Get latest versions from gnulib.
8317         * lib/get-permissions.c, lib/set-permissions.c: New files.
8318         * lib/gnulib.mk, m4/gnulib-comp.m4:
8319         Regenerate.
8320         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
8322 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
8324         Delete the old process in vc-setup-buffer
8325         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
8326         process here.
8327         (vc-do-command): Rather than here (bug#20608).
8329 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
8331         Avoid gratuitous delete-dups in face-at-point.
8332         * lisp/faces.el (face-at-point): Do not compute the properly
8333         ordered, duplicate-free list if only a single value is
8334         requested anyway.  (Bug#20519)
8336         Show the exact C-x 8 RET invocation in describe-char.
8337         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
8338         invocation instead of a template.  (Bug#20522)
8340 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
8342         * lisp/emacs-lisp/package.el: Don't erase tags on refresh
8343         (package-menu--post-refresh): Call `tabulated-list-print' with the
8344         UPDATE argument.  This only affects the refresh action, the revert
8345         action still erases tags.
8346         (package-menu-get-status): Change `assq' to `assoc'.
8347         (package-menu--mark-upgrades-1): New function.
8348         (package-menu--mark-upgrades-pending): New variable.
8349         (package-menu-mark-upgrades): Use them to delay marking until
8350         after refresh is done.
8351         (package-menu--post-refresh): Call mark-upgrades-1 if
8352         mark-upgrades-pending is non-nil.
8354 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
8356         Fix typo in commit 3953c4be2816537be95520605d45b866dc731f4b
8358 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
8360         * lisp/isearch.el (isearch--current-buffer): New var
8361         (isearch-update): Set cursor-sensor-inhibit here.
8362         (isearch-done): Unset cursor-sensor-inhibit in the right buffer (bug#20532).
8364         Change inhibit-point-motion-hooks to t
8365         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
8366         to t and document it as obsolete.
8368 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
8370         Support ZIP files that use Zip64 extensions
8371         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
8372         format of central directory offsets used by Zip64 extensions.
8373         (Bug#20665)
8375 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
8377         New test tramp-test30-make-auto-save-file-name
8378         * tramp-tests.el (tramp-test30-make-auto-save-file-name): New test.
8379         (tramp-test31-special-characters)
8380         (tramp-test31-special-characters-with-stat)
8381         (tramp-test31-special-characters-with-perl)
8382         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
8383         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
8384         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
8385         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
8387         Improve tramp-handle-make-auto-save-file-name
8388         * tramp.el (tramp-auto-save-directory): Add :tags.
8389         (tramp-handle-make-auto-save-file-name): Let native
8390         `make-auto-save-file-name' use `auto-save-file-name-transforms',
8391         if `tramp-auto-save-directory' is not set.
8393 2015-05-27  Glenn Morris  <rgm@gnu.org>
8395         No longer set dired-directory in eshell.  (Bug#16477)
8396         * lisp/eshell/esh-mode.el (eshell-mode):
8397         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
8399         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
8401         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
8402         * lisp/progmodes/cc-mode.el (c-mode-help-address):
8403         Change to submit@debbugs.
8404         (c-mode-bug-package): New constant.
8405         (mail-position-on-field): Declare.
8406         (c-submit-bug-report): Insert X-Debbugs-Package header.
8407         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
8408         Mention debbugs.gnu.org.
8410 2015-05-26  Glenn Morris  <rgm@gnu.org>
8412         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
8413         (rmail-summary-by-recipients, rmail-summary-by-topic)
8414         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
8415         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
8417 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
8419         Handle curved quotes in info files
8420         * lisp/calc/calc-help.el (calc-describe-thing):
8421         * lisp/info.el (Info-find-index-name)
8422         (Info-try-follow-nearest-node, Info-fontify-node):
8423         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
8424         In info files, process quotes ‘like this’ the same way we process
8425         quotes `like this'.  This catches a few places we missed earlier.
8427 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
8429         xref-prompt-for-identifier: Use a list value
8430         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
8431         value, to be interpreted as a list of commands.
8432         (xref--prompt-p): New function.
8433         (xref--read-identifier): Use it.
8435 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
8437         Teach MS-Windows font back-end return per-glyph ascent/descent
8438         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
8439         values.
8440         * src/w32font.c (w32font_text_extents): Compute, cache, and
8441         accumulate per-glyph ascent and descent values, instead of copying
8442         global values from the font.  If the values are not available from
8443         the font data, i.e., non-TTF fonts, fall back on font-global values.
8444         (compute_metrics): Compute and return per-glyph ascent and descent
8445         values, if returned by GetGlyphOutlineW, falling back on
8446         font-global values.  (Bug#20628)
8447         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
8448         height of rectangle to be drawn, to be compatible with
8449         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
8450         box, when per-glyph ascent/descent values are used.
8452 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
8454         * lisp/emacs-lisp/tabulated-list.el: Don't sort without sorter
8455         (tabulated-list-print): Don't sort if sorter is nil
8457 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
8459         Fix Bug#20621
8460         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
8461         are major modes which set `auto-save-mode' on their own rules;
8462         Tramp shall not overwrite such settings.
8463         (Bug#20621)
8465 2015-05-26  Glenn Morris  <rgm@gnu.org>
8467         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
8468         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
8469         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
8470         Doc updates.
8471         (vc-dir-mode): Remove unnecessary autoload.
8473 2015-05-25  Philipp Stephani  <phst@google.com>
8475         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52
8476         (xterm--extra-capabilities-type): Add `getSelection'.
8477         (xterm--query): Add `no-async' argument.
8478         (xterm--init-activate-get-selection): New function.
8479         (terminal-init-xterm): Use it.
8480         (xterm--init-modify-other-keys): Rename from
8481         terminal-init-xterm-modify-other-keys.
8482         (xterm--init-bracketed-paste-mode): Rename from
8483         terminal-init-xterm-bracketed-paste-mode.
8484         (xterm--init-activate-set-selection): Rename from
8485         terminal-init-xterm-activate-set-selection.
8486         (xterm--selection-char): New function.
8487         (gui-backend-set-selection): Use it.  Use the &context to only apply
8488         this method in terminals where we enabled the feature.
8489         (gui-backend-get-selection): New method.
8491 2015-05-25  Daniel Colascione  <dancol@dancol.org>
8493         Add C-language keyword constants to C++
8494         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
8495         keyword constants to C++.
8497 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
8499         Make TAGS files more portable to MS-Windows
8500         * etc/NEWS: Document this.
8501         * lib-src/etags.c (readline_internal) [DOS_NT]:
8502         Don't treat CRs differently from GNUish hosts.
8503         * lisp/progmodes/etags.el (etags-goto-tag-location):
8504         Adjust STARTPOS to account for the skipped CRs in dos-style files.
8506 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
8508         Improve fix of debbugs:20634 in tramp-sh.el
8510 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
8512         Fix a typo in last commit
8513         * lib-src/etags.c (C_entries): Fix a typo.
8514         * test/etags/ETAGS.good_1:
8515         * test/etags/ETAGS.good_2:
8516         * test/etags/ETAGS.good_3:
8517         * test/etags/ETAGS.good_4:
8518         * test/etags/ETAGS.good_5:
8519         * test/etags/CTAGS.good: Update due to the change in etags.c.
8521         Fix tagging of class members in C-like OO languages
8522         * lib-src/etags.c (longopts): Add new option --class-qualify and
8523         its shorthand -Q.
8524         (print_help): Add help text for --class-qualify.
8525         (main): Add handling of -Q.
8526         (consider_token, C_entries) <omethodparm>: Append argument types
8527         to Objective C methods only if --class-qualify was specified.
8528         Qualify C++, Objective C, and Java class members with their class
8529         names only if --class-qualify was specified.
8530         (C_entries): If --class-qualify was not specified, remove the
8531         namespace and class qualifiers from tag names of C++ methods.
8532         This allows to use etags.el as xref back-end without the
8533         tag-symbol-match-p method, which greatly increases the number of
8534         potentially false positives.  (Bug#20629)
8535         * doc/man/etags.1: Update to document the new --class-qualify
8536         option.
8537         * test/etags/ETAGS.good_1:
8538         * test/etags/ETAGS.good_2:
8539         * test/etags/ETAGS.good_3:
8540         * test/etags/ETAGS.good_4:
8541         * test/etags/ETAGS.good_5:
8542         * test/etags/CTAGS.good: Update due to changes in etags.c.
8544 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
8546         (cl-generic-define-method): Side effects are evil (bug#20644)
8547         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
8548         cons-cells that might be used as keys in an `equal' hash-table.
8550 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8552         Make erc timestamps visible again
8553         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec): Make
8554         timestamps visible again (if requested).
8556 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
8558         Fix last change in etags.c that broke tagging compresed files
8559         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
8560         quoting of decompression shell command for MS-Windows/MS-DOS.
8562 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
8564         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist
8565         (Bug#20639)
8567 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
8569         Fix typo in 89035e247591c8d688fce922b7079881aa110f33
8571 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
8573         Fix IPv6 addresses in Tramp
8574         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
8575         Add sqare brackets around host name.
8577 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
8579         Inhibit `epa-file-handler' in Tramp
8580         (Bug#20634)
8581         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
8582         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
8583         `epa-file-handler'.
8585 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
8587         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring
8588         (pcase-let): Document the behavior in case the pattern doesn't match.
8590 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
8592         * lisp/emacs-lisp/tabulated-list.el: New optional print method
8593         (tabulated-list-print): New optional argument, UPDATE.  If
8594         non-nil, the list is printed by only adding and deleting the
8595         changed entries, instead of erasing the whole buffer.  This method
8596         is much faster when few or no entries have changed.
8597         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
8598         * etc/NEWS: Document it.
8600         * lisp/emacs-lisp/tabulated-list.el: Improve printing
8601         (tabulated-list--get-sorter): New function.
8602         (tabulated-list-print): Restore window-line when remember-pos is
8603         passed and optimize away the `nreverse'.
8605 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
8607         Simpilify etags TEX mode scanning
8608         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
8609         Remove static vars.
8610         (TeX_commands): Deduce escapes here instead.
8611         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
8612         This removes the need for a reset_input call.
8614         Improve etags I/O error reporting
8615         * lib-src/etags.c:
8616         Don't include sys/types.h and sys/stat.h; no longer needed.
8617         (infilename): New static var.
8618         (process_file_name): Don't call 'stat'.  Instead, just open the
8619         file for reading and report any errors.  Don't bother making
8620         a copy of the file argument; it's not needed.  Be more careful to
8621         use the failing errno when reporting an error.
8622         Quote the real name better (though no perfectly)
8623         when passing it to the shell.
8624         (reset_input): New function, which reports I/O errors.
8625         All uses of 'rewind' changed to use this function.
8626         (perhaps_more_input): New function, which also checks for
8627         I/O errors.  All uses of 'feof' changed to use this function.
8628         (analyze_regex): Report an error if fclose fails.
8629         (readline_internal): Report an error if getc fails.
8630         (etags_mktmp): Return an error if close fails.
8632         etags.c: avoid side effects in 'if'
8633         * lib-src/etags.c (process_file_name, Perl_functions)
8634         (TEX_decode_env): Hoist side effects into previous statement.
8636         .gitignore tweaks
8637         * .gitignore: Ignore all *.stamp files.  Sort.
8638         Ignore [0-9]*.txt (commonly used name for git patches)
8639         and /vc-dwim-log-* (vc-dwim temporary).
8641 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
8643         Fix last change in etags.c, which failed the test suite
8644         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
8645         before the last change.
8647 2015-05-23  Glenn Morris  <rgm@gnu.org>
8649         Remove charset map files from repository, generate in first bootstrap
8650         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
8651         (all): Create the stamp file.
8652         (extraclean): Delete the stamp file.
8653         * src/Makefile.in (lispintdir, charsets): New variables.
8654         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
8655         New rules.
8656         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
8657         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
8658         * etc/charsets/*.map: Remove from repository.
8660 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
8662         Cleanup etags.c to use locale-independent code
8663         Although this doesn't alter behavior (as etags doesn't use
8664         setlocale), the new version is more clearly locale-independent and
8665         the executable is a bit smaller on my platform.
8666         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
8667         Include <c-ctype.h> instead of <ctype.h>.
8668         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
8669         (begtk, midtk):
8670         Remove; no longer needed.
8671         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
8672         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
8673         c_islower, c_tolower, respectively.
8674         (notinname, begtoken, intoken, endtoken): Rewrite as functions
8675         instead of macros, and initialize the tables at compile-time
8676         rather than at run-time.
8678         Put default action first in src/Makefile
8679         * src/Makefile.in (all): Put this rule before lisp.mk.
8680         That way, plain 'make' works in the src directory again.
8682 2015-05-23  Glenn Morris  <rgm@gnu.org>
8684         * Makefile.in: Fix extraclean rule.
8685         (extraclean_dirs): New.
8686         (extraclean): Use it.
8688 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
8690         Avoid compiler warning in image.c on MS-Windows
8691         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
8692         warning in image.c.
8694 2015-05-23  Glenn Morris  <rgm@gnu.org>
8696         Fix --without-toolkit-scroll-bars builds.
8697         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
8698         Add new argument to x_clear_area1.
8699         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
8700         Update x_clear_area arguments.
8702         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
8703         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
8704         Change to included version.
8705         (LOCAL, local, totalclean): Remove.
8706         (extraclean): Delete all generated files.
8708 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
8710         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume CVS/Entries exists.
8712         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
8714         tags-completion-at-point-function: Don't trust the find-tag function
8715         * lisp/progmodes/etags.el (tags-completion-at-point-function):
8716         Don't trust the find-tag function.
8718 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
8720         Pacify --enable-gcc-warnings
8721         * src/frame.h (x_query_color): Remove redundant extern decl.
8722         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
8723         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
8724         (ftcrfont_text_extents, ftcrfont_draw):
8725         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
8726         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
8727         (x_ins_del_lines, frame_highlight, frame_unhighlight)
8728         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
8729         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
8730         (x_update_window_begin, x_connection_closed)
8731         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
8732         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
8733         (*x_gc_get_ext_data, x_extension_initialize)
8734         (x_cr_accumulate_data):
8735         Remove redundant static decl.  Many of these GCC doesn't complain
8736         about, but we might as well clean out the duplication while we're
8737         in the neighborhood.
8738         * src/xterm.c (x_fill_trapezoid_for_relief):
8739         Remove decl of nonexistent function.
8741 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
8743         Replace gui-method macros with cl-generic with &context
8744         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
8745         (gui-method-declare, gui-call): Remove.
8746         (frame-creation-function): Use cl-defgeneric.
8747         (make-frame): Adjust callers.
8748         * lisp/menu-bar.el (menu-bar-edit-menu):
8749         Use gui-backend-selection-exists-p.
8750         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
8751         (gui-backend-get-selection): New cl-generic to replace
8752         gui-get-selection method.
8753         (gui-backend-set-selection): New cl-generic to replace
8754         gui-set-selection method.
8755         (gui-selection-owner-p): New cl-generic to replace
8756         gui-selection-owner-p method.
8757         (gui-backend-selection-exists-p): New cl-generic to replace
8758         gui-selection-exists-p method.  Adjust all callers.
8759         * lisp/server.el (server-create-window-system-frame): Don't ignore
8760         window-system spec even when unsupported.
8761         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
8762         * lisp/startup.el (handle-args-function, window-system-initialization):
8763         Use cl-defgeneric.
8764         (command-line): Adjust calls accordingly.
8765         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
8766         a window-system-initialization method.
8767         (handle-args-function, frame-creation-function): Use cl-defmethod.
8768         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
8769         (gui-get-selection): Use cl-defmethod on the new functions instead.
8770         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
8771         a gui-backend-get-selection method.
8772         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
8773         Use cl-defmethod on the new functions instead.
8774         (msdos-window-system-initialization): Turn into
8775         a window-system-initialization method.
8776         (frame-creation-function, handle-args-function): Use cl-defmethod.
8777         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
8778         a window-system-initialization method.
8779         (handle-args-function, frame-creation-function): Use cl-defmethod.
8780         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
8781         (gui-get-selection): Use cl-defmethod on the new functions instead.
8782         * lisp/term/x-win.el (x-window-system-initialization): Turn into
8783         a window-system-initialization method.
8784         (handle-args-function, frame-creation-function): Use cl-defmethod.
8785         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
8786         (gui-get-selection): Use cl-defmethod on the new functions instead.
8787         * lisp/term/xterm.el (xterm--set-selection): Turn into
8788         a gui-backend-set-selection method.
8789         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
8790         (Fns_selection_owner_p): Remove unused arg `terminal'.
8791         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
8793 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
8795         Revert "Fix etags Bug#20629 that broke C++ support."
8796         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
8798 2015-05-23  Jan D  <jan.h.d@swipnet.se>
8800         Fix etags Bug#20629 that broke C++ support.
8801         * etags.el (etags-xref-find-definitions-tag-order): Revert commit
8802         from Sun May 10 (Bug#20629).
8804         Merge branch 'cairo'.
8805         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
8806         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
8808         Merge branch 'master' into cairo
8810         Fixes to compile cairo branch without cairo.
8811         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
8812         first argument.
8813         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
8814         USE_CAIRO.
8816 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
8818         * lisp/emacs-lisp/package.el: Always update selected-packages
8819         (package--update-selected-packages): New function.
8820         (package-menu-execute): Use it before starting the transaction,
8821         this way the list of selected packages is updated even when the
8822         transaction fails.
8823         (package-menu--perform-transaction): Don't edit selected-packages.
8825 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
8827         Fix etags reading of compressed files
8828         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
8829         Include fcntl.h, for O_CLOEXEC.
8830         (process_file_name): Don't use 'popen', whose streams cannot be
8831         rewound.  Instead, uncompress the file to a temporary file,
8832         created by 'etags_mktmp', and read from that as usual.
8833         (etags_mktmp): New function.
8834         * test/etags/ETAGS.good_1:
8835         * test/etags/ETAGS.good_2:
8836         * test/etags/ETAGS.good_3:
8837         * test/etags/ETAGS.good_4:
8838         * test/etags/ETAGS.good_5: Update to be consistent with latest
8839         changes in etags.c regarding reading compressed files.
8841         Improve documentation of 'set-fontset-font'
8842         * doc/lispref/display.texi (Fontsets): Document the value of nil
8843         for the 3rd argument of 'set-fontset-font'.
8845         Fix documentation of forward-line
8846         * src/cmds.c (Fforward_line): Clarify the return value if the line
8847         at end of accessible portion of the buffer has no newline.
8848         * doc/lispref/positions.texi (Text Lines): Document what happens
8849         if the line at end of accessible portion of buffer has no newline.
8850         (Bug#20587)
8852 2015-05-22  Glenn Morris  <rgm@gnu.org>
8854         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
8856         * admin/charsets/mapconv (LC_ALL): Set to C.
8858         * Makefile.in: Add admin/charsets into top-level clean rules.
8859         (clean): Add admin/charsets.
8860         (maybeclean_dirs): New variable.
8861         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
8863         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
8865 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
8867         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc
8869 2015-05-22  Glenn Morris  <rgm@gnu.org>
8871         Generate admin/charsets Makefile via configure, and make more portable.
8872         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
8873         (admin/charsets/Makefile): Generate it.
8874         * admin/charsets/Makefile.in: Rename from Makefile.
8875         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
8876         New variables, set by configure.
8877         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
8878         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
8879         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
8880         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
8881         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
8882         (all): Declare PHONY.
8883         (local): New PHONY target.
8884         (map_template): New template.  Use to define short PHONY aliases.
8885         (*.map): Add directory prefixes to targets and prerequisites.
8886         Respect make verbosity.
8887         (JISC6226.map): Replace non-portable sed append without newline.
8888         (install): Remove rule.
8889         (clean): Only delete temporary sedscript.
8890         (bootstrap-clean, distclean, maintainer-clean, extraclean)
8891         (totalclean): New PHONY rules.
8892         * admin/charsets/mapconv (BASE): Replace basename with expr.
8893         (FILE): Add "mapfiles" subdirectory.
8894         (AWK): New variable.  Use throughout in place of "awk".
8895         (main): Use "gunzip -c" in place of "zcat".
8896         Don't leave whitespace before "p", for older sed.
8897         * admin/charsets/mapfiles/PTCP154: Add final newline,
8898         to make older sed versions happy.
8900 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
8902         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
8903         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
8904         (auto-revert-notify-watch-descriptor): Use defvar-local.
8905         (find-file-hook, auto-revert-tail-mode, )
8906         (auto-revert-notify-add-watch): Use setq-local.
8907         (auto-revert-notify-add-watch): Don't call make-local-variable on
8908         kill-buffer-hook (bug#20601).
8910 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
8912         Change defgeneric so it doesn't completely redefine the function
8913         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
8914         previously defined methods.
8915         (cl-generic-define-method): Let-bind purify-flag instead of using `fset'.
8916         (cl--generic-prefill-dispatchers): Only define during compilation.
8917         (cl-method-qualifiers): Remove redundant alias.
8918         (help-fns-short-filename): Silence byte-compiler.
8919         * test/automated/cl-generic-tests.el: Adjust to new defgeneric semantics.
8921 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
8923         (package-menu-execute): Remove reference to remove-dups
8925 2015-05-21  kwhite  <kwhite@gnu.org>
8927         * lisp/erc/erc.el: Hide network/channel messages
8928         (erc-network-hide-list, etc-channel-hide-list): New lists to define
8929         message types per network/channel.
8930         (erc-add-targets): New function to parse list of targets
8931         (erc-hide-current-message-p): Modified to check for new targets
8933 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
8935         Don't quote nil and t in doc strings
8936         This is as per "Tips for Documentation Strings" in the elisp manual.
8937         For consistency, do the same in diagnostics and comments.
8939 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
8941         Fix a minor problem with mouse-face on mode line
8942         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
8943         mouse face also if the mouse pointer hovers above mode-line glyphs
8944         that don't come from any Lisp string.  (Bug#20620)
8946 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
8948         * lisp/emacs-lisp/package.el: Fix selected-package logic
8949         (package-menu-execute): Mark as selected all non-upgrade packages
8950         being installed.
8951         (package-menu--perform-transaction): Don't mark anything.
8953         * lisp/emacs-lisp/package.el: Mode-line progress report
8954         (package-menu--transaction-status): New variable.
8955         (package-menu-mode, package-menu--perform-transaction): Use it.
8957         * lisp/emacs-lisp/package.el: Better transaction messages
8958         (package-menu--partition-transaction): New function.
8959         (package-menu--prompt-transaction-p, package-menu-execute): Use
8960         it.
8961         (package-menu--perform-transaction): Don't do any messaging.
8963         * lisp/emacs-lisp/package.el: Revert async package transactions
8964         (package-menu-async): Update doc.
8965         (package-install-from-archive, package-download-transaction)
8966         (package-install, package-menu--perform-transaction)
8967         (package-menu-execute): Remove asynchronous functionality.
8969 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
8971         Revert doc string changes to f90.el
8972         Problem reported by Glenn Morris in:
8973         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
8974         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
8975         Revert recent changes to doc strings, as it's intended that they
8976         use grave accent, not quote.
8978 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
8980         Improve parameter name
8982         Add new inline function `hash-table-empty-p'
8984 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
8986         Don't require help-fns when not needed
8987         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
8988         * lisp/emacs-lisp/elint.el:
8989         Don't require help-fns at the top level.
8990         * lisp/emacs-lisp/advice.el (ad-arglist):
8991         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
8992         Don't require help-fns.  (Bug#17001)
8994 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
8996         Fix slash collapsing in etags on MS-Windows
8997         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
8998         MS-Windows code from the Posix code, and support collapsing both
8999         forward- and back-slashes on MS-Windows.  Fixes a regression found
9000         by the test suite.
9002         Improve documentation of glyphless-char-display
9003         * doc/lispref/display.texi (Glyphless Chars): Improve
9004         documentation of glyphless character display.
9006         Fix "acronym" display of glyphless characters on w32
9007         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
9008         ignore "acronym" substitutes of 1 character for glyphless characters.
9010 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
9012         Add an automated test for let-when-compile
9013         * test/automated/subr-tests.el (let-when-compile): New test.
9015         Add let-when-compile macro instead of using pcase-let
9016         * lisp/subr.el (let-when-compile): New let-like macro that makes its
9017         bindings known to macros like `eval-when-compile' in the body.
9018         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to a
9019           `let-when-compile'. Also comment out the unused lexical var
9020           `el-kws-re'.
9021         The change greatly improves readability, while providing almost the
9022         same (even shorter) byte code: instead of pre-evaluating 10 variables,
9023         tossing them into a list, and destructuring that list a full screen
9024         page later, the variables are simply bound as they are evaluated,
9025         wrapped individually in `eval-when-compile'.
9027 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
9029         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer
9030         (package-delete-button-action): New function.
9031         (describe-package-1): Add Delete button.
9033         * lisp/emacs-lisp/package.el: Better dependency description
9034         (package--used-elsewhere-p): New optional arg, ALL, and return
9035         package-desc objects instead of names.
9036         (package-delete): Update accordingly.
9037         (describe-package-1): Describe which packages require the package.
9039 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
9041         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
9042         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
9043         Fix doc-string (Bug#20533).
9045         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
9046         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
9047         (switch-to-buffer): If the selected window is strongly dedicated
9048         to its buffer, signal error before prompting for buffer name.  Handle
9049         `switch-to-buffer-in-dedicated-window'.  (Bug#20472)
9050         * doc/lispref/windows.texi (Switching Buffers): Document
9051         `switch-to-buffer-in-dedicated-window'.
9053 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
9055         Prefer "this" to “this” in doc strings
9056         This mostly just straightens quotes introduced in my previous patch.
9057         Suggested by Dmitry Gutov in:
9058         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
9059         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
9060         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
9061         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
9062         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
9063         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
9064         Prefer straight double quotes to curved double quotes in doc strings.
9066         Fix minor quoting problems in doc strings
9067         These were glitches regardless of how or whether we tackle the
9068         problem of grave accent in doc strings.
9069         * lisp/calc/calc-aent.el (math-restore-placeholders):
9070         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
9071         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
9072         * lisp/leim/quail/hebrew.el ("hebrew-new")
9073         ("hebrew-biblical-sil"):
9074         * lisp/leim/quail/thai.el ("thai-kesmanee"):
9075         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
9076         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
9077         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
9078         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
9079         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
9080         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
9081         (semantic-tag-components):
9082         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
9083         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
9084         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
9085         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
9086         * lisp/emacs-lisp/generator.el (iter-next):
9087         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
9088         (gnus-article-mode-syntax-table):
9089         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
9090         * lisp/net/soap-client.el (soap-wsdl-get):
9091         * lisp/net/telnet.el (telnet-mode):
9092         * lisp/org/org-compat.el (org-number-sequence):
9093         * lisp/org/org.el (org-remove-highlights-with-change)
9094         (org-structure-template-alist):
9095         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
9096         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
9097         (handwrite-12pt, handwrite-13pt):
9098         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
9099         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
9100         * lisp/progmodes/verilog-mode.el (verilog-tool)
9101         (verilog-string-replace-matches, verilog-preprocess)
9102         (verilog-auto-insert-lisp, verilog-auto-insert-last):
9103         * lisp/textmodes/makeinfo.el (makeinfo-options):
9104         * src/font.c (Ffont_spec):
9105         Fix minor quoting problems in doc strings, e.g., missing quote,
9106         ``x'' where `x' was meant, etc.
9107         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
9108         Fix minor quoting problem in other string.
9109         * lisp/leim/quail/ethiopic.el ("ethiopic"):
9110         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
9111         Omit unnecessary quotes.
9112         * lisp/faces.el (set-face-attribute, set-face-underline)
9113         (set-face-inverse-video, x-create-frame-with-faces):
9114         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
9115         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
9116         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
9117         * lisp/net/tramp.el (tramp-methods):
9118         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
9119         * lisp/textmodes/artist.el (artist-ellipse-right-char)
9120         (artist-ellipse-left-char, artist-vaporize-fuzziness)
9121         (artist-spray-chars, artist-mode, artist-replace-string)
9122         (artist-put-pixel, artist-text-see-thru):
9123         * lisp/vc/ediff-util.el (ediff-submit-report):
9124         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
9125         Use double-quotes rather than TeX markup in doc strings.
9126         * lisp/skeleton.el (skeleton-pair-insert-maybe):
9127         Reword to avoid the need for grave accent and apostrophe.
9128         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
9129         Don't use grave and acute accents to quote.
9131 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
9133         * emacs-lisp/generator.el (cps--gensym, cps--transform-1): Silence compiler
9135 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
9137         Try to port new etags tests to MS-Windows
9138         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
9139         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
9140         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
9141         Adjust to test-case changes below.
9142         * test/etags/Makefile (CSRC): Remove dostorture.c.
9143         Whatever it was trying to test, wasn't working portably.
9144         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
9145         just a line-ending problem.
9146         * test/etags/c-src/dostorture.c: Remove.
9147         * test/etags/cp-src/c.C: Remove stray CR.
9148         * test/etags/html-src/algrthms.html: Remove trailing CRs.
9149         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
9150         but if someone edits it later it should stay UTF-8-compatible.
9152 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
9154         Fix display of overlapping window-specific overlays
9155         * src/keyboard.c (adjust_point_for_property): When adjusting point
9156         due to display strings, ignore overlays that are specific to
9157         windows other than the currently selected one.
9158         * src/xdisp.c (handle_single_display_spec): If the display
9159         property comes from an overlay, arrange for buffer iteration to
9160         resume only after the end of that overlay.  (Bug#20607)
9162 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
9164         New command icomplete-force-complete-and-exit
9165         * lisp/icomplete.el (icomplete-force-complete-and-exit):
9166         New command
9167         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
9168         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
9169         (icomplete-minibuffer-map): Bind C-j to it.
9170         (icomplete-forward-completions, icomplete-backward-completions):
9171         Mention the new command in the docstring.
9172         * lisp/minibuffer.el (minibuffer-force-complete-and-exit): Revert
9173         the previous fix for bug#17545.
9175 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
9177         Fix last commit
9179         In Elisp manual explain how to override window manager positioning (Bug#20552)
9180         * doc/lispref/frames.texi (Position Parameters): Give example of
9181         how to override a window manager positioning decision.
9183         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
9184         * src/frame.c (Fdelete_frame): In doc-string mention that frame
9185         can't be deleted if it has a surrogate minibuffer.
9186         * doc/lispref/frames.texi (Minibuffers and Frames)
9187         (Deleting Frames): Explain "surrogate minibuffer frames".
9189         In w32heap.c bump DUMPED_HEAP_SIZE to 19/12 MB
9190         * emacs-git/quick/src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
9192 2015-05-18  Glenn Morris  <rgm@gnu.org>
9194         Add option to ignore commit lines matching a pattern in ChangeLog.
9195         * build-aux/gitlog-to-changelog: Add --ignore-line option.
9196         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
9198 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
9200         Don't skip new etags tests on non-UTF-8 hosts
9201         Problem reported by Eli Zaretskii for MS-Windows.
9202         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
9203         (LC_ALL): Set to C if the current locale isn't UTF-8.
9204         (.PHONY): Remove ediff_1 thru ediff_5.
9205         (check): Always run.
9207 2015-05-18  Glenn Morris  <rgm@gnu.org>
9209         * lisp/calculator.el (calculator-funcall):
9210         * lisp/textmodes/artist.el (artist-spray-random-points):
9211         Use standard degree/radian conversion utilities.
9213         Further lisp-complete-symbol related cleanup.
9214         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
9215         Unadvertise non-functional argument.  Replace obsolete alias.
9217 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
9219         Add a test case for Maven warning ouput
9220         * test/automated/compile-tests.el
9221         (compile-tests--test-regexps-data): Add a case for Maven warning
9222         ouput.
9223         (compile--test-error-line): Check the compilation message type, if
9224         it's specified in the test data.
9226 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
9228         Update Maven compilation-mode entry to distinguish warnings
9229         * lisp/progmodes/compile.el
9230         (compilation-error-regexp-alist-alist): Update Maven entry to
9231         distinguish warnings (bug#20556).
9233 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
9235         * test/automated/sgml-mode-tests.el: New file.
9237 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
9239         Improve handling of the first Git revision
9240         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
9241         there's no next entry, delete until the end of the buffer.
9242         (log-view-end-of-defun-1): Stop at eob.
9243         * lisp/vc/vc-annotate.el
9244         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
9245         when previous-revision is nil.
9246         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
9247         with `--' to avoid ambiguity.
9248         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
9249         returned revision string.
9250         (vc-git-annotate-time): Expect `^' before the first revision.
9251         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
9252         REV1 is nil, and REV2 is not.
9253         * lisp/vc/vc.el: Update the description of the `diff' function.
9255 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
9257         Allow checkdoc to be called in batch
9258         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
9259           is non-nil, echo the error with `warn'.
9260         How it can be used in -batch:
9261         (with-current-buffer (find-file "checkdoc.el")
9262           (checkdoc-current-buffer t))
9264 2015-05-18  Glenn Morris  <rgm@gnu.org>
9266         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
9268 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
9270         * admin/notes/unicode: New section "binary files".
9272         Change new etags test to use UTF-8 encoding
9273         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
9274         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
9275         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
9276         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
9277         * test/etags/html-src/softwarelibero.html:
9278         Switch to UTF-8 encoding.
9279         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
9280         Remove Makefile, as it's too incestuous to have the test input
9281         include the build procedure.
9282         (UTF8_LOCALE, UTF_ENCODING): New macros.
9283         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
9284         (check): Skip if not UTF-8.
9285         (.PHONY): New rule.
9286         (FRC): Remove, as superseded by .PHONY.  All uses removed.
9287         (regexfile): Prefer printf to echo when outputting oddball chars.
9288         (.PRECIOUS): Remove, as these files are not built.
9290         Rename 'foo-gzipped' to 'foo.gz'
9291         * test/automated/data/decompress/foo.gz:
9292         Rename from test/automated/data/decompress/foo-gzipped,
9293         to make it easier for other tools to tell that it's compressed.
9294         * test/automated/zlib-tests.el (zlib--decompress):
9295         Adjust to renamed file.
9297 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
9299         Set up default-directory
9300         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
9301         binding for `v'.
9302         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
9303         appropriate value for default-directory.
9305 2015-05-17  Samer Masterson  <samer@samertm.com>
9307         * lisp/eshell/em-term.el (eshell-term-sentinel):
9308         No-op by default, only kills term buffer if
9309         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
9310         (eshell-destroy-buffer-when-process-dies): New custom to preserve
9311         previous behavior.
9313         eshell: Introduce new buffer syntax
9314         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
9315         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
9316         needed (Bug#19319).
9317         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
9318         (eshell-get-target): Remove shorthand-specific code.
9319         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
9320         '#<buffer-name>'.
9322 2015-05-17  Jan D  <jan.h.d@swipnet.se>
9324         Merge branch 'master' into cairo
9326 2015-04-26  Jan D  <jan.h.d@swipnet.se>
9328         Merge branch 'master' into cairo
9330         Add PBM support for cairo.
9331         * src/image.c (xcolor_to_argb32): New function.
9332         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
9333         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
9334         XImagePtr if ! USE_CAIRO.
9335         (pbm_load): Add cairo support.
9337 2015-04-12  Jan D  <jan.h.d@swipnet.se>
9339         x_free_cr_resources: Renamed from x_prepare_for_xlibdraw.
9340         * src/xterm.c (x_free_cr_resources): Renamed from x_prepare_for_xlibdraw.
9341         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
9342         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
9343         x_free_cr_resources.
9345         Handle specified bg in images.  Use generic libpng code for PNG:s.
9346         * src/image.c (get_spec_bg_or_alpha_as_argb)
9347         (create_cairo_image_surface): New functions when USE_CAIRO.
9348         (xpm_load): Call the above functions.  Handle XPM without mask
9349         when USE_CAIRO.
9350         (png_load_body): Handle USE_CAIRO case.
9351         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
9352         instead.
9353         (jpeg_load_body): Call create_cairo_image_surface.
9354         (gif_load, svg_load_image): Handle specified background, call
9355         create_cairo_image_surface.
9356         * src/xterm.c (x_draw_image_glyph_string): Added missing USE_CAIRO.
9358 2015-04-11  Jan D  <jan.h.d@swipnet.se>
9360         Support GIF and Tiff with cairo.
9361         * configure.ac: Allow jpeg with cairo.
9362         Allow tiff and gif with cairo.
9363         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
9364         (tiff_load): Create cairo image surface if USE_CAIRO.
9365         (gif_load): Ditto.
9367         Support JPEG with USE_CAIRO.
9368         * configure.ac: Allow jpeg with cairo.
9369         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
9371 2015-04-05  Jan D  <jan.h.d@swipnet.se>
9373         Support RSVG and cairo.
9374         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
9375         * src/dispextern.h (struct image): add cr_data2 if cairo.
9376         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
9377         (x_clear_image): Free cr_data and cr_data2 if set.
9378         (xpm_load): Assign data to cr_data2.
9379         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
9381 2015-04-03  Jan D  <jan.h.d@swipnet.se>
9383         Introduce limited Xpm support (32 bit ZPixmap) for Cairo.
9384         * configure.ac (HAVE_RSVG): Move after cairo.
9385         (USE_CAIRO): Disable rsvg, don't disable Xpm.
9386         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
9387         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
9388         don't return early.
9389         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
9390         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
9391         and create a surface.
9393         Tool tips for menus did not show any text.
9394         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
9395         tip frames, the geometry may be wrong.
9397         Merge branch 'master' into cairo, fixes tooltips not shown.
9399         Merge branch 'master' into cairo
9401         Add CAIRO_CFLAGS to lwlib/Makefile.in
9402         * Makefile.in (CAIRO_CFLAGS): Add.
9404 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9406         * ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
9408 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9410         Draw outermost line using black relief and erase corners also for cairo.
9411         * xterm.c [USE_CAIRO]: Include math.h.
9412         (enum corners) [USE_CAIRO]: New enum.
9413         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
9414         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
9415         than 1, draw the outermost line using the black relief.
9417         * xterm.c (x_fill_trapezoid_for_relief): Remove unnecessary cairo_close_path.
9419 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9421         * xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
9423         * xterm.c (x_draw_stretch_glyph_string): Call x_reset_clip_rectangles instead of XSetClipMask.
9425         Use int instead of unsigned int for width and height args.
9426         * xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
9427         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
9428         width and height args.
9430         Modernize k&r cairo-related function declarations.
9431         * gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
9432         (xg_print_frames_dialog): Modernize k&r declarations.
9433         * xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
9434         (Fx_print_frames_dialog): Modernize k&r declarations.
9435         * xterm.c (x_gc_get_ext_data, x_extension_initialize, x_begin_cr_clip)
9436         (x_end_cr_clip, x_set_cr_source_with_gc_foreground)
9437         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
9438         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
9439         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
9440         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
9441         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
9442         (x_clear_area): Modernize k&r declarations.
9444         Implement wave-style variant of underlining for cairo.
9445         * xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
9446         (x_draw_underwave) [USE_CAIRO]: Use it.
9448         * xterm.c (x_draw_window_divider): Use x_fill_rectangle instead of XFillRectangle.
9450 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9452         Fix fringe bitmap initialization for cairo.
9453         * fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap data for
9454         cairo image surface.
9455         * xterm.c (x_cr_define_fringe_bitmap): Call cairo_surface_mark_dirty.
9457 2015-02-11  Jan D  <jan.h.d@swipnet.se>
9459         Add cairo drawing.
9460         * configure.ac (with-cairo): New option.
9461         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
9462         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
9463         Output "Does Emacs use cairo?".
9464         * lisp/version.el (emacs-version): Add cairo version.
9465         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
9466         (FONT_OBJ): Add comment about ftcrfont.
9467         (ALL_CFLAGS): Add CAIRO_CFLAGS.
9468         (LIBES): Add CAIRO_LIBS.
9469         * src/dispextern.h (struct image): Add cr_data for cairo.
9470         (x_cr_init_fringe): Declare.
9471         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
9472         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
9473         * src/fringe.c (x_cr_init_fringe): New function name that shares code
9474         with w32_init_fringe.
9475         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
9476         * src/ftfont.c (ftfont_info_size); New global variable.
9477         (ftfont_open2): New extern function almost the same as old ftfont_open,
9478         but takes the font_object as argument.
9479         (ftfont_open): Build font object and call ftfont_open2.
9480         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
9481         * src/gtkutil.c (xg_clear_under_internal_border)
9482         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos): Only
9483         queue_draw if not cairo.  Change args to x_clear_area.
9484         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
9485         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
9486         (xg_print_frames_dialog): New functions for printing.
9487         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
9488         (xg_print_frames_dialog): Declare.
9489         * src/image.c: Add defined (USE_CAIRO) for PNG.
9490         Add !defined USE_CAIRO for W32 PNG code.
9491         (x_clear_image): If cairo, destroy the surface in cr_data.
9492         (png_load): Add new cairo compatible implementation.
9493         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
9494         * src/xfns.c: New section Printing.
9495         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
9496         (x-print-frames-dialog): New printing functions.
9497         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if
9498         cairo.
9499         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
9500         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
9501         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
9502         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
9503         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
9504         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
9505         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
9506         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
9507         Declare.
9508         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
9509         (max_fringe_bmp, fringe_bmp): New variables.
9510         (x_gc_get_ext_data, x_extension_initialize)
9511         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
9512         (x_set_cr_source_with_gc_foreground)
9513         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
9514         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
9515         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
9516         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
9517         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
9518         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
9519         (x_update_begin): Create cairo surface if needed.
9520         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
9521         (x_update_end): Paint cairo drawing surface to xlib surface.
9522         (x_clear_under_internal_border, x_after_update_window_line): Adjust
9523         arguments to x_clear_area.
9524         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
9525         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
9526         of XSetClipMask.
9527         (x_set_glyph_string_clipping)
9528         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
9529         instead of XSetClipRectangles.
9530         (x_clear_glyph_string_rect, x_draw_glyph_string_background): Use
9531         x_fill_rectangle instead of XFillRectangle.
9532         (x_draw_glyph_string_foreground)
9533         (x_draw_composite_glyph_string_foreground)
9534         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle instead
9535         of XDrawRectangle.
9536         (x_draw_relief_rect): Add code for USE_CAIRO.
9537         Call x_reset_clip_rectangles instead of XSetClipMask.
9538         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
9539         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
9540         instead of XSetClipMask.
9541         (x_draw_image_foreground, x_draw_image_foreground_1):
9542         x_draw_rectangle instead of XDrawRectangle.
9543         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
9544         XFillRectangle.
9545         (x_draw_image_glyph_string): If img has cr_data, use it as
9546         a cairo surface.
9547         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
9548         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
9549         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
9550         x_reset_clip_rectangles instead of XSetClipMask.
9551         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
9552         (x_clear_area1): New function that calls XClearArea.
9553         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
9554         non-cairo.
9555         (x_clear_frame): x_clear_window instead of XClearWindow.
9556         (x_scroll_run): Set frame garbaged if cairo.
9557         (XTmouse_position): Initialize *part to 0.
9558         (x_scroll_bar_create): Adjust arguments to x_clear_area.
9559         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
9560         x_fill_rectangle instead of XFillRectangle.
9561         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
9562         arguments to x_clear_area.
9563         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
9564         (handle_one_xevent): Adjust arguments to x_clear_area.
9565         Destroy cairo surface for frame if ConfigureNotify.
9566         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
9567         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
9568         x_reset_clip_rectangles instead of XSetClipMask.
9569         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
9570         x_reset_clip_rectangles instead of XSetClipMask.
9571         (x_clear_frame_area): Adjust arguments to x_clear_area.
9572         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
9573         (x_term_init): Call x_extension_initialize if cairo.
9574         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
9575         x_cr_destroy_fringe_bitmap for cairo.
9576         (x_initialize): Call x_cr_init_fringe for cairo.
9577         * src/xterm.h: Add include of cairo header files.
9578         (x_bitmap_record): Add img if cairo.
9579         (x_gc_ext_data): New struct for cairo.
9580         (x_display_info): Add ext_codes for cairo.
9581         (x_output): Add cr_context and cr_surface for cairo.
9582         (x_clear_area): Change arguments from Display*/Window to frame pointer.
9583         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
9584         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
9585         (x_cr_draw_frame, x_cr_export_frames): Declare.
9587 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
9589         Fix integer-valued `mouse-highlight' (Bug#20590)
9590         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
9592 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
9594         MS-Windows followup for ASCIIfication of curved quotes
9595         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
9596         test for curved quotes being displayable, after switching the
9597         terminal encoding.  (Bug#20545)
9599 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
9601         Spelling fixes
9603 2015-05-17  Jan D  <jan.h.d@swipnet.se>
9605         Add comment that x_shift_glyphs_for_insert is never called.
9606         * xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface): Add
9607         comment that this function is never called.
9609 2015-05-16  Glenn Morris  <rgm@gnu.org>
9611         * src/lisp.mk: Remove from repository and generate at build-time.
9612         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
9613         (shortlisp_filter): New variable.
9614         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
9615         (distclean): Remove lisp.mk.
9616         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
9617         * lisp/loadup.el: Tweak layout to make it easier to parse.
9618         * make-dist: Do not distribute src/lisp.mk.
9620 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
9622         Display shorter dates in Git annotate output
9623         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
9624         format (when not overridden with vc-git-annotate-switches).
9625         (vc-git-annotate-time): Support the short format, as well as ISO
9626         8601 that has been used until now (bug#5428).
9628 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
9630         ASCIIfy curved quotes on displays lacking them
9631         * lisp/international/mule-cmds.el (set-locale-environment):
9632         If curved quotes don't work, display straight ASCII approximations
9633         (Bug#20545).
9635 2015-05-16  Glenn Morris  <rgm@gnu.org>
9637         Small src/Makefile simplification.
9638         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
9639         * src/Makefile.in (lisp): Derive from shortlisp.
9640         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
9642 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
9644         * lisp/help-mode.el (help-go-forward): Doc fix.
9645         (Bug#20577)
9647         * doc/lispref/debugging.texi (Profiling): Improve indexing.
9648         (Bug#20576)
9650 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
9652         Use `unless' to have one fewer `not'
9653         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
9654         have one fewer `not'.
9656         Remove redundant :group declarations from vc-git.el
9657         * lisp/vc/vc-git.el (vc-git-diff-switches)
9658         (vc-git-annotate-switches, vc-git-resolve-conflicts)
9659         (vc-git-program, vc-git-root-log-format): Remove the redundant
9660         :group declarations.
9662 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
9664         Removes the predicate from lisp-complete-symbol (Bug#20456)
9665         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
9666         and remove it from the docstring.
9668 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
9670         Add new option vc-git-resolve-conflicts
9671         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
9672         (vc-git-find-file-hook): Add to after-save-hook only when the
9673         above is non-nil.
9674         (vc-git-resolve-when-done): Update to honor the new variable.
9675         (Bug#20292)
9677 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
9679         * lisp/emacs-lisp/tabulated-list.el: Don't error on nil header-string
9680         (tabulated-list-init-header): Document new behavior.
9681         (tabulated-list-print-fake-header): No nothing if
9682         `tabulated-list--header-string' is nil.
9683         (tabulated-list--header-string): Add a docstring.
9684         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
9685         * etc/NEWS: Document it.
9687 2015-05-15  Leo Liu  <sdl.web@gmail.com>
9689         Revert "Fix cps--gensym"
9690         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
9691           fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
9693 2015-05-15  Glenn Morris  <rgm@gnu.org>
9695         Replace AC_SUBST_FILE in configure with include in Makefiles.
9696         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
9697         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
9698         (AUTO_DEPEND): New output variable.
9699         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
9700         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
9701         (lwlib_deps_frag): Replace by conditional include.
9702         * lwlib/autodeps.mk: Remove file.
9703         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
9704         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
9705         (oldxmenu_deps_frag): Replace by conditional include.
9706         * oldXMenu/autodeps.mk: Remove file.
9707         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
9708         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
9709         (lisp_frag): Replace by an include.
9710         (deps_frag): Replace by conditional include.
9711         * src/autodeps.mk: Remove file.
9713         Tweak japanese.el's loading of dependencies.
9714         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
9715         * lisp/language/japanese.el: Use require rather than load.
9716         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
9717         Provide a feature.
9718         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
9719         Provide a feature in the generated file.
9721 2015-05-15  Jan D  <jan.h.d@swipnet.se>
9723         Fix NS warnings.
9724         * nsmenu.m (ns_popup_dialog)
9725         * nsimage.m (initFromXBM:width:height:fg:bg:)
9726         * nsfns.m (Fx_create_frame): Remove unused variables.
9727         (Fns_read_file_name): Initialize fname, remove ret.
9728         * nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
9729         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown): Remove unused
9730         variable.
9731         (init): Add parantesis in if.
9732         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
9734 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
9736         Fix a enum conversion warning in macfont.m
9737         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
9738         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
9740 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
9742         Support de-alt dictionary with Aspell.
9743         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
9744         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
9746 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
9748         cus-start.el: Add ns-confirm-quit.
9749         * cus-start.el: Add ns-confirm-quit.
9751         Fix warnings on OSX 10.10.
9752         * nsfns.m (MODAL_OK_RESPONSE): New define for different OSX versions.
9753         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
9754         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
9755         * nsmenu.m (initWithContentRect:styleMask:backing:defer:)
9756         * nsimage.m (allocInitFromFile, setPixmapData): Only call
9757         setScalesWhenResized for OSX < 10.6.
9758         * nsterm.h (EmacsScroller): Declare scrollerWidth.
9759         * nsterm.m (ns_copy_bits): New function that does not use deprecated
9760         NSCopyBits.
9761         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
9762         (runAlertPanel): New function.
9763         (applicationShouldTerminate:): Call runAlertPanel.
9764         (initFrameFromEmacs, toggleFullScreen:): Only call useOptimizedDrawing
9765         for OSX < 10.10.
9766         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
9767         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
9768         (draggingEntered:): Returns NSDragOperation.
9769         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
9771 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
9773         * lisp/emacs-lisp/package.el: Don't ensure-init during startup
9774         (package--init-file-ensured): New variable.
9775         (package-initialize, package--ensure-init-file): Use it.
9777 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
9779         Honor :fore/background for XBM on NS (Bug#14969).
9780         * nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
9781         initFromXBM takes bg, fg args, remove flip arg.
9782         (ns_image_from_XBM): Add bg, fg args.
9783         * image.c (x_create_bitmap_from_data)
9784         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
9785         * nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to initFromXBM.
9786         Remove flip arg.
9787         (initFromSkipXBM): Move code to initFromXBM.
9788         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
9789         Use fg, bg from args (Bug#14969).  Remove if (length) section, was always
9790         false.
9791         Remove bit flipping (bitPat, swt), generated incorrect images when
9792         width/height wasn't a multiple of 8.
9793         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
9794         * nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args, remove
9795         flip arg.
9797 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
9799         * lisp/emacs-lisp/package.el: Be more careful with the init file
9800         (package--ensure-init-file): Check that user-init-file is set,
9801         exists, is readable, and is writable.  (Bug#20584)
9802         Also expand the docstring.
9804 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
9806         Sync with upstream verilog-mode revision 6232468
9807         * lisp/progmodes/verilog-mode.el (verilog-font-lock-grouping-keywords-face)
9808         (verilog-highlight-grouping-keywords): Fix use of face when
9809         `verilog-highlight-grouping-keywords' set.  Reported by Jeff
9810         Pompa.
9811         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
9812         parent is reset, bug906. Reported by Ken Schmidt.
9813         (verilog-auto-inout-module): Add fourth regexp argument to
9814         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match,
9815         bug856. Reported by John Tillema.
9816         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
9817         modport if signal attachment is itself a modport.  Reported by
9818         Matthew Lovell.
9819         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
9820         always_comb and always_latch, bug844.  Reported by Greg Hilton.
9821         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
9822         with many curly-bracket pairs, bug663.
9823         (verilog-set-auto-endcomments): Fix end comments for functions of
9824         type void, etc.  Reported by Alex Reed.
9825         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
9826         caused by indent-line-to deleting tabls pre 24.5.
9827         (verilog-nameable-item-re): Fix nameable items that can have an
9828         end-identifier to include endchecker, endgroup, endprogram,
9829         endproperty, and endsequence.  Reported by Alex Reed.
9830         (verilog-label-be): When auto-commenting a buffer, consider
9831         auto-comments on all known keywords (not just a subset thereof).
9832         Reported by Alex Reed.
9833         (verilog-auto-end-comment-lines-re)
9834         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
9835         Automatically comment property/endproperty blocks to match other
9836         similar blocks like sequence/endsequence, function/endfunction,
9837         etc. Reported by Alex Reed.
9838         (verilog-set-auto-endcomments): Detect the function- or task-name
9839         when auto-commenting blocks that lack an explicit
9840         portlist. Reported by Alex Reed.
9841         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
9842         allow post-AUTO user fixups, bug826. Reported by Dennis
9843         Muhlestein.
9844         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
9845         is nil, fix indenting initial/final to match always statements,
9846         bug825. Reported by Tim Clapp.
9847         (verilog-extended-complete-re): Fix indentation of DPI-C imports
9848         with c_identifiers, and DPI-C imports, bug557. Reported by ZeDong
9849         Mao and Jason Forkey.
9850         (verilog-read-decls): Fix parsing typed interfaces.  Fix
9851         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
9852         Fix localparam not being ignored in AUTOINSTPARAM,
9853         bug889. Reported by Shannon Hill.
9854         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
9855         bug793.  Reported by Pierre-David Pfister.
9856         (verilog-auto-arg-format, verilog-auto-arg-ports): Add
9857         verilog-auto-arg-format to support newlines in AUTOARG. Reported
9858         by Jie Xiao.
9859         (verilog-batch-execute-func): Do not batch re-auto files loaded by
9860         Local Variables. Fix printing "no changes to be saved" with
9861         verilog-batch. Reported by Dan Dever.
9862         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
9863         interface-only modules, bug721.  Reported by Dean Hoyt.
9864         Author: Alex Reed <acreed4@gmail.com>
9865         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement): Don't
9866         treat '<keyword>:<identifier>' as the start of a labeled
9867         statement, bug905.  Reported by Enzo Chi.
9868         (verilog-directive-re, verilog-compiler-directives)
9869         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
9870         directives (plus some extras) when determining indentation, bug
9871         901.  Reported by Bernd Beuster.
9872         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
9873         iff expression doesn't start with word-character, bug900.
9874         (verilog-optional-signed-range-re, verilog-optional-signed-re):
9875         Fix incorrect indentation/alignment of unsigned declarations,
9876         bug897.
9877         (verilog-looking-back, verilog-in-attribute-p): Fix labling of
9878         always constructs, bug895.
9879         (verilog-calc-1): Fix verilog-mode constraint indentation,
9880         bug324. Reported by Eric Mastromarchi.
9881         (verilog-beg-of-statement): Fix indenting for some forms of
9882         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
9883         continued assignment incorrect if first line ends with ']',
9884         bug437. Reported by Dan Dever.  Fix indention of cover inside an
9885         ifdef, bug 862. Reported by Bernd Beuster Fix labeling do-while
9886         blocks, bug842.
9887         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning,
9888         bug859. Reported by Kaushal Modi.
9889         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
9890         (verilog-backward-token): Fix indenting sensitivity lists with
9891         named events, bug840.  Reed.
9892         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
9893         nil not honoring 'forever', 'foreach', and 'do' keywords.
9895 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
9897         Check for invalid GTK+ monitor scales
9898         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
9899         INT_MAX for too-large scales.  All callers changed to assume the
9900         result is valid (Bug#20432).
9901         (xg_frame_set_char_size, xg_update_scrollbar_pos):
9902         Calculate scale only if needed.
9903         show ASCII approximations instead.
9905 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
9907         Fix daemon crashes when linum-mode is turned on early on
9908         * src/window.c (Fwindow_end): Don't try calling display engine
9909         functions on initial-frame frame.  (Bug#20565)
9911         Fix selective diff browsing in Ediff
9912         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches): Go to the
9913         beginning of the region before searching for the
9914         ediff-regexp-focus-* regexps.  (Bug#20568)
9916 2015-05-14  Jan D  <jan.h.d@swipnet.se>
9918         Fixes Bug#20142.
9919         * gtkutil.c (delete_cb): Don't send delete event here, it does arrive
9920         in the main loop, even for Gtk 3 (Bug#20142).
9922         Don't access display after i/o error (Bug#19147).
9923         * xterm.c (x_connection_closed): Add third arg ioerror.
9924         If ioerror, set display to 0 (Bug#19147).
9925         (x_error_quitter): Call x_connection_closed with third arg false.
9926         (x_io_error_quitter): Call x_connection_closed with third arg true.
9928         Handle GTK_SCALE, fixes Bug#20432.
9929         * gtkutil.c (xg_get_gdk_scale): New function.
9930         (xg_frame_set_char_size)
9931         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
9932         (xg_get_default_scrollbar_height)
9933         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
9934         when setting sizes (Bug#20432).
9936 2015-05-13  Leo Liu  <sdl.web@gmail.com>
9938         Fix cps--gensym
9939         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
9941 2015-05-13  Glenn Morris  <rgm@gnu.org>
9943         Fix bootstrap (void function cl-member).
9944         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
9945         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
9947 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
9949         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
9950         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
9951         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
9952         Avoid defalias for closures which are not immutable.
9953         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill the
9954         dispatchers table with various entries.
9955         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
9956         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
9958 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
9960         Improve tagging of C bindings in DEFVAR_*
9961         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
9962         from DEFVAR_*.
9964 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
9966         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
9968 2015-05-12  Glenn Morris  <rgm@gnu.org>
9970         * lisp/progmodes/tcl.el (tcl-filter):
9971         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
9973         Add basic VC push support.
9974         * lisp/vc/vc.el (vc-push): New autoloaded command.
9975         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
9976         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
9977         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
9978         (vc-bzr-push): New.
9979         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
9980         (vc-git-pull): Reimplement using vc-git--pushpull.
9981         (vc-git-push): New.
9982         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
9983         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
9984         * doc/emacs/maintaining.texi (Pulling / Pushing):
9985         Rename from "VC Pull".  Mention pushing.
9986         (VC With A Merging VCS, VC Change Log): Update xrefs.
9987         (Branches): Update menu.
9988         * doc/emacs/emacs.texi: Update menu.
9989         * etc/NEWS: Mention this.
9991 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
9993         Improve the seq pcase pattern and the `seq-let' macro
9994         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
9995         object is a sequence, and binds each element of ARGS to the
9996         corresponding element of the sequence.
9998 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
10000         Fix tags created from DEFVAR_* declarations in C
10001         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
10002         to make tags extracted from DEFVAR_* declarations more accurate.
10004         Add a test suite for etags
10005         * test/etags/: New test suite, adapted from
10006         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
10007         whose original author is Francesco Potortì <pot@gnu.org>.
10009         Fix tagging of symbols in C enumerations
10010         * lib-src/etags.c (consider_token): Don't tag symbols in
10011         expressions that assign values to enum constants.  See
10012         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
10013         for details.
10014         (C_entries): Reset fvdef to fvnone after processing a preprocessor
10015         conditional and after a comma outside of parentheses.
10017 2015-05-12  Glenn Morris  <rgm@gnu.org>
10019         * lisp/url/url-handlers.el (url-file-name-completion)
10020         (url-file-name-all-completions): Silence compiler.
10022         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
10024         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
10026 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
10028         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
10029         (cl--generic-mandatory-args): Remove.
10030         (cl--generic-split-args): New function.
10031         (cl-generic-define, cl--generic-lambda): Use it.
10032         (cl-generic-define-method): Use it as well, and add support for
10033         context args.
10034         (cl--generic-get-dispatcher): Handle &context dispatch.
10035         (cl--generic-cache-miss): `dispatch-arg' can now be a context expression.
10036         (cl--generic-dispatchers): Pre-fill.
10037         * test/automated/cl-generic-tests.el (sm-generic-test-12-context): New test.
10039 2015-05-11  Glenn Morris  <rgm@gnu.org>
10041         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
10043 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
10045         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
10046         * lisp/term/rxvt.el: Require term/xterm.
10047         (rxvt-function-map): Use xterm-rxvt-function-map.
10048         (rxvt-standard-colors): Move before first use.
10049         (terminal-init-rxvt): Use xterm--push-map and xterm-register-default-colors.
10050         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
10051         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
10052         Move shared bindings between rxvt and xterm to it.
10053         (xterm-function-map): Use it.  Move the xterm-paste binding to
10054         xterm-rxvt-function-map (bug#20444).
10055         (xterm-standard-colors): Move before first use.
10056         (xterm--push-map): New function.
10057         (xterm-register-default-colors): Take standard colors as argument.
10058         (terminal-init-xterm): Use it.  Adjust call to
10059         xterm-register-default-colors.
10061 2015-05-11  Glenn Morris  <rgm@gnu.org>
10063         * lisp/term/x-win.el: Quieten --without-x compilation.
10064         (x-own-selection-internal, x-disown-selection-internal)
10065         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
10066         Declare.
10068         * Makefile.in (emacslog): Remove srcdir.
10069         (ChangeLog): Update for the above.
10071 2015-05-11  Paul Eggert  <eggert@cs.ucla.edu>
10073         Spelling fix
10075 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
10077         python.el: better limit for looking-back calls
10078         * lisp/progmodes/python.el (python-shell-accept-process-output):
10079         Use last comint prompt start as limit for looking-back.
10081 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
10083         CEDET (srecode-insert-fcn): Fix use of oref on a class
10084         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref on
10085         a class.  Reported by Pierre Lorenzon.
10086         (srecode-template-inserter-point): Remove declaration.
10088         CEDET (srecode-create-dictionary): Avoid obsolete object name
10089         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
10090         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
10092 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
10094         C-x 8 shorthands for curved quotes, Euro, etc.
10095         Although C-x 8 lets you insert arbitrary Unicode characters,
10096         it's awkward to use this to insert commonly used symbols such as curved
10097         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
10098         characters commonly found in English text and in basic math.
10099         For example, assuming the Alt key works on your keyboard and iso-transl
10100         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
10101         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
10102         (Bug#20499)
10103         * doc/emacs/mule.texi (Unibyte Mode):
10104         A few other printing characters now work too.
10105         * etc/NEWS: Document this.
10106         * lisp/international/iso-transl.el (iso-transl-char-map):
10107         Also support the following characters:
10108         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
10110 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
10112         Add xref-find-regexp
10113         * lisp/progmodes/xref.el (xref-find-function): Describe the
10114         `matches' action.
10115         (xref-find-regexp): New command, using it.
10116         (xref-collect-references): Rename to xref-collect-matches.
10117         (xref--collect-reference): Rename to xref--collect-match.
10118         (xref-collect-matches, xref--collect-match): Accept new argument,
10119         KIND.  Update accordingly.
10120         (xref--regexp-to-extended): New function.
10121         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
10122         `matches' action.
10123         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
10124         * lisp/progmodes/etags.el (etags-xref-find):
10125         Support the `matches' action.
10126         (etags--xref-find-matches): New function.
10128 2015-05-10  Glenn Morris  <rgm@gnu.org>
10130         * Makefile.in: Fixes for recent change-history changes.
10131         (change-history-nocommit): Update footer regexp.
10132         Ensure output script stays executable.
10134 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
10136         New version of `seq-let' based on a pcase pattern
10137         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
10138         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
10140 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
10142         Add basic HTML5 tags and a template
10143         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
10144         (html-tag-alist): Add HTML5 tags.
10145         (html-tag-help): Add new tags descriptions.
10146         (html-navigational-links): Template for nav links.
10147         (html-html5-template): Template for a HTML5 page.
10149 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
10151         semantic/symref/grep: Don't use word boundaries
10152         * lisp/cedet/semantic/symref/grep.el
10153         (semantic-symref-perform-search): Instead of wrapping input in
10154         word boundaries, check that the characters before and after are
10155         not word constituents.
10157         semantic/symref/grep: Support regexp search
10158         * lisp/cedet/semantic/symref.el
10159         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
10160         the search type is regexp.
10161         * lisp/cedet/semantic/symref/grep.el
10162         (semantic-symref-perform-search): Support the regexp search type.
10163         Pass -E to Grep when it's used.
10165         semantic-symref-regexp: Allow to input an arbitrary string
10166         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
10167         Allow to input an arbitrary string interactively.
10169         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
10170         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
10171         Remove tag-symbol-match-p from the default value
10172         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
10174         Declare find-tag obsolete
10175         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
10176         xref-find-definitions.
10178 2015-05-10  Jan D  <jan.h.d@swipnet.se>
10180         Draw composite string correctly (Bug#20537).
10181         * nsterm.m (ns_draw_composite_glyph_string_foreground): New function.
10182         (ns_draw_glyph_string): Call it (Bug#20537).
10184 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
10186         Avoid infloop in ERC
10187         * lisp/simple.el (line-move-to-column): Ignore field boundaries
10188         while computing line beginning position.  (Bug#20498)
10190 2015-05-08  Glenn Morris  <rgm@gnu.org>
10192         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
10193         * build-aux/gitlog-to-emacslog: Check called from right directory.
10194         (srcprefix): Remove.
10196         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
10197         * Makefile.in (ChangeLog): No longer pass "distprefix".
10198         * make-dist: Update "make ChangeLog" syntax for the above change.
10200         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
10201         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
10203         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
10205         Add command-line option-parsing to gitlog-to-emacslog.
10206         * build-aux/gitlog-to-emacslog: Add command-line options.
10207         By default, refuse to remove an existing output file.
10208         * Makefile.in (CHANGELOG): Update default.
10209         (ChangeLog): Do not test for existing file.
10210         (change-history-nocommit): Ensure temp file does not exist.
10212         Quieten --without-x compilation.
10213         * lisp/term/common-win.el: Provide a feature.
10214         * lisp/term/x-win.el (term/common-win): Require it.
10216         * lisp/dired-aux.el (dired-do-print): Require lpr.
10218         Quieten compilation, eg in --without-x builds.
10219         * lisp/dired-aux.el (lpr-printer-switch):
10220         * lisp/frame.el (tool-bar-height):
10221         * lisp/linum.el (font-info):
10222         * lisp/window.el (font-info, overflow-newline-into-fringe)
10223         (tool-bar-height):
10224         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
10225         * lisp/gnus/gnus-util.el (iswitchb-mode):
10226         * lisp/mail/rmailmm.el (libxml-parse-html-region):
10227         * lisp/net/nsm.el (gnutls-peer-status)
10228         (gnutls-peer-status-warning-describe):
10229         * lisp/net/shr.el (libxml-parse-xml-region):
10230         * lisp/url/url-http.el (gnutls-peer-status): Declare.
10232 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
10234         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
10235         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
10236         `subclass' since they're never called with a class.
10237         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
10238         srecode-dictionary-child-p.
10240 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
10242         help--binding-locus: Document argument POSITION.
10243         * lisp/help.el (help--binding-locus): Document argument POSITION. (bug#20530)
10245 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
10247         Merge from gnulib.
10248         * doc/misc/texinfo.tex: Get latest version.
10250 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
10252         ffap.el (ffap-read-file-or-url): Fix completing-read call
10253         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
10254           `completing-read' should be a symbol.
10256 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
10258         Verify file modifications by other programs
10259         * src/filelock.c (lock_file): Check whether the file was modified
10260         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
10262         Fix keyboard macros that include function keys
10263         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
10264         keys in the macro before returning.  (Bug#20454)
10266 2015-05-08  Glenn Morris  <rgm@gnu.org>
10268         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
10269         "Copyright-paperwork-exempt".  (Bug#20324)
10271         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
10272         (log-edit-rewrite-tiny-change): New variable.
10273         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
10274         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
10275         * etc/NEWS: Mention this.
10277         * lisp/calc/calc.el (math-zerop): Declare.
10279         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
10281 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
10283         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec
10284         Support the case when BINDINGS is a single tuple.  (Bug#20525)
10286         * etc/NEWS: Fix typo in commit 14bb519
10288 2015-05-07  Jan D  <jan.h.d@swipnet.se>
10290         Warn for multiple display crash for all Gtk+ versions.
10291         * configure.ac: Warn for multiple display crash for all Gtk+
10292         versions.  Output URL to Gtk+ bug (Bug#20452).
10294         ns-win.el (ns-paste-secondary): Use gui-get-selection.
10295         * ns-win.el (ns-paste-secondary): Use gui-get-selection.
10297 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
10299         * lisp/emacs-lisp/package.el: New "external" package status
10300         An external package is any installed package that's not built-in
10301         and not from `package-user-dir', which usually means it's from an
10302         entry in `package-directory-list'.  They are treated much like
10303         built-in packages, in that they cannot be through the Package Menu
10304         deleted and are not considered for upgrades.
10305         (package-desc-status): Identify if a package is installed outside
10306         `package-user-dir'.
10307         (package-menu--print-info-simple)
10308         (package-menu--status-predicate): Add support for it.
10309         * etc/NEWS: Document it.
10311 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
10313         * lisp/mail/rmail.el: Use lexical-binding
10314         (rmail-bury): Remove unused var `buffer-to-bury'.
10315         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
10316         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
10317         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
10318         (rmail-insert-inbox-text): Remove unused var `movemail'.
10319         (rmail-add-mbox-headers): Remove unused var `limit'.
10320         (rmail-undelete-previous-message): Remove unused var `value'.
10321         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
10322         `resent-reply-to'.
10323         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
10324         (rmail-restore-desktop-buffer): Rename arguments.
10326 2015-05-06  Glenn Morris  <rgm@gnu.org>
10328         * Makefile.in (change-history-commit): Add missing piece of previous.
10330         Avoid unnecessary bumping of Makefile.in's timestamp.
10331         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
10332         (emacslog): New variable.
10333         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
10334         (unchanged-history-files): Use $emacslog rather than Makefile.in.
10335         (change-history-nocommit): Store hash in $emacslog.
10336         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
10337         * admin/update_autogen (changelog_files): Update for the above.
10339         * Makefile.in: Don't always insist on removing existing "ChangeLog".
10340         (CHANGELOG): New variable.
10341         (no-ChangeLog): Remove.
10342         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
10343         (change-history-nocommit): Use a temp file rather than insisting
10344         on deletion of any existing "ChangeLog".
10346         * build-aux/gitlog-to-emacslog: Allow specification of output.
10348         * admin/update_autogen: Add option to update ChangeLog.
10349         (usage): Mention -H.
10350         (changelog_flag, changelog_n, changelog_files): New variables.
10351         (main): Check for -H, and maybe run change-history-nocommit.
10353 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
10355         * lisp/subr.el (delete-dups): Pre-size the hashtable.
10357         (define-modify-macro): Make sure cl--arglist-args is defined
10358         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
10359         cl--arglist-args is defined (bug#20517).
10361 2015-05-06  Glenn Morris  <rgm@gnu.org>
10363         * Makefile.in (change-history-nocommit): New.
10365 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
10367         Only cancel timer when it is non-nil
10368         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
10369         timer when it is non-nil
10370         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
10372 2015-05-06  Glenn Morris  <rgm@gnu.org>
10374         Quieten cedet compilation
10375         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
10376         Invert fboundp test to quieten on current Emacs.
10377         * lisp/cedet/ede/config.el (ede-shell-run-something)
10378         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
10379         (semanticdb-refresh-table): Declare.
10380         (ede-preprocessor-map): Require semantic/db.
10382         Quieten cc-mode compilation
10383         * lisp/progmodes/cc-awk.el (c-forward-sws):
10384         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
10385         Declare.
10387 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
10389         lisp/subr.el (delete-dups): Avoid nreverse.
10391 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
10393         * lisp/subr.el (delete-dups): Make it destructive again.
10395 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
10397         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
10399 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
10401         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487)
10402         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
10403         (testcover--read): Rename from testcover-read.  Change calling convention.
10404         Use edebug-read-and-maybe-wrap-form now that edebug-read is gone.
10405         (testcover-start): Use add-function.  Move edebug-all-defs binding to
10406         testcover--read.
10407         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
10408         (testcover-mark): Remove unused var `item'.
10409         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
10411 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
10413         lisp/subr.el (delete-dups): Use a hash table
10414         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
10415           use a hash table. This can result in ~500 times speed-up for typical
10416           collections of size 5000, like that of `load-library'.
10418 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
10420         CEDET: Avoid `oref' on classes in a few more cases
10421         * lisp/cedet/ede/generic.el (ede-find-target):
10422         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
10423         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
10424         var `prefix'.
10426         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings
10427         * lisp/cedet/semantic/symref/grep.el (grepflags, greppattern): Declare.
10428         (semantic-symref-perform-search): Remove unused var `pat'.
10430         CEDET (srecode-compile-inserter): Avoid `oref' on classes
10431         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
10432         Avoid `oref' on classes (bug#20491).
10433         (srecode-compile-split-code): Remove unused var `key'.
10435 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
10437         Clean up pulse.el a little
10438         * lisp/cedet/pulse.el (pulse): Remove.
10439         (pulse-momentary-timer): Save instead of the stop time.
10440         (pulse-momentary-highlight-overlay): Call
10441         pulse-momentary-unhighlight first thing. Treat
10442         pulse-momentary-overlay as a single value, not a list. Save the
10443         created timer. Only pass the stop time to the timer.
10444         (pulse-tick): Update accordingly.
10445         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
10446         single value. Cancel the timer.
10448 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
10450         Support the biblatex journaltitle field
10451         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
10452         Support the biblatex journaltitle field.
10454 2015-05-05  Glenn Morris  <rgm@gnu.org>
10456         Minor declare-function improvement
10457         * lisp/emacs-lisp/bytecomp.el
10458         (byte-compile-macroexpand-declare-function):
10459         Handle declarations after calls.  (Bug#20509)
10461         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
10463         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
10465 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
10467         Pulse using a timer
10468         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
10469         (pulse-momentary-highlight-overlay): Set up the timer instead of
10470         calling `pulse'
10471         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
10472         (pulse-tick): New function.
10473         (pulse-momentary-unhighlight): Cut off the stop time.
10474         (pulse-delay): Update the docstring WRT to not using sit-for.
10476         Add semantic/symref/grep file patterns for ruby-mode
10477         * lisp/cedet/semantic/symref/grep.el
10478         (semantic-symref-filepattern-alist): Add patterns for
10479         ruby-mode. Clarify the docstring.
10481         Don't require match
10482         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
10483         match. That doesn't work for every command, and some identifier
10484         completion tables are bound to be imperfect anyway.
10486 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
10488         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505)
10489         (semantic-grammar--template-expand): New function.
10490         (semantic-grammar-header, semantic-grammar-footer): Use it.
10491         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
10492         (semantic-grammar-file-regexp): Refine regexp.
10493         (semantic-grammar-eldoc-get-macro-docstring):
10494         Use elisp-get-fnsym-args-string when available.
10495         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
10496         instead of the old eldoc-* names.
10497         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
10498         from elisp-mode.el.  Tweak calling convention.
10499         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
10500         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
10501         elisp--get-fnsym-args-string.
10502         (elisp--highlight-function-argument): Add `prefix' arg.
10503         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
10504         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
10506 2015-05-05  Glenn Morris  <rgm@gnu.org>
10508         * lisp/help-fns.el (describe-function-1):
10509         Handle builtins with advertised calling conventions.  (Bug#20479)
10511 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
10513         Merge branch 'seq-let'
10515         Update `seq-let' documentation
10516         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
10517         with the support of  `&rest'.
10519         Add support for &rest in `seq-let'
10520         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
10521         in the argument list.
10522         * test/automated/seq-tests.el: Add a test for parsing and binding
10523         `&rest' in `seq-let'.
10525 2015-05-05  Paul Eggert  <eggert@cs.ucla.edu>
10527         Spelling fixes
10529 2015-05-05  (tiny change) Pierre Lorenzon  <devel@pollock-nageoire.net>
10531         * eieio-custom.el (eieio-object-value-get): Add missing increment
10532         (Bug#20467)
10534         (eieio-object-value-create): Adjust to new slots representation
10535         (Bug#20467)
10536         * eieio-custom.el (eieio-object-value-create):
10537         Fix missed adjustment to new representation of slots metadata.
10539 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
10541         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
10543 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
10545         Work around "Attempt to modify read-only object"
10546         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
10547         elisp--xref-find-definitions, to work around "Attempt to modify
10548         read-only object" error.
10550         Only skip some variables that have function counterparts
10551         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
10552         Only skip minor-mode-named variable if it's defined in a Lisp
10553         file, and it's in minor-mode-list (bug#20506).
10554         * test/automated/elisp-mode-tests.el
10555         (elisp-xref-finds-both-function-and-variable)
10556         (elisp-xref-finds-only-function-for-minor-mode): New tests.
10558 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
10560         Buttonize the whole line, including the number at the beginning
10561         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
10562         previous change.
10563         (xref--insert-xrefs): Buttonize the whole line, including the
10564         number at the beginning.
10566         Make sure we're inside the let bindings
10567         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
10568         Make sure we're inside the let bindings.
10569         * test/automated/elisp-mode-tests.el
10570         (elisp-completes-functions-after-let-bindings): New test.
10572 2015-05-04  Glenn Morris  <rgm@gnu.org>
10574         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
10575         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
10576         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
10577         Remove outdated declarations.
10579         Replace instances of "(eval-when-compile (autoload ...))"
10580         * lisp/gnus/gnus-art.el (nneething-get-file-name):
10581         Declare rather than autoload.
10582         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
10583         Remove pointless autoload.
10584         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
10585         (gnus-topic-create-topic, gnus-topic-enter-dribble):
10586         Declare rather than autoload.
10587         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
10588         (mailcap-extension-to-mime): Autoload at run-time.
10589         * lisp/gnus/mm-util.el (latin-unity-massage-name)
10590         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
10591         (latin-unity-representations-present-region):
10592         Declare rather than autoload.
10593         * lisp/gnus/mml-smime.el (epg-make-context)
10594         (epg-passphrase-callback-function): Autoload at run-time.
10595         (epg-context-set-signers, epg-context-result-for)
10596         (epg-new-signature-digest-algorithm)
10597         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
10598         (epg-sign-string, epg-encrypt-string)
10599         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
10600         (epg-configuration, epg-expand-group, epa-select-keys):
10601         Declare rather than autoload.
10602         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
10603         Autoload at run-time.
10604         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
10605         (gnus-registry-get-id-key, gnus-registry-action):
10606         Declare rather than autoload.
10607         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
10608         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
10609         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
10610         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
10611         (spam-stat-split-fancy): Remove pointless autoloads.
10612         * lisp/net/mairix.el: Load gnus-util when compiling.
10613         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
10614         (message-field-value): Declare rather than autoload.
10615         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
10616         Check gnus-alive-p is fbound.
10617         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
10618         (vm-check-for-killed-summary, vm-error-if-folder-empty)
10619         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
10620         Declare rather than autoload.
10622         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
10624         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
10625         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
10627         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
10629         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
10631         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
10632         * lisp/emacs-lisp/package.el (epg-signature-status):
10633         Fix declarations.
10635         * lisp/play/gametree.el (gametree-show-children-and-entry)
10636         (gametree-apply-layout, gametree-mouse-show-subtree)
10637         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
10639         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
10640         Handle cl-defgeneric, cl-defmethod.
10642 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
10644         Highlight both type and symbol name
10645         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
10646         Highlight both type and symbol name.
10648         Insert, highlight and align line numbers in xref output
10649         * lisp/progmodes/etags.el (xref-location-line): Specialize for
10650         xref-etags-location.
10651         * lisp/progmodes/xref.el (xref-location-line): New generic method.
10652         (xref-file-location): Add reader for the line slot.
10653         (xref--location-at-point): Skip to the `xref-location' property.
10654         (xref--collect-reference): Drop the line number from description.
10655         (xref--insert-xrefs): Insert, highlight and align line numbers.
10657 2015-05-04  Daniel Colascione  <dancol@dancol.org>
10659         Fix previous commit
10661 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
10663         Don't pulse the indentation, or the newline
10664         * lisp/cedet/pulse.el (pulse-lighten-highlight)
10665         (pulse-reset-face): Fall back to the inherited background
10666         attribute in FACE.
10667         (pulse-momentary-highlight-region): Add autoload cookie.
10668         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
10669         indentation, or the newline, if the line's non-empty
10670         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
10672 2015-05-04  Daniel Colascione  <dancol@dancol.org>
10674         Add `save-mark-and-excursion', which has the old `save-excursion' behavior
10675         * doc/lispref/positions.texi (Excursions): Document
10676         `save-mark-and-excursion'.
10677         * lisp/font-lock.el (font-lock-fontify-block): Use
10678         `save-mark-and-excursion' instead of `save-excursion', restoring
10679         Emacs 24 behavior.
10680         * lisp/simple.el (save-mark-and-excursion--save)
10681         (save-mark-and-excursion--restore): New functions.
10682         (save-mark-and-excursion): New user macro.
10683         * src/editfns.c (Fsave_excursion): Mention
10684         `save-mark-and-excursion' in `save-excursion' documentation.
10686 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
10688         Classify lone symbol inside let varlist as variable
10689         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
10690         Classify lone symbol inside let varlist as variable.
10691         * test/automated/elisp-mode-tests.el (completest-variables-in-let-bindings):
10692         New test.
10694         Add xref-pulse-on-jump
10695         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
10696         Add autoload cookie.
10697         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
10698         (xref--maybe-pulse): New function.
10699         (xref-pop-marker-stack, xref--pop-to-location)
10700         (xref--display-position): Use it.
10701         (xref--location-at-point): Use back-to-indentation.
10703 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
10705         * lisp/org/org-{macs,list}.el: Fix lexical warnings
10706         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
10707         (org-list-get-next-item, org-list-get-prev-item)
10708         (org-list-get-children): Mark unused arg `struct'.
10709         (org-list-use-alpha-bul-p): Remove unused var `bul'.
10710         (org-toggle-checkbox): Mark unused var.
10711         (org-update-checkbox-count): Remove unused var `box-num'.
10712         (org-adapt-indentation): Declare.
10713         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
10714         (org-list-send-list): Remove unused var `txt'.
10715         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
10716         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
10717         * lisp/org/org-macs.el: Use `declare'.
10718         (org-with-limited-levels): Declare dyn-bound vars.
10720 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
10722         Fix minor issues with CEDET on MS-Windows
10723         * lisp/cedet/semantic/symref/idutils.el
10724         (semantic-symref-parse-tool-output-one-line): Fix the search
10725         regexp to match MS-Windows file names with drive letters.
10726         (Bug#19468)
10727         * lisp/cedet/semantic/symref/grep.el
10728         (semantic-symref-grep-use-template): Remove "--color=always" from
10729         Grep switches on MS-Windows.
10730         (semantic-symref-grep-shell): Use shell-file-name as the default
10731         value, so this works not only on Posix platforms.
10732         (semantic-symref-perform-search): Use shell-quote-argument instead
10733         of literal '..' for portable quoting of Grep command-line
10734         argument.  Use shell-command-switch instead of a literal "-c".
10735         * lisp/cedet/semantic/bovine/gcc.el
10736         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
10737         for an absolute file name in a portable way.
10739 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
10741         * lisp/emacs-lisp/package.el: Remove `package--silence' variable
10742         (package-import-keyring, package-refresh-contents)
10743         (package-compute-transaction, package--save-selected-packages)
10744         (package-install-from-archive, package-delete)
10745         (package-menu--perform-transaction): Use `inhibit-message'
10746         instead.
10747         (package--compile): Set `warning-minimum-level' to :error.
10749 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
10751         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom
10752         (terminal-init-screen): Use it (bug#20356).
10753         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
10754         (xterm--extra-capabilities-type): New const.
10755         (xterm-extra-capabilities): Use it.
10756         (xterm--version-handler): Lower the pseudo-version for `screen'.
10758 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
10760         xref--insert-xrefs: Tweak the faces
10761         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
10762         Always insert a newline at the end (to avoid mouse-face background
10763         tail at the last line).
10765         elisp-completion-at-point: Prioritize being quoted over funpos
10766         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
10767         Only consider function position when not inside quoted form
10768         (bug#20425).
10769         * test/automated/elisp-mode-tests.el: New file.
10771         Stop vc-print-log from jumping to the top
10772         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
10773         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
10774         is not specified.
10775         (vc-incoming-outgoing-internal): Always pass nil.
10776         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
10777         call it, and don't set vc-sentinel-movepoint (bug#15322).
10778         (vc-print-root-log): Don't fetch the root working revision, nor
10779         pass it to vc-print-log-internal.
10781 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
10783         Fix display of keyboard layouts for right-to-left scripts
10784         * lisp/international/quail.el (quail-insert-kbd-layout): Force
10785         left-to-right paragraph direction.
10787 2015-05-02  K. Handa  <handa@gnu.org>
10789         * cmds.c (internal_self_insert): When we insert spaces for
10790         padding, set point before the padding spaces, not after them.
10792 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
10794         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
10796 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
10798         Fix etags-xref-find for references
10799         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): Use `cl-mapcan'.
10800         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
10801         directory if no tags tables are loaded (bug#19468).
10803 2015-05-02  Philipp Stephani  <phst@google.com>
10805         Update the options in whitespace-style defcustom
10806         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
10807         `repeat' because the option is really set-like.  Add missing
10808         options.  Reorder options to match the order in the
10809         documentation.  (Bug#20346)
10811 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
10813         Fix error diagnostics of c-macro-expand
10814         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
10815         too early if no start-marker string was found -- that generally
10816         means cpp exited abnormally, and we still want to show its error
10817         messages to the user.
10819         Don't require Texinfo 5.0 for Emacs documentation
10820         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
10821         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
10822         "@codequoteundirected on", respectively, to avoid requiring
10823         Texinfo 5.x for Emacs documentation.
10825 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
10827         * lisp/files.el (pwd):
10828         When called with a prefix argument, insert the current default
10829         directory at point.
10831 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
10833         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
10834         * lisp/isearch.el (isearch-mode-map): Don't inhibit
10835         function-key-map remapping for backspace (bug#20466).
10837 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
10839         Implement xref-find-references in etags and elisp-mode
10840         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
10841         (elisp-xref-find): Use it.
10842         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
10843         * lisp/progmodes/xref.el (xref-collect-references):
10844         (xref--collect-reference): New functions.
10846 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
10848         Prefer plain characters to Texinfo circumlocutions
10849         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
10850         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
10852         Fix single-quoting style in PDF manuals
10853         The PDF versions of the GNU manuals used curved single quotes to
10854         represent grave accent and apostrophe, which made it a pain to cut
10855         and paste code examples from them.  Fix the PDF versions to use
10856         grave accent and apostrophe for Lisp source code, keystrokes, etc.
10857         This change does not affect the info files, nor does it affect
10858         ordinary uses of curved single quotes in PDF.
10859         * doc/emacs/docstyle.texi: New file, which specifies treatment for
10860         grave accent and apostrophe, as well as the document encoding.
10861         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
10862         * doc/lispintro/emacs-lisp-intro.texi:
10863         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
10864         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
10865         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
10866         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
10867         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
10868         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
10869         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
10870         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
10871         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
10872         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
10873         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
10874         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
10875         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
10876         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
10877         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
10878         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
10879         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
10880         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
10881         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
10882         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
10883         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
10884         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
10885         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
10886         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
10887         * doc/misc/woman.texi:
10888         Use it instead of '@documentencoding UTF-8', to lessen the need for
10889         global changes like this in the future.
10890         * doc/emacs/Makefile.in (EMACS_XTRA):
10891         * doc/lispintro/Makefile.in (srcs):
10892         * doc/lispref/Makefile.in (srcs):
10893         Add dependency on docstyle.texi.
10894         * doc/misc/Makefile.in (style): New macro.
10895         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
10896         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
10897         Use it.
10899 2015-05-01  Glenn Morris  <rgm@gnu.org>
10901         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
10903         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
10904         (help-fns--signature): Declare.
10906         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
10908 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
10910         New macro seq-let, providing destructuring support to seq.el
10911         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
10912         to `cl-destructuring-bind' but works on all sequence types supported
10913         by `seq.el'.  Bump version number to 1.6.
10914         * test/automated/seq-tests.el: Add tests for seq-let.
10915         * doc/lispref/sequences.texi: Add documentation for seq-let.
10917 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
10919         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer
10921 2015-05-01  Glenn Morris  <rgm@gnu.org>
10923         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
10925 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
10927         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
10928         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
10929         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
10930         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
10931         (Bug#20445).
10933 2015-05-01  K. Handa  <handa@gnu.org>
10935         * mule-cmds.el (input-method-use-echo-area): Change :type to
10936         'boolean.
10938 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10940         Start using proportional fonts in eww by default
10941         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
10942         it seems to work well.
10944         Fix links in tables in shr
10945         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
10946         makes (some) links in tables not work.
10948 2015-05-01  Jan D  <jan.h.d@swipnet.se>
10950         (ns-get-cut-buffer-internal): Remove this alias.
10951         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
10953 2015-04-30  Glenn Morris  <rgm@gnu.org>
10955         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
10956         Update for 2015-02-08 change to indirect-function.
10958         * lisp/term/ns-win.el (ns-get-selection-internal):
10959         Remove declaration for function deleted 2014-10-21.
10961         * lisp/dom.el: Load subr-x when compiling, for when-let.
10963         Silence some compilation warnings
10964         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
10965         * lisp/emulation/cua-base.el (delete-active-region):
10966         * lisp/net/net-utils.el (w32-get-console-output-codepage):
10967         * lisp/term/ns-win.el (ns-own-selection-internal)
10968         (ns-disown-selection-internal, ns-selection-owner-p)
10969         (ns-selection-exists-p, ns-get-selection):
10970         Declare for compiler..
10972         Function declaration updates prompted by 'make check-declare'
10973         * lisp/emacs-lisp/package.el (lm-homepage):
10974         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
10975         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
10976         * lisp/gnus/mml.el (libxml-parse-html-region):
10977         * lisp/gnus/nnrss.el (libxml-parse-html-region):
10978         * lisp/net/eww.el (libxml-parse-html-region):
10979         * lisp/net/shr.el (libxml-parse-html-region):
10980         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
10981         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
10982         * lisp/vc/vc-git.el (vc-annotate-convert-time):
10983         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
10984         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
10985         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
10986         Update declaration.
10988         Remove compatibility code for 20-year old function renaming
10989         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
10990         Make it an obsolete alias.
10991         (idlwave-shell-filter): Change all uses to comint-output-filter.
10993 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
10995         Add ace-window face config
10996         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
10997         configuration.
10999 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
11001         Unclutter 'make doc' output a bit
11002         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
11003         Use make subst rather than sh IFS to split target string apart.
11004         This makes 'make' output easier to follow.
11006         Merge from gnulib
11007         * doc/misc/texinfo.tex: Update from gnulib.
11009 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11011         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh
11012         (package-menu--print-info): Obsolete.
11013         (package-menu--print-info-simple): New function.
11014         (package-menu--refresh): Use it, simplify code, and improve
11015         performance.
11016         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
11017         Tiny performance improvement.
11019         * lisp/emacs-lisp/package.el (package--message): inhibit-message
11021 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
11023         Omit -Wstrict-overflow workaround in GCC 5
11024         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
11025         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
11027         Merge from gnulib
11028         This incorporates:
11029         2015-04-29 extern-inline: no need for workaround in GCC 5.1
11030         2015-04-26 file-has-acl: port to CentOS 6
11031         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
11033 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
11035         Set next-error-* in xref--xref-buffer-mode
11036         * xref.el (xref--xref-buffer-mode): Set `next-error-function' and
11037         `next-error-last-buffer'.
11038         (xref--next-error-function): New function.
11039         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
11041 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
11043         python.el: Fix warnings on looking-back calls missing LIMIT
11044         * lisp/progmodes/python.el (python-shell-accept-process-output):
11045         Pass LIMIT arg to looking-back.
11047 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11049         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress
11050         (package--download-and-read-archives): Use pushnew instead of
11051         append.  If something terrible happened during a previous
11052         download, simply refreshing should now make things work again.
11054 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
11056         Introduce etags-xref-find-definitions-tag-order
11057         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
11058         New variable.
11059         (etags--xref-find-definitions): Use it (bug#19468).
11061 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
11063         PATH- and completion-related fixes in Eshell on MS-Windows
11064         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
11065         MS-Windows, prepend "." to list of directories produced from PATH,
11066         as Windows always implicitly searches the current directory first.
11067         (eshell-force-execution): Make it have a non-nil default value on
11068         MS-Windows and MS-DOS.
11069         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
11070         eshell-force-execution is non-nil, complete on readable files and
11071         directories, not only executables.  When running on MS-Windows,
11072         prepend "." to list of directories produced from PATH, as Windows
11073         always implicitly searches the current directory first.
11075 2015-04-29  Sam Steingold  <sds@gnu.org>
11077         bury RCIRC buffers when there is no activity
11078         lisp/net/rcirc.el (rcirc-non-irc-buffer): remove
11079         (rcirc-bury-buffers): new function
11080         (rcirc-next-active-buffer): when there is no new activity, use
11081         `rcirc-bury-buffers' to hide all RCIRC buffers
11083 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
11085         Fix DBUS query result parsing for secrets-search-items
11086         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
11087         parsing.  The function assumed that return value of the
11088         SearchItems method called on a collection is a list of two lists,
11089         however this is true only when no collection is specified.  GNOME
11090         had used to incorrectly return a list of two lists in both cases,
11091         but this was already fixed:
11092         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
11093         incorrect information in the secrets-search-items’ docstring.
11094         (Bug#20449)
11096 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11098         * lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'
11099         (byte-compile--message): Use `inhibit-message' instead of hiding
11100         the previous message with (message nil).
11102 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
11104         Remove the deprecated INTERNAL_FIELD macro by expanding it
11105         * src/lisp.h (INTERNAL_FIELD): Remove.
11106         (DEFVAR_KBOARD): Modify accordingly.
11107         * alloc.c, buffer.c, buffer.h, category.c, keyboard.c, keyboard.h:
11108         * syntax.c: Adjust users.
11109         * src/buffer.c (compact_buffer): Use BVAR.
11111 2015-04-29  Glenn Morris  <rgm@gnu.org>
11113         Replace an obsolete function alias
11114         * lisp/isearch.el (isearch-yank-x-selection):
11115         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
11116         (mouse-drag-secondary-moving):
11117         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
11118         Replace obsolete alias x-get-selection with gui-get-selection.
11120 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
11122         * lisp/mail/rmailsum.el: Use lexical-binding.
11124 2015-04-29  Glenn Morris  <rgm@gnu.org>
11126         * test/automated/package-test.el (package-test-update-archives-async):
11127         Skip test on hydra.nixos.org.
11129 2015-04-28  Glenn Morris  <rgm@gnu.org>
11131         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
11132         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
11133         (foldout-mouse-hide-or-exit): Use new names for outline functions.
11135         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
11136         Update for 2014-06-26 hideif.el change.
11138         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
11139         (rmail--decode-and-apply): New function.
11140         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
11142         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
11144 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11146         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
11147         (package-menu--refresh): Delegate obsolete-hiding to
11148         `package--remove-hidden'.
11149         (package--remove-hidden): Disregard high-priority package if it is
11150         older than the installed one.
11152 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
11154         Update source file encoding list
11155         Update admin/notes/unicode, along with coding system cookies in
11156         other files, so that the two match each other better.
11157         * admin/notes/unicode: lisp/language/ethio-util.el and
11158         lisp/language/ethiopic.el also use utf-8-emacs.
11159         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
11160         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
11161         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
11162         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
11163         * etc/refcards/sk-survival.tex:
11164         Add "coding: utf-8" so that this file is not mishandled in a
11165         Latin-1 or Big-5 locale.
11166         * lisp/international/robin.el, lisp/org/ox-ascii.el:
11167         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
11168         * lisp/language/ethio-util.el: Fix trailer.
11170 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
11172         Fix synchronous invocation of Ispell
11173         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
11174         value to ispell-process-directory before calling ispell-init-process.
11175         Don't call set-process-coding-system if ispell-async-processp is nil.
11176         (Bug#20448)
11178 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11180         * lisp/emacs-lisp/package.el: Skip space and comments in init file
11181         (package--ensure-init-file): Insert snippet at first
11182         non-whitespace non-comments line.  Respects local-vars at the top
11183         of the file.
11185 2015-04-28  Glenn Morris  <rgm@gnu.org>
11187         * lisp/mail/rmail.el (rmail-copy-headers):
11188         Handle rmail-nonignored-headers being nil.  (Bug#18878)
11190         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
11192         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
11193         Don't get confused by a bzrlib version mismatch warning.
11195 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11197         Change default location of EUDC options file
11198         * NEWS: Document change to EUDC options file's default location.
11199         * lisp/net/eudc-vars.el (eudc-options-file): Use
11200         `locate-user-emacs-file' to change default options file location.
11202 2015-04-27  Glenn Morris  <rgm@gnu.org>
11204         * test/automated/package-test.el (package-test-update-archives-async):
11205         Try to handle the test server script dying.
11207 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11209         * lisp/saveplace.el (save-place-mode): New minor mode.
11210         (save-place): Redefine as an obsolete alias.
11212         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
11213         * lisp/midnight.el: Use lexical-binding.
11214         (midnight-mode): Make it a proper minor mode.
11215         (midnight-buffer-display-time): Make arg non-optional.
11216         (midnight-find): Remove.
11217         (clean-buffer-list-kill-never-regexps)
11218         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
11219         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
11220         contain functions.
11221         (clean-buffer-list): Use cl-find.
11222         Allow clean-buffer-list-kill-never-regexps to contain functions.
11224 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
11226         Bump version of seq.el to 1.5
11227         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
11228           from seq-doseq.  Bump version number of seq.el.
11230 2015-04-27  Glenn Morris  <rgm@gnu.org>
11232         * lisp/mail/rmail.el (rmail-reply):
11233         Decode subject before matching "Re:" prefix.  (Bug#20396)
11235 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
11237         * lisp/emacs-lisp/package.el: Small improvements
11238         (package--with-work-buffer-async): More informative error.
11239         (package-install-user-selected-packages): Rename to
11240         `package-install-selected-packages'.
11242 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11244         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
11245         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
11246         (eieio--class-make): Remove leftover `tag'.
11248 2015-04-27  Glenn Morris  <rgm@gnu.org>
11250         * lisp/gnus/message.el (gnus-extract-address-components):
11251         Remove bogus declaration that was masking previous problem.
11253 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
11255         * lisp/gnus/message.el (message-insert-formatted-citation-line):
11256         Fix typo.  (Bug#20318)
11258 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11260         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
11262         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
11263         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
11264         the buffer in yet another frame.
11265         (reftex-toc-visit-location): Make sure toc-window has focus at the end
11266         when `final' is nil.
11267         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
11268         silence warnings.  Use `--' to clarify that it's internal.
11269         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
11270         (reftex-toc-promote): Clarify unused argument.
11271         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
11272         Add `reftex--' prefix.  Fix all users.
11273         (reftex-toc-promote-prepare): Use _ for dummy variable.
11274         (reftex-toc-restore-region): Rename `m
11276 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
11278         Fix a typo in bibtex.el
11279         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
11280         last change.  (Bug#20429)
11282         Fix redisplay of frame after loading new fonts
11283         * src/xdisp.c (redisplay_internal): When retrying redisplay of a
11284         frame because new fonts were loaded, disable all redisplay
11285         optimizations on that frame by calling SET_FRAME_GARBAGED.
11286         (Bug#20410)
11288 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11290         * lisp/info.el (Info-menu): Properly provide the `default'
11291         (Bug#20391)
11293         * elisp-mode.el: Catch errors from `documentation'
11294         (Bug#20418)
11295         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
11296         Catch errors from documentation.
11297         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
11299 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
11301         lisp/emacs-lisp/package.el: Move variables to silence byte-compiler
11302         Remove redundant ":group 'package".
11304 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
11306         Fix a typo in rmail.el
11307         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
11308         last commit.  (Bug#20429)
11310 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
11312         Introduce xref-prompt-for-identifier
11313         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
11314         (xref--read-identifier): Use it
11315         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
11317 2015-04-26  João Távora  <joaotavora@gmail.com>
11319         `tex-insert-quote' after single `'' opens quotes instead of closing
11320         Without this, it's very hard to precede double quotes with the
11321         apostrophe character, i.e. insert the sequence '``
11322         (quote-backquote-backquote), commonly useful in portuguese, for
11323         instance.
11324         * tex-mode.el (tex-insert-quote): Add ?' to the list of preceding
11325         chars making `tex-insert-quote' be in the "opening" context.
11327 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
11329         Pass `id' to `completing-read' as def instead of initial input
11330         * xref.el (xref--read-identifier): Pass `id' to `completing-read'
11331         as the default value instead of initial input
11332         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
11334 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
11336         Don't freeze with unreadable processes
11337         Don't freeze if an exiting process can't be read from. (Bug#19860).
11338         This fixes a bug I introduced in
11339         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
11340         "* process.c: Add sanity checks for file descriptors."
11341         Dmitry Gutov did most of the legwork in finding the problem.
11342         * src/process.c (wait_reading_process_output):
11343         Treat non-running processes that can't be read from
11344         the same as other non-running processes.
11346 2015-04-25  Alan Mackenzie  <acm@muc.de>
11348         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
11349         * lisp/subr.el (remove-yank-excluded-properties): put
11350         `with-silent-modifications' around only the last three lines of code.
11352 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11354         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
11355         (package--all-keywords): Deleted variable.
11357         * etc/NEWS: Document package-hiding functionality
11359 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
11361         lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
11363         Clarify the doc string of 'replace-regexp-in-string'
11364         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
11366         Improve doc string of 'insert-buffer-substring'
11367         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
11369         MS-Windows followup for the recent gnulib update
11370         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
11371         acl-internal.c.
11373 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
11375         Spelling fixes
11377         Merge from gnulib
11378         This incorporates:
11379         2015-04-24 file-has-acl: new module, split from acl
11380         2015-04-24 manywarnings: add GCC 5.1 warnings
11381         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
11382         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
11383         2015-04-15 acl: On Linux, check for acls without libacl
11384         2015-04-14 tempname: avoid unused parameter warnings (trivial)
11385         * lib/acl-internal.c: New file, from gnulib.
11386         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
11387         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
11388         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
11389         Update from gnulib.
11391         Port --enable-gcc-warnings to GCC 5.1 x86-64
11392         * lib-src/ebrowse.c (dump_sym):
11393         * lib-src/hexl.c (main):
11394         * src/ccl.c (ccl_driver):
11395         * src/character.c (string_escape_byte8):
11396         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
11397         * src/gnutls.c (Fgnutls_boot):
11398         * src/gtkutil.c (xg_check_special_colors):
11399         * src/image.c (x_build_heuristic_mask):
11400         * src/print.c (safe_debug_print, print_object):
11401         * src/term.c (produce_glyphless_glyph):
11402         * src/xdisp.c (get_next_display_element)
11403         (produce_glyphless_glyph):
11404         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
11405         Don't use a signed format to print an unsigned integer, or vice
11406         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
11407         * src/image.c (png_load_body, jpeg_load_body):
11408         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
11410 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
11412         Add new faces to tsdh-light-theme
11413         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
11414         definitions for Info-quoted, ace-jump-face-foreground,
11415         hl-paren-face, show-paren-match, and show-paren-mismatch.
11417 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
11419         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
11421 2015-04-24  Glenn Morris  <rgm@gnu.org>
11423         * build-aux/gitlog-to-emacslog:
11424         Use raw log format rather than wrapped one.
11426 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
11428         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code
11429         (seq-doseq): Fix out-of-scope binding.
11430         Don't call `seq-length at every iteration.
11431         Reduce `if's from 3 to 2 per iteration.
11432         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
11434 2015-04-24  Glenn Morris  <rgm@gnu.org>
11436         * lisp/textmodes/text-mode.el (text-mode-hook):
11437         Move text-mode-hook-identify to default.
11439         * lisp/mouse.el (minor-mode-menu-from-indicator):
11440         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
11442         * lisp/help-fns.el (describe-function): More type checking.
11443         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
11445         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
11446         (Bug#20325)
11448 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
11450         shr: strip leading whitespace when expanding URLs
11451         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
11453 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
11455         Clarify "co-authored" some more
11457         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
11459         Clarify doc strings of functions that search for properties
11460         * src/textprop.c (Fnext_char_property_change)
11461         (Fprevious_char_property_change)
11462         (Fnext_single_char_property_change)
11463         (Fprevious_single_char_property_change, Fnext_property_change)
11464         (Fnext_single_property_change, Fprevious_property_change)
11465         (Fprevious_single_property_change): Clarify doc strings wrt return
11466         value and the optional LIMIT argument.  (Bug#20411)
11468 2015-04-24  Glenn Morris  <rgm@gnu.org>
11470         * test/automated/message-mode-tests.el (message-mode-propertize):
11471         Handle non-writable HOME; eg on hydra.nixos.org.
11473 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
11475         Avoid starting threads by w32-shell-execute
11476         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
11477         local file names, before invoking ShellExecute.  (Bug#20220)
11479 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
11481         Fix following doc-links in `widget-documentation-link-action'
11482         * lisp/wid-edit.el (widget-documentation-link-action): Make
11483         following doc-links less simplistic (Bug#20398).
11485 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11487         Improve EUDC manual
11488         * eudc.texi (Troubleshooting): New LDAP troubleshooting subsection.
11490 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
11492         Omit needless "\ " after multibyte then newline
11493         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
11494         (print_object): When print-escape-multibyte is non-nil and a
11495         multibyte character is followed by a newline or formfeed, followed
11496         by a hex digit, don't output a needless "\ " before the hex digit.
11497         * test/automated/print-tests.el (print-hex-backslash): New test.
11499 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
11501         Add a new `inhibit-message' variable
11502         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
11503         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
11504         `inhibit_message' is non-zero.
11505         * etc/NEWS: Add an entry.
11506         * doc/lispref/display.texi: Add an entry for `inhibit-message',
11507           mention it in `message'.
11509 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
11511         Fix last fix in `display-buffer-record-window'.
11512         * lisp/window.el (display-buffer-record-window): Fix last fix.
11514 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
11516         Minor edits in CONTRIBUTE
11517         * CONTRIBUTE: Rearrange instructions about log messages.
11518         Use "Git" capitalized all over.
11519         Use 2 spaces between sentences.
11521 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
11523         * lisp/files.el (basic-save-buffer): Fix argument
11525         * lisp/cus-edit.el (custom-file): Consider init-file-had-error
11526         In case `(and (null custom-file) init-file-had-error)' do the same
11527         thing we'd do if `(null user-init-file)', which is to either error out
11528         or return nil.  This is in line with `custom-save-all' which would
11529         throw an error in that situation. (bug#20355)
11531         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu
11532         (package-menu-hide-low-priority): New variable, see its doc.
11533         (package-archive-priorities): Update doc.
11534         (package-desc-priority): New function.
11535         (package-desc-priority-version): Use it.
11536         (package--remove-hidden): New function.
11537         (package-menu--refresh): Use it.
11539         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages
11540         (package-menu--hide-obsolete): New variable.
11541         (package--remove-hidden): Use it.
11542         (package-menu-hide-obsolete): New interactive function to toggle
11543         the variable.
11544         (package--quick-help-keys): Document it.
11545         (package-menu-async): Add :version tag.
11546         (package-menu-mode-map): Bind package-menu-hide-obsolete.
11547         (package-desc-status): Indicate non-installed obsolete packages as
11548         avail-obso.
11549         (package-menu-mark-install): Allow installation of avail-obso.
11550         (package-menu--status-predicate): Sort avail-obso with available.
11552 2015-04-22  Alan Mackenzie  <acm@muc.de>
11554         On C-y, stop some text property entries being written into buffer-undo-list
11555         lisp/subr.el (remove-yank-excluded-properties): enclose the code in
11556         `with-silent-modifications'.
11558 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
11560         In display-buffer-record-window record selected window if necessary.
11561         * lisp/window.el (display-buffer-record-window): Store selected window
11562         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
11564 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
11566         Fix reftex-citation bug
11567         * reftex-cite.el (reftex-extract-bib-entries): Fix
11568         `wrong-type-argument stringp nil' error that occurs when AUCTeX
11569         integration is enabled and there are no citations in the document
11570         so far.
11572 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
11574         Add or reset based on the presence of MERGE_HEAD
11575         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
11576         `vc-git-resolve-when-done' to `after-save-hook' in either case.
11577         (vc-git-conflicted-files): Add a TODO.
11578         (vc-git-resolve-when-done): Depending on the presence of
11579         MERGE_HEAD, either update the resolved file in the index, or
11580         remove it from there.  (Bug#20292)
11582 2015-04-21  Glenn Morris  <rgm@gnu.org>
11584         * lisp/custom.el (custom-declare-group): No need to purecopy
11585         custom-current-group-alist members following recent change to set
11586         it to nil before dumping.
11588         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
11589         (Bug#20399)
11591 2015-04-21  Daniel Colascione  <dancol@dancol.org>
11593         Unbreak no-op buffer save message
11594         * lisp/files.el (save-buffer): Pass interactive flag to `basic-save-buffer`
11595         (basic-save-buffer): Accept called-interactively as an argument instead of
11596         directly invoking called-interactively-p, which will always yield nil
11597         in that context.
11599 2015-04-21  Alan Mackenzie  <acm@muc.de>
11601         CC Mode: Do nothing in before/after-change-functions for text property changes
11602         Fixes bug#20266.
11603         lisp/progmodes/cc-mode.el (c-basic-common-init): Make
11604         yank-handled-properties buffer local, and remove 'category from it.
11605         (c-called-from-text-property-change-p): New function.
11606         (c-before-change): Don't do anything if a call of the new function
11607         returns non-nil.
11608         (c-after-change): Don't do much if a call of the new function returns
11609         non-nil.
11610         (c-extend-after-change-region): Put changes to text property 'fontified
11611         inside c-save-buffer-state.
11613 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
11615         Fix byte-compiler warnings about looking-back.
11616         * lisp/vc/log-view.el (log-view-end-of-defun-1):
11617         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
11618         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
11619         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
11620         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
11621         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
11622         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
11623         * lisp/org/org.el (org-insert-heading, org-sort-entries):
11624         * lisp/org/org-mouse.el (org-mouse-end-headline)
11625         (org-mouse-context-menu):
11626         * lisp/org/org-clock.el (org-clock-cancel):
11627         * lisp/man.el (Man-default-man-entry):
11628         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
11629         (rmail-ensure-blank-line):
11630         * lisp/mail/footnote.el (Footnote-delete-footnote):
11631         * lisp/mail/emacsbug.el (report-emacs-bug):
11632         * lisp/info.el (Info-follow-reference, Info-fontify-node):
11633         * lisp/info-look.el (info-lookup-guess-custom-symbol):
11634         * lisp/help-fns.el (help-fns--key-bindings):
11635         * lisp/files.el (hack-local-variables):
11636         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
11637         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
11638         (viper-complete-filename-or-exit):
11639         * lisp/emulation/viper-cmd.el (viper-backward-indent):
11640         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
11641         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
11642         * lisp/cus-edit.el (custom-face-edit-value-create):
11643         * lisp/calendar/todo-mode.el (todo-set-item-priority)
11644         (todo-filter-items-1, todo-convert-legacy-files)
11645         (todo-prefix-overlays): Add explicit second arg to looking-back.
11647 2015-04-20  Glenn Morris  <rgm@gnu.org>
11649         Avoid non-nil current-load-list at startup
11650         * src/process.c (init_process_emacs): Move Fprovide statement...
11651         (syms_of_process): ... to here.
11653         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
11655         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value in emacs -Q.
11657 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
11659         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
11660         (Bug#20330)
11662 2015-04-20  Glenn Morris  <rgm@gnu.org>
11664         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
11666         Tweak exec-path in uninstalled case
11667         * src/callproc.c (init_callproc): If running uninstalled, do not
11668         include eventual installation libexec directory in exec-path.
11670 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
11672         * lisp/emacs-lisp/package.el: Filter by multiple keywords and cache keywords
11673         (package-menu-filter): Accept a list of keywords.
11674         (package--all-keywords): New variable to cache known keywords.
11675         (package-all-keywords): Populate it if necessary.
11676         (package-refresh-contents): Reset it.
11678         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
11679         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
11680         as special keywords which match agains package archive and status
11681         respectively.
11682         * etc/NEWS: Document it.
11684 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
11686         Describe and index "empty overlays".
11687         * doc/lispref/display.texi (Overlays): Improve indexing.
11688         (Managing Overlays): Describe "empty" overlays.
11689         (Overlay Properties, Finding Overlays): Add cross-reference to
11690         where empty overlays are described.
11692 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
11694         Spelling fixes
11696         Quote 'like this' in top-level files
11697         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
11698         Prefer to single-quote 'like this' (instead of the older style
11699         `like this').
11700         * configure.ac: Fix some space-before-tab problems that 'git commit'
11701         complained about.
11703         Use bool for boolean in textprop.c, undo.c
11704         * src/textprop.c (soft, hard): Now constants instead of macros.
11705         (validate_plist): Rewrite to avoid need for boolean local.
11706         (interval_has_all_properties, interval_has_some_properties)
11707         (interval_has_some_properties_list, add_properties)
11708         (remove_properties, get_char_property_and_overlay)
11709         (Fnext_single_char_property_change)
11710         (Fprevious_single_char_property_change, add_text_properties_1)
11711         (Fremove_text_properties, Fremove_list_of_text_properties)
11712         (copy_text_properties):
11713         * src/tparam.c (tparam1):
11714         * src/undo.c (record_change, record_property_change)
11715         (syms_of_undo):
11716         Use 'true' and 'false' for booleans.
11718 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
11720         Call `smerge-start-session' even when dealing with a stash conflict
11721         * lisp/vc/vc-git.el (vc-git-find-file-hook):
11722         Call `smerge-start-session' even when dealing with a stash
11723         conflict (bug#20292).
11725 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
11727         Add option to eshell/clear to clear scrollback.
11728         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
11729         (eshell/clear): Add an optional SCROLLBACK argument. If non-nil,
11730         scrollback contents are cleared.
11731         * etc/NEWS: Describe change.
11732         * doc/misc/eshell.texi: Add entry for `clear'.
11734 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
11736         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
11737         where either will do.
11739 2015-04-19  Steve Purcell  <steve@sanityinc.com>
11741         Assume package archive-contents are UTF8-encoded
11742         * lisp/emacs-lisp/package.el (package--read-archive-file):
11743         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
11744         downloaded and cached archive-contents files, so that non-ASCII
11745         characters in package descriptions are displayed correctly in the
11746         `list-packages' menu. (Bug#20231)
11748 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
11750         Abort when looking at stashed changes
11751         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
11752         stashed changes (bug#20292).
11754 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
11756         Refactor low-level printing for simplicity
11757         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
11758         PRINTPREPARE; doable now that we assume C99.  All callers changed.
11759         (PRINTCHAR): Remove, as it adds more mystery than clarity.
11760         All callers changed.
11761         (strout): Assume that caller computes length.  All callers changed.
11762         (print_c_string): New function.
11763         (write_string, write_string_1): Compute length instead of asking
11764         the caller to compute it.  All callers changed.
11765         (write_string): Simplify by using write_string_1.
11766         (write_string_1): Simplify by using print_c_string.
11767         (Fterpri): Compute default val more clearly.
11768         (Fprin1_to_string, print_object):
11769         Assume C99 to avoid unnecessary nesting.
11770         (print_object): Prefer print_c_string to multiple printchar, or
11771         to calling strout with -1 length.  Coalesce into sprintf when
11772         this is easy.
11774 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
11776         Prefer "Bug#1234" in commit messages (Bug#20325)
11777         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
11778         as this isn't useful for Git.
11779         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
11781 2015-04-18  Glenn Morris  <rgm@gnu.org>
11783         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
11784         (Bug#19506)
11786 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
11788         * lisp/elec-pair.el (electric-pair-post-self-insert-function): Do not use `chomp' as a function.
11789         (Bug#19505)
11791 2015-04-18  Glenn Morris  <rgm@gnu.org>
11793         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
11795         * doc/emacs/misc.texi (Sorting): Small edit.
11796         (Bug#19896)
11798         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
11800 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
11802         css-mode.el: Support multi-line comment filling
11803         (Bug#20256)
11804         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
11805         comment filling.
11806         (css-adaptive-fill): New function.
11807         (css-mode): Set `adaptive-fill-function'.
11808         (scss-mode): Set `comment-continue'.
11810 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
11812         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into): Better error messages.
11814 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
11816         Minor improvements in Bulgarian input methods
11817         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
11818         Replace U+042C with U+045D, as the former character is not used in
11819         the modern Bulgarian language.
11820         (Bug#20350)
11822 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11824         Improve EUDC manual
11825         * eudc.texi (LDAP Configuration): Mention simple and SASL
11826         authentication schemes.  Add index items.  Shorten example server
11827         name.
11829 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
11831         Don't show both feature and function with the same name
11832         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
11833         Don't show both feature and function with the same name.
11835         (elisp--xref-identifier-location): Skip variable, if it's also a functiong
11836         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
11837         Avoid returning both the variable and the function for the same
11838         minor mode.
11840 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
11842         Fix fontification of keywords clobbered by the prompt.
11843         * lisp/comint.el (comint-output-filter): Remove the uses of
11844         with-silent-modifications I introduced as part of the last change.
11845         This fixes, e.g., erratically missing highlighting when running
11846         ./configure --help; ./configure in a shell-mode buffer with
11847         compilation-shell-minor-mode turned on.
11849 2015-04-17  Glenn Morris  <rgm@gnu.org>
11851         * admin/authors.el (authors-valid-file-names, authors-renamed-files-alist): Additions.
11853 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
11855         * lisp/indent.el (indent-region): Don't deactivate the mark
11856         (Bug#20357)
11858 2015-04-17  Sam Steingold  <sds@gnu.org>
11860         lisp/net/rcirc.el (defun-rcirc-command): mark `target' as ignorable
11862 2015-04-16  Leo Liu  <sdl.web@gmail.com>
11864         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
11866 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11868         * lisp/erc/erc-pcomplete.el (erc-pcomplete): Don't use `pcomplete' any more.
11870 2015-04-16  Glenn Morris  <rgm@gnu.org>
11872         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
11874 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
11876         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
11877         * configure.ac (LIBJPEG): Leave it empty for MinGW.
11879 2015-04-16  Glenn Morris  <rgm@gnu.org>
11881         * lisp/replace.el (query-replace-from-to-separator): Delay initialization
11882         to avoid rogue setting after startup.
11884 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
11886         Pre-4.6 GCC succeeds with unknown option
11887         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
11888         (Bug#20338)
11890 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
11892         '[:graph:]' now excludes whitespace, not just ' '
11893         * doc/lispref/searching.texi (Char Classes):
11894         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
11895         sans whitespace (not sans space).
11896         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
11897         not just space.
11898         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
11900 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
11902         (looking-back): Make the second arg non-optional.
11903         * lisp/subr.el (substitute-key-definition-key, special-form-p)
11904         (macrop): Drop deprecated second arg to indirect-function.
11905         (looking-back): Make the second arg non-optional.
11907         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
11908         command is actually sent to the shell.
11910 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
11912         Port jpeg configuration to Solaris 10 with Sun C
11913         * configure.ac: Check for jpeglib 6b by trying to link it, instead
11914         of relying on cpp magic that has problems in practice.  Check for
11915         both jpeglib.h and jerror.h features.  Remove special case for
11916         mingw32, which should no longer be needed (and if it were needed,
11917         should now be addressable by hotwiring emacs_cv_jpeglib).
11918         (Bug#20332)
11920 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
11922         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
11923         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
11924         Move to elisp-mode.el.
11925         (lisp-mode-variables): (Re)move elisp-specific settings.
11926         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
11927         from lisp-mode-variables.
11928         (elisp--font-lock-flush-elisp-buffers): New function, moved from
11929         lisp-mode.el.
11931         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
11932         Avoid pathological slowdown at top-level in large file.
11934 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
11936         Standardize names of ChangeLog history files
11937         Suggested by Glenn Morris in:
11938         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
11939         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
11940         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
11941         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
11942         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
11943         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
11944         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
11945         Remove.
11947         Split top-level entries into pre- and post-April 7
11948         This more clearly distingiushes pre-April-7 ChangeLog entries (which
11949         are for top-level files only) from post-April-7 entries (which are
11950         about files at all levels.  Problem reported by Glenn Morris in:
11951         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
11952         * ChangeLog.1: Move post-April-7 entries from here ...
11953         * ChangeLog.2: ... to this new file.
11954         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
11956 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
11958         Fix recent cus-start changes that added customize-rogues
11959         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
11960         vars early.
11961         * lisp/loadup.el ("cus-start"): Move to the end to reduce customize-rogue.
11963 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
11965         Define cl-concatenate as an alias to seq-concatenate
11966         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
11967           code by making cl-concatenate an alias to seq-concatenate.
11969 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
11971         * src/lread.c (intern_1): Make sure we'd find the symbol we add
11972         (Bug#20334)
11973         * src/xfaces.c (resolve_face_name): Don't use `intern' with Lisp_Strings.
11975 2015-04-15  Glenn Morris  <rgm@gnu.org>
11977         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
11979 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11981         Clean up gnus-uu saving code slightly
11982         * gnus-uu.el (gnus-uu-save-article): Make the
11983         save-restriction/widen calls make more sense.
11985 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
11987         Make [:graph:] act like [:print:] sans space
11988         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
11989         [:graph:] so that it matches everything that [:print:] does,
11990         except for space.
11991         * doc/lispref/searching.texi (Char Classes):
11992         * etc/NEWS:
11993         * lisp/emacs-lisp/rx.el (rx):
11994         Document [:graph:] to be [:print:] sans ' '.
11995         * src/character.c, src/character.h (graphicp): New function.
11996         * src/regex.c (ISGRAPH) [emacs]: Use it.
11997         (BIT_GRAPH): New macro.
11998         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
11999         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
12000         Return BIT_GRAPH for RECC_GRAPH.
12001         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
12002         and ISPRINT if BIT_PRINT.
12004 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
12006         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
12007         Don't use call-next-method in a cl-defmethod.
12009         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
12010         (eieio--class-p): Remove, provided by cl-defstruct.
12012 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
12014         Add seq-intersection and seq-difference to the seq library
12015         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference): New
12016         functions.
12017         * test/automated/seq-tests.el: Add tests for seq-intersection and
12018         seq-difference.
12019         * doc/lispref/sequences.texi: Add documentation for seq-intersection
12020         and seq-difference.
12022 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
12024         * eieio-core.el (class-abstract-p): Don't inline, to avoid leaking internals
12026 2015-04-14  Sam Steingold  <sds@gnu.org>
12028         package--ensure-init-file: widen requires save-restriction
12030 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
12032         Improve the commit-msg Git hook for unibyte environments
12033         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
12034         in unibyte environments.  (Suggested by Paul Eggert
12035         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
12036         [:print:], based on UTF-8 sequences of the unprintable characters.
12038         Describe problems with cursor caused by Windows Magnifier
12039         * etc/PROBLEMS: Describe the problem with cursor shape on
12040         MS-Windows due to Windows Magnifier.
12041         (Bug#20271)
12043         Make [:print:] support non-ASCII characters correctly
12044         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
12045         (BIT_PRINT): New bit mask.
12046         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
12047         * src/character.c (printablep): New function.
12048         * src/character.h (printablep): Add prototype.
12049         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
12050         of 'print', 'alnum', and 'alphabetic'.
12051         * doc/lispref/searching.texi (Char Classes): Document the new
12052         behavior of [:print:].
12053         * etc/NEWS: Mention the new behavior of [:print:].
12055         Assign correct general-category and names to surrogates
12056         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
12057         surrogates.  This avoids assigning them the default
12058         general-category of 'Cn', i.e. unassigned codepoints.
12059         (unidata-get-name): Give surrogates synthetic names.
12061 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
12063         Assume C89 offsetof in xterm.c, xlwmenu.c
12064         * lwlib/xlwmenu.c (offset):
12065         * src/xterm.c (cvt_string_to_pixel_args):
12066         Use offsetof, not XtOffset.
12068 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
12070         Assume C89 offsetof in widget.c
12071         * src/widget.c (XtOffset): Remove; no longer needed.
12072         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
12074         Fix think-o in previous patch
12075         * src/window.c (count_windows, get_leaf_windows):
12076         Don't optimize count_windows incorrectly.
12078 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
12080         Avoid some int overflows in window.c
12081         * src/print.c (print_object):
12082         * src/window.c (sequence_number):
12083         * src/window.h (struct window.sequence_number):
12084         Don't assume window sequence number fits in int.
12085         * src/window.c (window_select_count):
12086         * src/window.h (struct window.use_time, window_select_count):
12087         Don't assume window use time fits in int.
12088         * src/window.c (Fsplit_window_internal):
12089         Don't assume user-supplied integer, or sum, fits in int.
12090         (Fset_window_configuration, count_windows, get_leaf_windows)
12091         (save_window_save, Fcurrent_window_configuration):
12092         Use ptrdiff_t for object counts.
12093         (Fset_window_configuration): Omit unused local 'n'.
12094         (count_windows): Simplify by writing in terms of get_leaf_windows.
12095         (get_leaf_windows): Don't store through FLAT if it's null.
12096         (extract_dimension): New static function.
12097         (set_window_margins, set_window_fringes, set_window_scroll_bars):
12098         Use it to avoid undefined behavior when converting user-supplied
12099         integer to 'int'.
12101 2015-04-13  Glenn Morris  <rgm@gnu.org>
12103         Minor doc copyedits
12104         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
12105         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
12107 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
12109         [Gnus] Catch the invalid-operation that idna.el will issue
12110         * lisp/gnus/gnus-art.el (gnus-use-idna):
12111         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
12112         * lisp/gnus/message.el (message-use-idna):
12113         Catch the invalid-operation that idna.el will issue.
12115 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
12117         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
12119 2015-04-13  Sam Steingold  <sds@gnu.org>
12121         package--ensure-init-file: widen before looking for "(package-initialize)"
12123 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
12125         Change diff-switches default to `-u'
12126         (Bug#20290)
12127         * doc/emacs/files.texi (Comparing Files): Document the new default
12128         value of `diff-switches'.
12129         * doc/emacs/trouble.texi (Sending Patches): Document the preference
12130         for unified diff format.  Escape the plus in the suggested `-F' regexp
12131         value.
12132         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
12134 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
12136         (gnus-group--setup-tool-bar-update): Fix last change
12137         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
12138         cursor-sensor-functions should be a list of functions.
12140 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
12142         Use gmm-called-interactively-p in Gnus
12143         * lisp/gnus/gnus-topic.el (gnus-topic-mode): Use gmm-called-interactively-p.
12145 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
12147         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
12148         (Bug#20321)
12149         * lisp/cus-start.el (read-buffer-function): Don't advertize
12150         iswitchb-read-buffer any more.
12151         (iswitchb): Don't tweak this obsolete group any more.
12153 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
12155         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file
12157         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings
12158         Adding a string after a constructor's argument list will use
12159         that string as the constructor function docstring.  If this string
12160         is absent but the struct itself was given a docstring, use that as
12161         the constructor's docstring.
12162         Fixes (bug#17284).
12164 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
12166         Deprecate `intangible' and `point-entered' properties
12167         * lisp/emacs-lisp/cursor-sensor.el: New file.
12168         * lisp/simple.el (pre-redisplay-functions): New hook.
12169         (redisplay--pre-redisplay-functions): New function.
12170         (pre-redisplay-function): Use it.
12171         (minibuffer-avoid-prompt): Mark obsolete.
12172         (redisplay--update-region-highlight): Adapt it to work as a function on
12173         pre-redisplay-functions.
12174         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
12175         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
12176         than point-entered to make the prompt intangible.
12177         * lisp/forms.el: Move `provide' calls to the end.
12178         (forms-mode): Don't use `run-hooks' on a local var.
12179         (forms--make-format, forms--make-format-elt-using-text-properties):
12180         Use cursor-intangible rather than `intangible'.
12181         (forms-mode): Enable cursor-intangible-mode.
12182         * lisp/isearch.el (isearch-mode): Use defvar-local.
12183         (cursor-sensor-inhibit): Declare.
12184         (isearch-mode): Set cursor-sensor-inhibit.
12185         (isearch-done): Set it back.
12186         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
12187         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
12188         any more.
12189         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
12190         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
12191         Add Edebug spec.
12192         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
12193         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
12194         inhibit-point-motion-hooks any more.
12195         (ses--cell-at-pos, ses--curcell): New functions, extracted from
12196         ses-set-curcell.
12197         (ses-set-curcell): Use them.
12198         (ses-print-cell, ses-setup): Use cursor-intangible instead of
12199         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
12200         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
12201         Use ses--cell-at-pos.
12202         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
12203         extracted from ses-command-hook.  Make them work with multiple windows
12204         displaying the same buffer.
12205         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
12206         Enable cursor-intangible-mode.
12207         (ses-command-hook): Remove cell highlight and mode-line update code.
12208         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
12209         Update for new name of text-property holding the cell name.
12210         (ses-rename-cell): Don't mess with mode-line-process.
12211         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
12212         cursor-sensor-functions property instead of point-entered.
12213         (erc-insert-timestamp-right, erc-format-timestamp):
12214         Use cursor-intangible rather than `intangible'.
12215         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
12216         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
12217         cursor-sensor-mode if needed.
12218         (erc-echo-timestamp): Adapt to calling convention of
12219         cursor-sensor-functions.
12220         (erc-insert-timestamp-right): Remove unused vars `current-window' and
12221         `indent'.
12222         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
12223         (gnus-update-group-mark-positions): Remove unused `topic' var.
12224         (gnus-group-insert-group-line): Remove unused var `header'.
12225         (gnus-group--setup-tool-bar-update): New function.
12226         (gnus-group-insert-group-line): Use it.
12227         (gnus-group-update-eval-form): Declare local
12228         dynamically-bound variables.
12229         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
12230         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
12231         (gnus-group-prepare-topics, gnus-topic-update-topic)
12232         (gnus-topic-change-level, gnus-topic-catchup-articles)
12233         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
12234         Use inhibit-read-only.
12235         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
12236         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
12237         * lisp/textmodes/reftex-index.el (reftex-display-index):
12238         Use cursor-intangible-mode if available.
12239         (reftex-index-post-command-hook): Check cursor-intangible.
12240         * lisp/textmodes/reftex-toc.el (reftex-toc):
12241         Use cursor-intangible-mode if available.
12242         (reftex-toc-recenter, reftex-toc-post-command-hook):
12243         Check cursor-intangible.
12244         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
12245         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
12246         (sgml-tags-invisible): Use with-silent-modifications and
12247         inhibit-read-only.  Enable cursor-sensor-mode.
12248         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
12249         calling convention of cursor-sensor-functions.
12250         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
12251         (table-point-entered-cell-hook, table-point-left-cell-hook):
12252         Don't autoload.
12253         (table-cell-entered-state): Remove var.
12254         (table--put-cell-point-entered/left-property)
12255         (table--remove-cell-properties):
12256         Use cursor-sensor-functions rather than point-entered/left.
12257         (table--point-entered/left-cell-function): Merge
12258         table--point-entered-cell-function and table--point-left-cell-function
12259         and adjust to calling convention of cursor-sensor-functions.
12261         Update ldef-boots.el
12263         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
12265         * doc/misc/eieio.texi: Don't advertize now obsolete constructs
12267         Collapse successive char deletions in the undo log
12268         * src/cmds.c (remove_excessive_undo_boundaries): New function,
12269         extracted from Fself_insert_command.
12270         (Fdelete_char, Fself_insert_command): Use it.
12271         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
12272         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
12274         xterm and OSC 52: Add NEWS entry, and tweak the code
12275         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition to
12276         top-level.
12277         (terminal-init-xterm-activate-set-selection): Set a terminal property.
12278         (xterm--set-selection): Use it instead of checking the value of
12279         `terminal-initted'.  Don't use string-bytes.
12281 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
12283         xterm.el: Implement OSC-52 functionality for setting the X selection
12284         * lisp/term/xterm.el (xterm-max-cut-length): New var.
12285         (xterm--set-selection, terminal-init-xterm-activate-set-selection): New funs.
12286         (terminal-init-xterm, xterm--version-handler): Use them.
12288 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
12290         Remove left over code from when we used an obsolete/loaddefs.el file
12291         * lisp/subr.el (do-after-load-evaluation): Remove left over code from when
12292         we used an obsolete/loaddefs.el file.
12294         * cedet/semantic/fw.el: Use declare.
12295         * cedet/semantic/fw.el (semantic-exit-on-input)
12296         (semanticdb-without-unloaded-file-searches): Use declare.
12297         (semantic-fw-add-edebug-spec): Remove.
12299         (completion-lisp-mode-hook): Use completion-separator-chars
12300         * lisp/completion.el (completion-lisp-mode-hook):
12301         Use completion-separator-chars rather than local key binding.
12303         * src/*.c: Set deactivate_mark buffer-locally
12304         (Bug#20260)
12305         * src/insdel.c (prepare_to_modify_buffer_1):
12306         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
12307         buffer-locally.
12309 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
12311         python.el: Keep symmetry on sexp navigation with parens
12312         (Bug#19954)
12313         * lisp/progmodes/python.el
12314         (python-nav--forward-sexp): Add argument skip-parens-p.
12315         (python-nav-forward-sexp, python-nav-backward-sexp)
12316         (python-nav-forward-sexp-safe)
12317         (python-nav-backward-sexp-safe): Use it.
12318         * test/automated/python-tests.el
12319         (python-nav-forward-sexp-1): Fix test.
12321 2015-04-12  João Távora  <joaotavora@gmail.com>
12323         Don't use `setq-local' in Gnus code
12324         This might break upstream builds with older Emacsen
12325         * lisp/gnus/message.el (message-mode): Use `set' and
12326         `make-local-variable' instead of `setq-local'.
12328 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
12330         Update Makefile.in's .PHONY dependencies
12331         * Makefile.in (change-history-commit, master-branch-is-current)
12332         (no-ChangeLog): Now phony.
12334         Remove configure's --with-mmdf option
12335         * configure.ac (MAIL_USE_MMDF): Remove.
12336         * etc/NEWS: Document this.
12337         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
12338         (Bug#20308)
12340         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
12341         That way, 'make install' won't think it's a man page.
12342         Reported by Ashish SHUKLA in:
12343         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
12345         Improve 'make change-history' prereq tests
12346         * Makefile.in (gen_origin): Fix to match what's in the master branch.
12347         (no-ChangeLog, master-branch-is-current): New rules.
12348         (change-history): Depend on them, to avoid similar future problems.
12349         Escape the local-variables string to pacify Emacs when editing
12350         Makefile.in.
12352 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
12354         * test/automated/package-test.el (with-package-test): Kill Packages buffer
12356         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt
12357         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
12358         "Upgrade" last, and use capitalized instead of all-caps.
12360         * lisp/emacs-lisp/package.el: Completely silence async operations
12361         (package--make-autoloads-and-stuff): Silence autoloads.
12362         (package--save-selected-packages): New function, silences
12363         `customize-save-variable'.
12364         (package--user-selected-p, package-install-from-buffer)
12365         (package-delete, package-install): Use it.
12366         (package-install-from-archive)
12367         (package-menu--perform-transaction): Silence.
12368         (package-menu-execute): Feedback when operation starts.
12370         Use delay-mode-hooks when visiting the init-file
12371         * lisp/emacs-lisp/package.el (package--ensure-init-file):
12372         delay-mode-hooks
12373         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks
12375         * lisp/files.el: Only message when saving if save-silently is nil
12376         (save-silently): New variable.
12377         (files--message): New function.
12378         (find-file-noselect, save-buffer, basic-save-buffer)
12379         (basic-save-buffer-2, save-some-buffers, not-modified)
12380         (append-to-file): Use them.
12382 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
12384         Support debug declarations in pcase macros
12385         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
12386         (pcase-UPAT): Use it.  Remove "`".
12387         (pcase--edebug-match-macro): New function.
12388         (pcase-defmacro): Support debug declarations.
12389         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
12390         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
12391         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>: Add debug declaration.
12393         pcase.el: Edebug support for `app' and vector patterns
12394         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
12395         (pcase-UPAT): Use it. Support `app' patterns.
12396         (pcase-QPAT): Support vector patterns.
12398         edebug.el: Disambiguate vector specifications
12399         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
12400         `(vector ...)' as a vector specification, not as a sublist.
12402         (gnus-summary-refer-thread): Don't clobber unread articles
12403         This fixes a bug where `A T' causes "random" articles to become marked
12404         as read.
12405         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
12406         gnus-newsgroup-unreads remains sorted.
12408         mouse-sel.el: Fix mouse-sel-get-selection-function
12409         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
12410         Use gui--last-selected-text-primary instead of no longer existing
12411         gui-last-selected-text.
12413         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
12415         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
12417 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
12419         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate
12421         * lisp/emacs-lisp/package.el (list-packages): Call refresh in right buffer
12423         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations
12424         (byte-compile--interactive): New var.
12425         (byte-compile--message): New function.
12426         (byte-compile-log-1, byte-force-recompile)
12427         (byte-recompile-directory, byte-recompile-file)
12428         (byte-compile-file, compile-defun)
12429         (byte-compile-file-form-defmumble, byte-compile)
12430         (byte-compile-file-form-defalias, display-call-tree): Use it.
12432         * lisp/files.el: Don't message when nothing happened
12433         (save-some-buffers, basic-save-buffer): Before messaging to say
12434         "nothing was saved" check if (called-interactively-p 'any).
12436 2015-04-12  João Távora  <joaotavora@gmail.com>
12438         Summary: Improve sexp-based movement in message-mode
12439         Works by giving citations and smileys a different syntax.  This helps
12440         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
12441         sexp-based movement.
12442         * lisp/gnus/message.el (message--syntax-propertize): New function.
12443         (message-mode): Set syntax-related vars.
12444         (message-smileys): New variable.
12445         * test/automated/message-mode-tests.el: New file
12447 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
12449         Use bool for boolean in window.c
12450         * src/window.c: Omit unnecessary static function decls.
12451         (adjust_window_count, select_window, Fselect_window)
12452         (window_body_width, Fwindow_body_height, Fwindow_body_width)
12453         (set_window_hscroll, check_window_containing, Fwindow_at)
12454         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
12455         (unshow_buffer, replace_window, recombine_windows)
12456         (add_window_to_list, candidate_window_p, next_window)
12457         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
12458         (Fget_buffer_window, Fdelete_other_windows_internal)
12459         (replace_buffer_in_windows_safely, set_window_buffer)
12460         (Fset_window_buffer, Fforce_window_update)
12461         (temp_output_buffer_show, make_parent_window)
12462         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
12463         (resize_frame_windows, Fsplit_window_internal)
12464         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
12465         (Fresize_mini_window_internal, mark_window_cursors_off)
12466         (window_scroll, window_scroll_pixel_based)
12467         (window_scroll_line_based, scroll_command, Fscroll_other_window)
12468         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
12469         (Fmove_to_window_line, Fset_window_configuration)
12470         (delete_all_child_windows, apply_window_adjustment)
12471         (set_window_fringes, set_window_scroll_bars)
12472         (Fset_window_vscroll, foreach_window, foreach_window_1)
12473         (compare_window_configurations, Fcompare_window_configurations):
12474         Prefer 'bool', 'true', and 'false' for booleans.
12475         * src/window.h (WINDOW_MODE_LINE_LINES)
12476         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
12478 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
12480         Speed up byte-compilation and autoload generation by avoiding mode-hooks
12481         This prevents emacs-lisp-mode-hook from being run everytime an
12482         autoload file is generated, which can account for a fraction of
12483         package installation time depending on the hooks the user has
12484         configured.
12485         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
12486         * lisp/emacs-lisp/autoload.el (autoload-find-file)
12487         (autoload-find-generated-file): Use delay-mode-hooks.
12489         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'
12490         (package-menu-refresh): Respect async and do new package checking.
12491         (list-packages): Use `package-menu-refresh' instead of repeating code.
12493         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help
12494         (package--quick-help-keys): New variable.
12495         (package--prettify-quick-help-key): New function.
12496         (package-menu-quick-help): Use it.
12498         * lisp/emacs-lisp/package.el: Fix initially wrong compat table
12499         (package--build-compatibility-table): require finder
12501         * test/automated/package-test.el: Fix new test
12503         * lisp/emacs-lisp/package.el: Silence async operations
12504         (package--silence): New variable.
12505         (package--message): New function.
12506         (package-import-keyring, package-refresh-contents)
12507         (package-compute-transaction, package-install, package-delete)
12508         (package-menu--perform-transaction, package-menu-execute): Use it.
12510         * test/automated/package-test.el: Test async functionality
12511         (package-test-update-archives-async): New test
12513 2015-04-11  Daiki Ueno  <ueno@gnu.org>
12515         Utilize `make-process' in epg.el
12516         * lisp/epg.el (epg-error-output): Abolish.
12517         (epg-context): New slot `error-buffer'.
12518         (epg--start): Use `make-process' and `make-pipe-process'.
12519         (epg--process-filter): Remove code separating stderr from stdout.
12520         (epg-wait-for-completion): Simplify `error-output' handling.
12521         (epg-reset): Dispose error buffer.
12523 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
12525         * .gitignore: Ignore doc temps and outputs.
12527         Port commit-msg to MSYS Bash+Gawk
12528         See Eli Zaretskii in:
12529         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
12530         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
12531         (cent_sign, print_at_sign, at_sign): Revert previous change.
12532         (print_at_sign): Prepend "BEGIN".
12533         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
12535         Port commit-msg to broken MS-Windows shell
12536         * build-aux/git-hooks/commit-msg (cent_sign):
12537         Just use UTF-8 here rather than ASCII + printf, as the latter fails
12538         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
12539         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
12541 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
12543         Support GnuTLS v3.4 and later on MS-Windows
12544         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
12545         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
12546         GnuTLS DLL to load according to value of libgnutls-version.
12547         (Bug#20294)
12549 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
12551         Minor quoting etc. fixes to misc manuals
12552         Fix some minor quoting and spacing issues.  Distinguish more
12553         clearly among grave accent and apostrophe (which are ASCII) and
12554         single quote (which is not).  Prefer the standard terms
12555         "apostrophe" and "grave accent" to alternative names that can be
12556         confusing.  Use apostrophes to single-quote ASCII text.
12557         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
12558         rather than approximating it in ASCII with grave accent.
12560 2015-04-11  Daiki Ueno  <ueno@gnu.org>
12562         Respect more keyword args in `make-process'
12563         * process.c (Fmake_process): Respect `:sentinel' and `:filter'
12564         keywords as documented.
12566 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
12568         Extract ChangeLog entries when committing a directory
12569         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
12570         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
12571         Add a FIXME comment.
12572         (log-edit-changelog-entries): Extract from
12573         `log-edit-changelog-entries', handle FILE being a directory
12574         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
12576 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
12578         Fix problems found by --enable-gcc-warnings
12579         * src/process.c (create_process, Fmake_pipe_process)
12580         (Fmake_network_process): Omit unused locals.
12582         Fix commit-msg to handle scissors lines
12583         * build-aux/git-hooks/commit-msg:
12584         Ignore every line after a scissors line, such as a line generated
12585         by 'git commit -v'.  Problem reported by Johan Bockgård in:
12586         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
12588         port commit-msg to Gawk 3.0.4 (1999)
12589         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
12590         (print_at_sign, at_sign): New vars.  Use them to avoid problems
12591         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
12592         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
12594         Have commit-msg report commit failure
12595         * build-aux/git-hooks/commit-msg: If the commit is aborted,
12596         say so.  Simplify by doing this at the end.  Problem reported
12597         by Eli Zaretskii in:
12598         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
12600 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
12602         Clean up LDAP Configuration section of EUDC manual
12603         * doc/misc/eudc.texi: Combine indices.
12604         (LDAP Configuration): Use command markup.  Add index entries.
12605         Change formatting.  Wrap long lines.  Add noindent markup.
12607 2015-04-10  Daiki Ueno  <ueno@gnu.org>
12609         Add facility to collect stderr of async subprocess
12610         * src/w32.h (register_aux_fd): New function declaration.
12611         * src/w32.c (register_aux_fd): New function.
12612         * src/process.h (struct Lisp_Process): New member stderrproc.
12613         * src/process.c (PIPECONN_P): New macro.
12614         (PIPECONN1_P): New macro.
12615         (Fdelete_process, Fprocess_status, Fset_process_buffer)
12616         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
12617         (Fcontinue_process): Handle pipe process specially.
12618         (create_process): Respect p->stderrproc.
12619         (Fmake_pipe_process): New function.
12620         (Fmake_process): Add new keyword argument :stderr.
12621         (wait_reading_process_output): Specially handle a pipe process when
12622         it gets an EOF.
12623         (syms_of_process): Register Qpipe and Smake_pipe_process.
12624         * doc/lispref/processes.texi (Asynchronous Processes): Document
12625         `make-pipe-process' and `:stderr' keyword of `make-process'.
12626         * lisp/subr.el (start-process): Suggest to use `make-process' handle
12627         standard error separately.
12628         * test/automated/process-tests.el (process-test-stderr-buffer)
12629         (process-test-stderr-filter): New tests.
12630         * etc/NEWS: Mention new process type `pipe' and its usage with the
12631         `:stderr' keyword of `make-process'.
12633 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
12635         Minor quoting etc. fixes to lispref manual
12636         * doc/lispref/tips.texi (Documentation Tips):
12637         Distinguish more clearly among grave accent, apostrophe,
12638         and single quote.
12639         * doc/lispref/README, doc/lispref/buffers.texi:
12640         * doc/lispref/commands.texi, doc/lispref/control.texi:
12641         * doc/lispref/customize.texi, doc/lispref/display.texi:
12642         * doc/lispref/elisp.texi, doc/lispref/files.texi:
12643         * doc/lispref/frames.texi, doc/lispref/hash.texi:
12644         * doc/lispref/help.texi, doc/lispref/internals.texi:
12645         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
12646         * doc/lispref/markers.texi, doc/lispref/modes.texi:
12647         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
12648         * doc/lispref/os.texi, doc/lispref/positions.texi:
12649         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
12650         * doc/lispref/text.texi, doc/lispref/tips.texi:
12651         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
12652         Use American-style double quoting in ordinary text,
12653         and quote 'like this' when single-quoting in ASCII text.
12654         Also, fix some minor spacing issues.
12656 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
12658         Handle symlinked test directory in tramp-tests.el
12659         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
12660         (tramp--test-check-files): Use `file-truename' for directories.
12662 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
12664         Fix 'recenter' when visual-line-mode is turned on
12665         * src/window.c (Frecenter): Use the same code for GUI and TTY
12666         frames alike; use vmotion only for "initial" frames.  This is
12667         because vmotion doesn't support visual-line-mode.  Rewrite the
12668         'iarg >= 0' case to use move_it_* functions instead of using
12669         vmotion, for the same reason.  Fix the clipping of the argument
12670         value to support scroll-margin in all cases and avoid unwarranted
12671         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
12672         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
12673         which see.
12675 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
12677         * abbrev.el (define-abbrev-table): Refine last change.
12679         cl-lib.el: Partial revert of "2015-04-05 Rationalize c[ad]+r"
12680         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
12681         use of c[ad]+r", so as to keep the "cl-" prefix on all
12682         cl-lib definitions.
12684         * vhdl-mode.el (vhdl-prepare-search-2): Use inhibit-point-motion-hooks
12686         * lisp/cedet/semantic: Remove some dead code
12687         * lisp/cedet/semantic/util-modes.el
12688         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
12689         any more.
12690         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
12691         not supported any more.
12692         (semantic-safe): Use `declare'.
12693         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
12694         (semantic-tag-intangible-p): Remove unused functions.
12695         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
12696         Remove unused function.
12698         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
12699         (gnus-article-hide-text, gnus-article-unhide-text)
12700         (gnus-article-unhide-text-type): Remove special handling of
12701         `intangible' since that property is not used any more.
12702         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
12704 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
12706         Use the VC root in `log-edit-listfun'
12707         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
12708         `log-edit-listfun'.
12710 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
12712         Fix description of Unix time, mention new function.
12713         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
12714         Unix time.
12715         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
12716         (Basic Operations on Units): Mention `calc-convert-exact-units'.
12718 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
12720         * lisp/emacs-lisp/package.el: Use mode-line-process for notification
12722 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
12724         (log-edit-insert-changelog-entries): Don't add newline after the last entry
12725         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
12726         Don't add newline after the last entry.
12728 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
12730         css-mode.el: Add "not" pseudo-class
12731         (Bug#20267)
12732         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
12733         list of CSS pseudo-classes.
12735 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
12737         etc/NEWS: Add missing entry for "Stop messing with the EMACS env var"
12739 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
12741         Stop messing with the EMACS env var
12742         * misc.texi (Interactive Shell): Remove description of EMACS env var.
12744 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
12746         Adapt 'make change-history' to coding cookie
12747         * Makefile.in (change-history): Adjust to change of format of
12748         ChangeLog file, which now has a coding cookie before an indented
12749         copyright notice.
12751 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
12753         Adapt 'make change-history' to coding cookie
12754         * Makefile.in (change-history): Adjust to change of format of
12755         ChangeLog file, which now has a coding cookie before an indented
12756         copyright notice.
12758         gitlog-to-changelog coding cookie and mv -i
12759         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
12760         for copyright notice prototype, so that we get a proper "coding:"
12761         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
12762         existing ChangeLog.  Problems reported by Eli Zaretskii in:
12763         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
12765         Merge from gnulib
12766         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
12767         2015-04-09 gitlog-to-changelog: port to MS-Windows
12769 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
12771         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
12772         (Bug#20212)
12774 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
12776         Stop messing with the EMACS env var
12777         (Bug#20202)
12778         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
12779         * lisp/comint.el (comint-exec-1):
12780         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
12781         * lisp/progmodes/compile.el (compilation-start): Same and bring
12782         INSIDE_EMACS's format in line with other users.
12784         css-mode.el (css-smie-rules): Fix indentation after complex selectors
12785         (Bug#20282)
12786         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
12787         inner structure of selectors.
12789 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
12791         python.el: Indent docstring lines to base-indent
12792         (Bug#19595)
12793         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
12794         an initial patch.
12795         * lisp/progmodes/python.el
12796         (python-indent-context): Add :inside-docstring context.
12797         (python-indent--calculate-indentation): Handle :inside-docstring.
12798         (python-indent-region): Re-indent docstrings.
12799         * test/automated/python-tests.el (python-indent-region-5)
12800         (python-indent-inside-string-2): Fix tests.
12802         python.el: Increase native completion robustness
12803         (Bug#19755)
12804         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
12805         this and providing useful ideas.
12806         * lisp/progmodes/python.el
12807         (python-shell-completion-native-output-timeout): Increase value.
12808         (python-shell-completion-native-try-output-timeout): New var.
12809         (python-shell-completion-native-try): Use it.
12810         (python-shell-completion-native-setup): New readline setup avoids
12811         polluting current context, ensures output when no-completions are
12812         available and includes output end marker.
12813         (python-shell-completion-native-get-completions): Trigger with one
12814         tab only.  Call accept-process-output until output end is found or
12815         python-shell-completion-native-output-timeout is exceeded.
12817 2015-04-08  Samer Masterson  <samer@samertm.com>
12819         * lisp/eshell: Make backslash a no-op in front of normal chars
12820         (Bug#8531)
12821         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
12822         (eshell-parse-backslash): Return escaped character after backslash
12823         if it is special.  Otherwise, if the backslash is not in a quoted
12824         string, ignore the backslash and return the character after; if
12825         the backslash is in a quoted string, return the backslash and the
12826         character after.
12827         * test/automated/eshell.el (eshell-test/escape-nonspecial)
12828         (eshell-test/escape-nonspecial-unicode)
12829         (eshell-test/escape-nonspecial-quoted)
12830         (eshell-test/escape-special-quoted): Add tests for new
12831         `eshell-parse-backslash' behavior.
12833 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
12835         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
12836         after the file name.
12837         (Bug#20276)
12839 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
12841         Minor quoting etc. fixes to Emacs manual
12842         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
12843         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
12844         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
12845         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
12846         * doc/emacs/indent.texi, doc/emacs/macos.texi:
12847         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
12848         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
12849         * doc/emacs/search.texi, doc/emacs/trouble.texi:
12850         * doc/emacs/vc1-xtra.texi:
12851         Use American-style double quoting in ordinary text,
12852         and quote 'like this' when single-quoting in ASCII text.
12853         Also, fix some minor spacing issues.
12855         Minor quoting etc. fixes to elisp intro
12856         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
12857         American-style double quoting in ordinary text.  In ASCII text,
12858         consistently quote 'like this' instead of `like this', unless
12859         Emacs requires the latter.
12861 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
12863         * CONTRIBUTE: Mention log-edit-insert-changelog.
12865         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
12867 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
12869         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
12871 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
12873         (eieio-copy-parents-into-subclass): Fix inheritance of initargs
12874         (Bug#20270)
12875         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
12876         Fix inheritance of initargs.
12878 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
12880         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
12881         while dowloading information.
12883         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
12884         (package--ensure-init-file): Check file contents before visiting.
12885         (package-initialize): Call it.
12886         (package-install-from-buffer, package-install): Don't call it.
12888 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
12890         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800
12891         (Bug#17517)
12893 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
12895         Fix nasty scoping bug in tramp-cache.el
12896         * lisp/net/tramp-cache.el (tramp-flush-file-property): Fix nasty scoping bug.
12898 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
12900         Add notice to visual commands section
12901         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
12902         such as git call less with its -F option which omits pagination if
12903         the contents is less than one page long.  This interferes with
12904         eshell's visual (sub-)commands.
12906 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
12908         ffap: Support environment variable expansion in file names
12909         (Bug#19839)
12910         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
12911         environment variable expansion in file names.
12913 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
12915         Prefer double-quote to accent-grave in man pages
12917 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
12919         (Bug#20257)
12920         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
12922 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
12924         Update etc/PROBLEMS.
12925         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
12926         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
12927         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
12928         respectively); other minor updates and tweaks.  (Bug#20011)
12930 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
12932         Add doc strings for some Isearch state vars
12933         * lisp/misearch.el (multi-isearch-buffer-list)
12934         (multi-isearch-file-list): Add doc strings.
12935         (Bug#20232)
12937 2015-04-07  Alan Mackenzie  <acm@muc.de>
12939         Always mark "<" and ">" in #include directives with text properties.
12940         * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock "anchored
12941         matcher" with an invocation of c-make-font-lock-search-function to allow
12942         fontification when there's no trailing space on an "#include <..>" line.
12944 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
12946         Generate a ChangeLog file from commit logs
12947         * .gitignore: Add 'ChangeLog'.
12948         * build-aux/gitlog-to-changelog: New file, from Gnulib.
12949         * build-aux/gitlog-to-emacslog: New file.
12950         * CONTRIBUTE: Document the revised workflow.
12951         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
12952         instead of just special cases.
12953         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
12954         (ChangeLog, unchanged-history-files, change-history)
12955         (change-history-commit): New rules.
12956         * admin/admin.el (make-manuals-dist--1):
12957         Don't worry about doc/ChangeLog.
12958         * admin/authors.el: Add a FIXME.
12959         * admin/make-tarball.txt:
12960         * lisp/calendar/icalendar.el:
12961         * lisp/gnus/deuglify.el:
12962         * lisp/obsolete/gulp.el:
12963         * lwlib/README:
12964         Adjust to renamed ChangeLog history files.
12965         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
12966         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
12967         Remove obsolete discussion of merging ChangeLog files.
12968         New section "Maintaining ChangeLog history".
12969         * build-aux/git-hooks/pre-commit:
12970         Reject attempts to commit files named 'ChangeLog'.
12971         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
12972         * make-dist: Make and distribute top-level ChangeLog if there's a
12973         .git directory.  Distribute the new ChangeLog history files
12974         instead of scattered ChangeLog files.  Distribute the new files
12975         gitlog-to-changelog and gitlog-to-emacslog.
12976         (Bug#19113)
12978         Rename ChangeLogs for gitlog-to-changelog
12979         This patch was implemented via the following shell commands:
12980         find * -name ChangeLog |
12981         sed 's,.*,git mv & &.1,
12982         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
12983         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
12984         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
12985         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
12986         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
12987         sh
12988         git commit -am"[this commit message]"
12990 This file records repository revisions from
12991 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
12992 commit 20b4625117b0303eaba1ef81085f0feb9062695a (inclusive).
12993 See ChangeLog.1 for earlier changes.
12995 ;; Local Variables:
12996 ;; coding: utf-8
12997 ;; End:
12999   Copyright (C) 2015 Free Software Foundation, Inc.
13001   This file is part of GNU Emacs.
13003   GNU Emacs is free software: you can redistribute it and/or modify
13004   it under the terms of the GNU General Public License as published by
13005   the Free Software Foundation, either version 3 of the License, or
13006   (at your option) any later version.
13008   GNU Emacs is distributed in the hope that it will be useful,
13009   but WITHOUT ANY WARRANTY; without even the implied warranty of
13010   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13011   GNU General Public License for more details.
13013   You should have received a copy of the GNU General Public License
13014   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.