addpm.c: Do not add obsolete GTK libraries to the path.
[emacs.git] / ChangeLog.2
blob8c30a11a11dcf5dc1b0602383ac8684a0aae575b
1 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
3         Minor edits in Tramp
5         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
6         Declare it.
8         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
9         Remove declaration.
11 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
13         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list
15 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
17         Avoid crashes when redisplayng a window changes faces or fonts
19         * src/xdisp.c (redisplay_internal): If redisplaying the selected
20         window or one of the frames turns on the frame's 'redisplay' flag,
21         redisplay again.  (Bug#21428)
23         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
25 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
27         Solve timimg issues in file-notify-tests.el
29         * test/automated/file-notify-tests.el (file-notify-test02-events):
30         Rectify `attribute-change' tests.  There are timing issues with
31         gfilenotify.  (Bug#21669)
33 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
35         Fix quoting of data within htmlfontify doc
37         * doc/misc/htmlfontify.texi (Data Structures, Customization):
38         Fix quoting of data structures.  A Lisp quote is needed only
39         when data appears within Lisp code.
41 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
43         * emacs-lisp/package.el: Reload archive-contents if priorities change
45         (package--old-archive-priorities): New variable.
46         (package-read-all-archive-contents, package-menu--refresh): Use it
47         to decide when the `package-archive-contents' needs to be read
48         again.
50 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
52         Make src headers idempotent and standalone
54         Redo src/*.h so that each include file is idempotent (that is, can
55         be included multiple times with the latter inclusions having no
56         effect) and standalone (that is, can be included by itself,
57         with no include file other than config.h needed as a prerequisite).
58         This is standard practice in GNU programs nowadays.
59         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
60         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
61         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
62         * src/regex.h [emacs]:
63         * src/syntax.h, src/systty.h, src/termhooks.h:
64         Include lisp.h, for Lisp_Object.
65         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
66         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
67         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
68         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
69         * src/termopts.h, src/tparam.h, src/unexec.h:
70         Protect against multiple inclusion.
71         * src/buffer.h: Include character.h, for STRING_CHAR.
72         * src/emacsgtkfixed.h (struct frame):
73         * src/fontset.h (struct face):
74         * src/region-cache.h (struct buffer):
75         * src/termhooks.h (struct glyph):
76         * src/xsettings.h (struct x_display_info):
77         Add possibly-forward decl.
78         * src/syntax.h: Include buffer.h, for BVAR.
79         * src/sysselect.h: Include lisp.h, for eassume.
80         * src/termchar.h: Include <stdio.h>, for FILE.
81         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
82         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
84 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
86         Handle symlink targets containing spaces in tramp-gvfs.el
88         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
89         Handle symlink targets containing spaces.
91 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
93         * custom.el (custom-theme-load-path): Demote to defvar
95         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
96         same reason that `load-path' shouldn't.  Setting it via the customize
97         interface is a trap for the user.
99         Installed themes commonly add themselves to this variable, which means
100         its value is not fit for being saved (it will permanently remember dirs
101         that don't exist anymore).
103         This is aggravated by the fact that Emacs always applies the `user'
104         theme on top of any theme that's loaded, since this will apply the old
105         variable value and remove any new directories that had been recently
106         added by themes themselves.
108         Not to mention, we already have `custom-theme-directory', which is safe
109         to customize.
111 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
113         * lisp/mpc.el: Rename the new toggling commands
115         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
116         (mpc-toggle-shuffle): Add "-toggle" in the name.
118 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
120         Improve the doc string of 'completion-boundaries'
122         * lisp/minibuffer.el (completion-boundaries): Rename the argument
123         TABLE to COLLECTION, for consistency with other high-level
124         completion functions.  Document how COLLECTION is called if it
125         is a function.  (Bug#21644)
127 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
129         lisp/dired-aux.el (dired-shell-command): Fix compile warning
131 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
133         Make dired-do-compress work for *.zip files
135         * lisp/dired-aux.el (dired-check-process): Transform the top-level
136           comment into a docstring.
137         (dired-shell-command): New command. This mirrors
138         `dired-check-process', but is more user-friendly for passing
139         arguments.
140         (dired-compress-file-suffixes): Allow to specify the command switches
141         along with input (%i) and output (%o) inside the PROGRAM part.
142         Add an entry for *.zip files, and update the entry for *.tar.gz files
143         to the new style. Update the docstring.
144         (dired-compress-file): When PROGRAM matches %i or %o, use the new
145         logic.
146         (dired-update-file-line): Avoid an error when at end of buffer.
148         Fixes Bug#21637
150 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
152         Minor improvement in documentation of internals
154         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
156 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
158         Improve documentation of COLLECTION in completion functions
160         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
161         cross-reference to "Programmed Completion".
163         * src/minibuf.c (Fcompleting_read): Improve the doc string.
164         (Bug#21644)
166 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
168         Add more release info to etc/HISTORY
170         * etc/HISTORY: Add more release information about 19.x and 20.x
171         versions.
173 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
175         New file etc/HISTORY
177         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
178         * etc/HISTORY: New file.
179         * etc/NEWS: Mention it.
181 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
183         js-mode: Don't misindent generator methods
185         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
186         generator methods from multiplication operator
187         (https://github.com/mooz/js2-mode/issues/275).
189 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
191         Fix animation timeout delay calculation
193         * lisp/image.el (image-animate-timeout):
194         Don’t assume speed is floating-point.
196 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
198         Add commands for controlling MPD modes
200         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
201         (mpc-cmd-single): New functions.
202         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
203         (mpc-mode-menu): Add new commands as menu items.
205 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
207         Refer to `(elisp)Basic Completion' in completing-read docstring
209         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
210         Completion' in the docstring (bug#21644).
212 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
214         * lisp/mpc.el (mpc-format): Always push form to pred
216 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
218         Spelling fixes
220         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
221         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
222         Fix misspelling of nonexistent file name.
224 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
226         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
228 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
230         Some editing fixes in Tramp
232         * lisp/net/tramp-gvfs.el:
233         * doc/misc/tramp.texi: "customer option" -> "custom option".
235         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
237 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
239         Use proper localization in tramp-gvfs.el
241         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
242         Suppress localized settings in order to proper parse gfvs output.
244 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
246         Fix Bug#21562
248         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
249         Quote argument in proper order.  (Bug#21562)
251 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
253         Fix typos in docstrings
255         * lisp/emacs-lisp/map.el:
256         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
257           macros.
259 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
261         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
263 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
265         Make dired-jump work with tar-subfile-mode
267         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
268           emitting an error, switch to `tar-superior-buffer'.
270 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
272         * .gitignore: Add build-aux/ar-lib.
274 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
276         Better docstrings in seq.el and map.el
278         * lisp/emacs-lisp/map.el:
279         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
281 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
283         Merge from gnulib
285         This incorporates:
286         2015-10-13 binary-io, u64, unistd: port to strict C
287         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
288         2015-09-25 c-ctype: port better to z/OS EBCDIC
289         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
290         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
291         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
292         Copy from gnulib.
294 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
296         Take XPNTR private
298         * src/alloc.c (PURE_POINTER_P): Remove.
299         All uses replaced with PURE_P.
300         (XPNTR_OR_SYMBOL_OFFSET): New function.
301         (XPNTR): Move here from lisp.h.
302         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
303         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
304         Remove unnecessary cast.
305         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
306         to avoid an unnecessary runtime test for symbols.
307         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
308         Only alloc.c needs XPNTR now.
310 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
312         Add MPC play/pause command
314         * lisp/mpc.el (mpc-toggle-play): New command.
315         (mpc-mode-map): Bind it to "s".
316         (mpc-mode-menu): Add corresponding menu item.
318 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
320         Add bindings and menu items for prev and next tracks
322         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
323         "<" to mpc-prev.
324         (mpc-mode-menu): Add corresponding menu items
326 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
328         Reduce face-related consing during frame creation.
330         * faces.el (face--attributes-unspecified): Compute the "unspecified"
331         attribute list once.
332         (face-spec-reset-face): Use it instead of building the list.
334 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
336         Do process ConfigureNotify events indicating size changes.
338         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
339         events don't have the same size, process each one.
341 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
343         Derive mpc-mode from special-mode
345         lisp/mpc.el (mpc-mode-map): Make from sparse keymap. Unbind g.
346         (mpc-mode): Derive from special mode.
347         (mpc-songs-mode-map): Don't set parent keymap.
349 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
351         Fix error messages for when covers are not found.
353         The last change to mpc-format let the binding to file call
354         mpc-file-local-copy with nil argument. Instead, employ if-let here so
355         nil bindings don't result in needless computation and errors.
356         * lisp/mpc.el: Require 'subr-x at compile time.
357         * lisp/mpc.el (mpc-format): Use if-let.
359 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
361         Make dired-do-compress work for *.tar.gz files
363         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
364           "tar -zxvf" to *.tar.gz; update docstring.
366         (dired-compress-file): Allow to specify switches after the command in
367         `dired-compress-file-suffixes'.
369 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
371         Make dired-do-compress work for directories
373         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
374           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
375         Also convert the top comment into a docstring.
377 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
379         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
381         ... since it might come straight from the memoizing table.
383 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
385         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
387 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
389         Use special-mode in eww list modes
391         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
392         (eww-buffers-mode): Derive from special-mode and remove redundant
393         setting of buffer-read-only.
394         (eww-mode-map): Remove redundant keymap parent setting.
395         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
396         Remove redundant keymap suppressions and mappings.
398 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
400         Allow setting frame pixel sizes from frame parameters (Bug#21415)
402         Also fix some misfeatures in frame (re-)sizing code, add more
403         debugging information and remove some dead code.
405         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
406         parameter names when setting `frame-size-history'.
407         (frame--size-history): New function.
409         * src/frame.c (frame_inhibit_resize): If frame has not been made
410         yet, return t if inhibit_horizontal_resize or
411         inhibit_vertical_resize bit have been set.
412         (adjust_frame_size): Simplify.
413         (make_frame): Initialize inhibit_horizontal_resize,
414         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
415         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
416         inhibit_vertical_resize slots.
417         (x_set_frame_parameters): Handle `text-pixels' specification for
418         width and height parameters.  Don't consider new_height or
419         new_width changes.  Call adjust_frame_size instead of
420         Fset_frame_size.
421         (x_figure_window_size): Two new arguments x_width and y_width
422         returning frame's figures width and height.  Calculate tool bar
423         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
424         Handle `text-pixels' specification for width and height
425         parameters.
426         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
427         (Qx_set_window_size_1, Qx_set_window_size_2)
428         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
429         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
430         (Qfree_frame_menubar_2): New symbols.
431         * src/frame.h (structure frame): New booleans
432         tool_bar_redisplayed, tool_bar_resized,
433         inhibit_horizontal_resize, inhibit_vertical_resize.
434         (x_figure_window_size): Update external declaration.
435         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
436         calling gtk_window_resize.
437         (update_frame_tool_bar): Make inhibiting of frame resizing more
438         discriminative.  Set tool_bar_resized bit.
439         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
440         resizing more discriminative.  Call adjust_frame_size instead of
441         x_set_window_size.
442         (Fx_create_frame): Handle x_width and x_height if
443         set by x_figure_window_size.
444         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
445         subtract 3 from tool bar height.
446         (x_set_window_size): Add frame_size_history_add call.
447         (x_new_font): Call adjust_frame_size instead of
448         x_set_window_size.
449         * src/w32fns.c (x_change_tool_bar_height): Reset
450         tool_bar_redisplayed and tool_bar_resized bits when adding tool
451         bar.  Make inhibiting of frame resizing more discriminative.
452         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
453         (Fx_create_frame): Handle x_width and x_height if set by
454         x_figure_window_size.  Set size hints before adjusting frame size.
455         (x_create_tip_frame): Adjust x_figure_window_size call.
456         * src/w32term.c (x_set_window_size): Add frame_size_history_add
457         call.
458         * src/widget.c (set_frame_size): Remove dead code.  Add
459         frame_size_history_add call.  When frame_resize_pixelwise is t
460         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
461         pixel_width and pixel_height.
462         (update_various_frame_slots): Remove dead code.
463         (EmacsFrameResize): Add more information in
464         frame_size_history_add call.
465         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
466         is not set.
467         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
468         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
469         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
470         tool_bar_resized bits when adding tool bar.  Make inhibiting of
471         frame resizing more discriminative.
472         (Fx_create_frame): Handle x_width and x_height if set by
473         x_figure_window_size.  Set size hints before adjusting frame size.
474         (x_create_tip_frame): Adjust x_figure_window_size call.
475         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
476         (set_frame_menubar): On Lucid never add core-border-width to
477         avoid that adding XtNinternalBorderWidth adds it again.
478         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
479         * src/xterm.c (x_new_font): In non-toolkit case handle size
480         change of menu bar.
481         (x_set_window_size_1): Fix calls to frame_size_history_add.
482         (x_wm_set_size_hint): Remove dead code.  Set
483         size_hints.min_width and size_hints.min_height to base_width and
484         base_height.
486 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
488         * test/automated/file-notify-tests.el (file-notify--test-timeout):
490         Add docstring.  Increase to 10 seconds for remote
491         directories.  (Bug#21669)
493 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
495         Unmacroize ebrowse.c and etags.c a bit
497         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
498         (streq, filename_eq, set_flag, has_flag): Now inline functions.
499         (set_flag): First arg is now an address, not an lvalue.
500         All callers changed.
501         (filename_eq, set_flag, has_flag):
502         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
503         All callers changed.
504         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
505         Now inline functions.  Remove asserts that are unnecessary these
506         days (and in some cases were too-generous anyway).
508 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
510         Use highlight for current items.
512         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
513         Apply highlight face instead of region face.
515 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
517         Search for more cover image names in MPC
519         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
520         case insensitively
522 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
524         Remove or comment out unused variables
526         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
527         nontext_cursor, mode_cursor, hand_cursor and count.
528         (x_change_tool_bar_height): Remove variable old_text_height.
529         (deliver_wm_chars): Remove variable strip_Alt.
530         (Fw32_shell_execute): Remove variable document_a.
531         (Fw32_frame_geometry): Remove variable fullboth.
532         * src/w32term.c (w32_setup_relief_color): Comment out variable
533         w32_display_info.
534         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
535         (w32_read_socket): Comment out variables rows, columns.
536         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
538 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
540         * src/w32proc.c (sys_select): Fix bitwise test.
542 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
544         Minor typo corrections in doc strings
546         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
547         Doc fixes.
549 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
551         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
553 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
555         Attempt to avoid crashes in plist-member
557         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
558         and a call to XCDR.  (Bug#21655)
560 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
562         In gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
564         * lisp/select.el (gui-get-primary-selection): In gui-get-primary-selection
565         use gui--selection-value-internal (Bug#20906)
567 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
569         Support RTF in doc-view
571         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
573 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
575         * w32fns.c (get_wm_chars): Increment counter, not pointer.
577 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
579         Replace the usage of an obsolete function in auth-source.el
581         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token): Replace an
582           usage of `epg-context-set-armor' with `setf'.
584 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
586         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
588 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
590         Have calc-yank recognize numbers in different bases.
592         * lisp/calc/calc-yank.el (math-number-regexp): New function.
593         (calc-yank): Use `math-number-regexp' to recognize numbers.
595 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
597         Handle an opaque-move X11 window manager operation more efficiently.
599         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
600         followed by more ConfigureNotify events for the same window, process
601         only the last one.
603 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
605         Fix cursor setting for tip frame; re-enable cursor generation.
607         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
608         attributes sent when creating the new X window.  Don't skip setting
609         the pointerColor parameter.
611 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
613         Rewrite x_set_mouse_color to sync less.
615         We can track serial numbers of X requests and correlate error events
616         with the associated requests.  This way we can identify errors for
617         specific calls without having to use XSync after every one.
619         * src/xfns.c (enum mouse_cursor): New type.
620         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
621         (mouse_cursor_types): New array listing the Lisp variables and default
622         cursor appearances for each cursor type.
623         (x_set_mouse_color_handler): New function; checks error event serial
624         number against submitted requests.
625         (x_set_mouse_color): Updated to use the new error handler callback,
626         and to be more table-driven, to simplify repetitious code.
628 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
630         Add x_catch_errors_with_handler.
632         * src/xterm.c (struct x_error_message_stack): Add new fields for a
633         callback function and associated data pointer.
634         (x_error_catcher): If the callback function is set, call it after
635         saving the error message string.
636         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
637         accepts a callback function and data pointer.
638         (x_catch_errors): Now a wrapper function.
639         * src/xterm.h (x_special_error_handler): New typedef.
640         (x_catch_errors_with_handler): Declare.
642 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
644         Introduce x_uncatch_errors_after_check to reduce XSync calls.
646         Both x_had_errors_p and x_check_errors call XSync, so if they're
647         immediately followed by x_uncatch_errors, its XSync call will be
648         redundant, resulting in a wasted round trip to the X server.
650         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
651         x_uncatch_errors without the XSync call.
652         (XTmouse_position, x_wm_supports):
653         * src/xfns.c (x_set_mouse_color):
654         * src/xmenu.c (Fx_menu_bar_open_internal):
655         * src/xselect.c (x_own_selection, x_get_foreign_selection):
656         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
657         * src/xterm.h (x_uncatch_errors_after_check): Declare.
659 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
661         Document the optional prefix to `calc-yank'.
663         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
664         prefix to `calc-yank'.
665         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
666         the Calc buffer are yanked back unchanged.
668 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
670         * lisp/calendar/calendar.el: Display buffer before executing body.
672         In each use of this macro, the modeline is derived from a window width
673         calculation, which will be wrong if (display-buffer) splits the window
674         horizontally.
676 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
678         Use ‘echo’ safely with ‘\’ or leading ‘-’
680         POSIX says that ‘echo FOO’ produces implementation-defined output
681         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
682         behavior in that case.
683         * Makefile.in (removenullpaths): Remove.
684         (epaths-force): Rewrite to avoid the need for ‘echo’.
685         (install-etc): Be clearer about escaping the shell metacharacters
686         ‘\’ and ‘$’.
687         * Makefile.in (install-arch-indep, install-etcdoc):
688         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
689         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
690         * configure.ac, lib-src/rcs2log, make-dist:
691         * src/Makefile.in (lisp.mk):
692         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
693         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
694         if $foo can contain arbitrary characters.
695         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
696         * doc/lispref/two-volume.make (vol1.pdf):
697         * test/etags/make-src/Makefile (web ftp publish):
698         Use ‘printf’ rather than ‘echo -e’.
700 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
702         Allow numbers with different radixes to be yanked.
704         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
705         default base 10.
707 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
709         Improve CHECK_IMPURE and PURE_P speedup
711         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
713 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
715         Use events instead of chars to keep track of steps.
717         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
718         to keep track of steps.
720 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
722         Fix --enable-gcc-warnings problem with older GCC
724         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
725         This is for building with --enable-gcc-warnings with
726         GCC 4.6 through 5.0.
728 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
730         Fix vertical-motion in truncated lines that end in a stretch
732         * src/indent.c (Fvertical_motion): Expect overshoot when point is
733         beyond window margin and lines are truncated, even if we have a
734         stretch at point.  (Bug#21468)
736 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
738         Avoid link-time errors due to inline functions
740         * src/emacs.c: Include puresize.h, to avoid link-time errors in
741         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
742         inline functions.
744 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
746         * src/data.c (Faset): Fix last change.
748 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
750         CHECK_IMPURE and PURE_P speedup
752         * src/intervals.c (create_root_interval):
753         Do CHECK_IMPURE only for strings; not needed for buffers.
754         Prefer ! STRINGP to BUFFERP, for a tad more speed.
755         * src/puresize.h (CHECK_IMPURE, PURE_P):
756         Now inline functions instead of macros.
757         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
758         All callers changed.
759         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
760         All callers changed.
762 2015-10-09  Noah Friedman  <friedman@splode.com>
764         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
766 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
768         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
770         our after-change-function, rather than re-adding it if it was removed.
772 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
774         * lisp/cedet/ede: Silence some compiler warnings
776         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
777         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
778         (ede-apply-object-keymap, ede-reset-all-buffers)
779         (ede-auto-add-to-target): Use dolist.
780         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
781         Use field names rather than initarg names in `oref'.
782         (ede-load-project-file): Remove unused var `file'.
783         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
784         (ede-set): Remove unused var `a'.
786         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
787         (ede-project-autoload): Avoid the old-style "name" argument.
788         (ede-emacs-find-matching-target): Use field names rather than initarg
789         names in `oref'.
791         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
792         (ede-linux-load, ede-project-autoload): Avoid the old-style "name" argument.
793         (ede-linux-find-matching-target): Use field names rather than initarg
794         names in `oref'.
796 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
798         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
800 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
802         * lisp/progmodes/prolog.el: Avoid indenting too much, after ":-"
804         (prolog-smie-rules): Try and avoid indenting too far after ":-".
806 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
808         Update case-table and categories of recently added characters
810         * lisp/international/characters.el: Update information about Latin
811         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
812         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
813         blocks.  (Byug#21654)
815 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
817         In adjust_frame_size don't count minibuffer height twice (Bug#21643)
819         * src/frame.c (adjust_frame_size): In minibuffer-only windows
820         don't count minibuffer height twice.  (Bug#21643)
822 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
824         Avoid inflooping in font-lock
826         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
827         inhibit-field-text-motion around the call to
828         line-beginning-position, to avoid inflooping.  (Bug#21615)
830 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
832         Refactor duplicated code; ensure default is in completions
834         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps): New function.
835         (reftex-extract-bib-entries): Use it.
836         (reftex-extract-bib-entries-from-thebibliography): Use it.
838 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
840         Typo in example
842         * autotype.texi (Skeletons as Abbrevs): "if" -> "ifst" in the example.
844 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
846         * lisp/calc/calc.el: Silence byte-compiler warnings
848         (calc-scan-for-dels): Use ignore-errors.
849         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
850         (calc-read-key-sequence): Remove unused var `prompt2'.
851         (calc-kill-stack-buffer): Remove unused var `buflist'.
852         (calc): Remove unused var `oldbuf'.
853         (calc-refresh): Use inhibit-read-only.
854         (calc-can-abbrev-vectors): Declare.
855         (calc-record): Remove unused var `mainbuf'.
856         (math-sub-bignum): Remove unused var `sum'.
857         (math-svo-c, math-svo-wid, math-svo-off): Declare.
859 2015-10-08  Daiki Ueno  <ueno@gnu.org>
861         Use g_clear_error instead of g_error_free
863         * src/image.c: Define g_clear_error instead of g_error_free.
864         (init_svg_functions): Resolve symbol g_clear_error instead of
865         g_error_free.
866         (svg_load_image): Use g_clear_error instead of g_error_free, to
867         suppress GLib warnings when ERR is not set.  See bug#21641.
869 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
871         * src/image.c (image_size_error): Simplify.
873 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
875         Fix problems caught with --enable-gcc-warnings
877         * src/image.c (lookup_rgb_color):
878         * src/xfns.c (x_defined_color):
879         * src/xterm.c (x_parse_color):
880         Remove unused locals.
882 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
884         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
886 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
888         Format initial input uniformly.
890         * lisp/calc/calc.el (calc-digit-start-entry): New function.
891         * lisp/calc/calc.el (calcDigit-start):
892         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
893         Use `calc-digit-start-entry' to format input.
895 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
897         Disable non-working pointerColor setting for X tooltip frame.
899         It generates a bunch of server traffic, but there's some bug wherein
900         the new mouse cursor settings don't seem to get used.  In most
901         situations the cursor isn't likely to be seen anyway, so it's not
902         urgent to fix.
904         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
906 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
908         Reduce some unnecessary X calls.
910         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
911         call.  If border width is wanted, get it from the XGetGeometry call
912         instead of calling XGetWindowAttributes on the same window.  Skip some
913         X calls if we've already detected an error from the X server.
914         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
915         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
917 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
919         Reduce color allocation/query traffic in the TrueColor case.
921         When working with an X visual with TrueColor class, pixel values can
922         be generated from the RGB values according to mask value provided by
923         the server on connection.  Some of the image-handling code was already
924         doing this.
926         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
927         lookup_rgb_color.
928         (x_mutable_colormap): New function.
929         * src/image.c (lookup_rgb_color): Move pixel composition code to
930         x_make_truecolor_pixel.
931         (x_kill_gs_process): Call x_mutable_colormap.
932         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
933         x_mutable_colormap.
934         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
935         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
936         pixel value into RGB values directly, and don't send a request to the
937         server.
938         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
939         value with x_make_truecolor_pixel.
940         (x_copy_color): For an immutable color map, just return the provided
941         pixel value.
943 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
945         Cache XParseColor results in the X display info structure.
947         With repeated lookups of foreground and background colors for multiple
948         faces per frame, we issue a lot of redundant color name lookups to the
949         X server, waiting every time for the response.  On a remote network
950         with, say, 30ms round-trip time, this can add nearly a full second to
951         creation of a new frame.
953         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
954         * src/image.c (get_spec_bg_or_alpha_as_argb):
955         (xpm_init_color_cache, xpm_lookup_color):
956         * src/xfns.c (x_defined_color):
957         * src/xterm.c (x_parse_color): New function; caches color names not
958         starting with "#" in the display-info structure.
959         (x_delete_display): Delete the cache content.
960         * src/xterm.h (struct color_name_cache_entry): New type.
961         (x_parse_color): Declare.
962         (struct x_display_info): Add a new field for the cache.
964 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
966         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local
968 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
970         Fix segfault in image_size_error
972         * src/image.c (image_size_error): Pass a Lisp string to
973         image_error, not a C string.  (Bug#21641)
975 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
977         Highlight CSS variable definitions
979         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
980         CSS variables.  (Bug#21638)
982 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
984         * test/automated/tabulated-list-test.el: New file
986         Test bug#21639 and some basic functionality.
988 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
990         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
992         Check if column can be sorted before trying.  (Bug#21639)
994 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
996         Add test for `self-insert-command' (bug#21633)
998         * test/automated/cmds-tests.el: New file.
1000 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
1002         In resize_frame_windows don't set a top position when resizing horizontally.
1004         * src/window.c (resize_frame_windows): Don't set root window's
1005         top position when resizing horizontally.
1007 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
1009         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
1011         Document more possible values.
1013 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
1015         * lisp/textmodes/tex-mode.el: Use lexical-binding
1017 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
1019         * lisp/indent.el (indent--default-inside-comment): New function
1021         (indent-for-tab-command): Use it for `noindent' indentation.
1023 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
1025         Fix bug in GC_CHECK_MARKED_OBJECTS check
1027         * src/alloc.c (mark_object): Fix bug in checking code.
1028         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
1029         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
1030         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
1031         bucket.  The bug did not affect behavior either in the normal case
1032         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
1033         not have an internal error that a properly-written
1034         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
1036 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
1038         Add prettified version of \\Bbb{Q}.
1040         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Add
1041         prettified version for \\Bbb{Q}.
1043 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
1045         * test/automated/package-test.el (package-test-install-single):
1047         Add a test for bug#21625.
1049 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
1051         lisp/emacs-lisp/package.el (package-install): Fix name error
1053         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
1054           not a package-desc object.  Also clarify documentation.  (Bug#21625)
1056 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
1058         Fix display of characters adjacent to ZWJ and ZWNJ
1060         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
1061         characters the same as directional formatting controls.
1062         (bidi_level_of_next_char): Include all Bn characters in rule L1,
1063         as mandated by the UBA.
1065 2015-10-06  Andreas Schwab  <schwab@suse.de>
1067         Don't use XFASTINT on a negative number
1069         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
1070         number.  (Bug#21633)
1072 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
1074         * doc/lispref/objects.texi (Window Type): Add a cross reference.
1076         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
1078 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
1080         Fix composition-function-table for Arabic and Syriac
1082         * lisp/language/misc-lang.el (composition-function-table): Fix
1083         entries for Arabic and Syriac.
1085 2015-10-05  Damien Cassou  <damien@cassou.me>
1087         Add first unit tests for auth-source.el
1089         * test/automated/auth-source-tests.el: New file.
1091 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
1093         Remove redundant redisplay code
1095         * src/xdisp.c (redisplay_internal, try_cursor_movement)
1096         (try_window_reusing_current_matrix, try_window_id): Remove
1097         redundant restrictions on redisplay optimizations based on the
1098         frame's 'redisplay' flag.  See
1099         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
1100         discussions.
1102 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
1104         * src/xdisp.c (windows_or_buffers_changed): Improve docstring
1106 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
1108         Update tutorials/TUTORIAL.cn
1110         * etc/tutorials/TUTORIAL.cn: Improve translation.
1112 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1114         * src/macfont.m (macfont_encode_char, syms_of_macfont): Remove unused vars.
1116 2015-10-04  Stefan Merten  <stefan@merten-home.de>
1118         Pull in version numbers from rst.el upstream release.
1120                 * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
1121                 (rst-svn-timestamp, rst-official-version)
1122                 (rst-official-cvs-rev, rst-package-emacs-version-alist):
1123                 Update version numbers.
1125 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
1127         * test/automated/coding-tests.el: New file.
1129 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
1131         Improve XEmacs compatibility of Tramp
1133         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
1134         Declare if it doesn't exist.
1135         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
1136         (redisplay): Make it an alias if it doesn't exist.
1138         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
1139         `file-remote-p' (due to XEmacs compatibility).
1141         * lisp/net/trampver.el (locate-dominating-file)
1142         (tramp-compat-replace-regexp-in-string): Autoload.
1143         (tramp-repository-get-version): Do not dupe byte-compiler.
1145 2015-09-02  K. Handa  <handa@gnu.org>
1147         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
1149         * ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
1150         Adjusted for the change of type of elements in the array
1151         MFLTGlyphString.glyphs.
1153 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
1154             Michael Heerdegen  <michael_heerdegen@web.de>
1156         shr: fix too long lines in rendered buffers (Bug#21012)
1158         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
1159         Correct calculation of available width.
1160         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
1161         is nil.
1163 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1165         Restore blank line before next section, erroneously erased in my previous commit
1167         * etc/compilation.txt (symbol ant): add an additional trailing blank line to this section, so that there are two of them immediately before the next section
1169 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1171         Support MSW filename style for ant compilation error regexp
1173         * etc/compilation.txt (symbol ant):
1174         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist): Support MSW filename style
1176 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
1178         * nt/INSTALL: Minor spelling and quote fixes.
1180         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
1182 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
1184         Maintain ordering of JSON object keys by default
1186         * lisp/json.el (json-object-type): Mention order handling in doc-string.
1187         (json--plist-reverse): New utility function.
1188         (json-read-object): Maintain ordering for alists and plists.
1189         (json-pretty-print): Ensure that ordering is maintained.
1191         * test/automated/json-tests.el (test-json-plist-reverse): New test for
1192         `json--plist-reverse'.
1193         (json-read-simple-alist): Update test to accommodate for changes in
1194         `json-read-object'.
1196         * etc/NEWS: Document the new behavior of the pretty printing functions.
1198 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
1200                 * src/coding.c (complement_process_encoding_system): Revert last
1201                 change.
1203 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
1205         Add entry for Ulf Jasper.
1207 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
1209         Doc fix for `defmacro'
1211         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
1213 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
1215         More validatation of coding systems
1217         * src/fileio.c (Finsert_file_contents): Remove redundant
1218         coding-system check.
1219         (choose_write_coding_system): Likewise.
1220         * src/coding.c (complement_process_encoding_system): Check
1221         argument for valid coding system.
1223 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
1225         Avoid crashes in coding_inherit_eol_type
1227         * src/coding.c (coding_inherit_eol_type): Check the validity of
1228         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
1229         (Bug#21602)
1231 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
1233         More validatation of coding system in 'write-region'
1235         * src/coding.c (choose_write_coding_system): More validation of
1236         coding-system from various sources.  Suggested by Andreas Schwab
1237         <schwab@linux-m68k.org>.  (Bug#21602)
1239 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
1241         Avoid crashes due to invalid coding-system
1243         * src/fileio.c (choose_write_coding_system)
1244         (Finsert_file_contents): Check validity of coding-system-for-write
1245         and coding-system-for-read bound by the caller.  (Bug#21602)
1247 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
1249         Adapt to new prettify-symbols-unprettify-at-point default
1251         * etc/NEWS: Mention that unprettication of symbol at point is off by
1252         default.
1254 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
1256         Revert my two recent process.c changes
1258         Revert "Improve last commit to process.c" and "Remove callback-handled
1259         channels from Available set" because they did not fix bug#21313.
1261         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
1262         27f871907cc24f33a7d12ac3a4ab71a88f0bc554..
1264 2015-10-02  Markus Triska  <triska@metalevel.at>
1266         * prolog.el: Update and extend operator table
1268         (prolog-smie-grammar): Add multifile, public etc.
1270 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
1272         Allow autogen even when Git is not installed
1274         * autogen.sh: Test ‘git status’ before trying to use Git.
1276 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
1278         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes
1280         Adjust lto/lfrom when we have uncommitted changes.
1282 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
1284         Fix problems found by clang 3.5.0
1286         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
1287         * src/font.c (font_parse_family_registry):
1288         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
1290 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
1292         * nt/INSTALL: Update instructions for running autogen.sh
1294         * nt/INSTALL: Point to ezwinports for libXpm binaries.
1296 2015-10-02  Daniel Colascione  <dancol@dancol.org>
1298         Fix winner in cl-lib not loaded case
1300         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
1301         without requiring CL
1303 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
1305         Fix a few problems with directed quotes
1307         This is in response to a problem report by Kaushal Modi in:
1308         http://bugs.gnu.org/21588#25
1309         * lisp/cedet/mode-local.el (describe-mode-local-overload):
1310         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
1311         * lisp/info-xref.el (info-xref-check-all-custom):
1312         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
1313         Prefer directed to undirected single quotes in diagnostics.
1315 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
1317         Revert "Attempt to fix slow redisplay caused by last changes"
1319         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
1320         (try_cursor_movement): Don't relax requirements for redisplay
1321         optimizations for the selected frame.  (Bug#21597)
1323         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
1325 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
1327         Fix slow redisplay when daemon frame exists
1329         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
1330         when looking for frames that need to be redisplayed.  (Bug#21597)
1332 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
1334         Attempt to fix slow redisplay caused by last changes
1336         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
1337         (try_cursor_movement): Relax requirements for redisplay
1338         optimizations for the selected frame.  (Bug#21597)
1340 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
1342         Improve doc strings in dired.c
1344         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
1345         Improve doc string.
1347 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
1349         Set default base-size in minibuffer-completion-help
1351         * lisp/minibuffer.el (minibuffer-completion-help): Set default base-size,
1352         in case completion table does not set it.
1354 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
1356         Fix GUD display of GDB output with non-ASCII text
1358         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
1359         (gdb-mi-decode): New function.
1360         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
1361         decode octal escapes in GDB output.  (Bug#21572)
1363 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
1365         * nt/INSTALL: Document where to find XPM support files
1367 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
1369         Un- and re-prettification are not exclusive
1371         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
1372         Re-apply prettification to previous symbol also when unprettifying next
1373         one.
1375 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
1377         Don't unprettify symbol at point by default
1379         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
1380         Default to disabled (nil).
1382 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1384         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
1386         Support unprettifying when point is after a symbol.
1388         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'
1390 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
1392         Avoid assertion violations in push_prefix_prop
1394         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
1395         a line that has a line-prefix defined starts with an image.  (Bug#21428)
1397 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
1399         Disable some display optimizations when frames need redisplay
1401         These optimizations were previously disabled by the
1402         windows_or_buffers_changed flag, which now is not set
1403         when only some frames need to be redrawn.
1404         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
1405         'redisplay' flag is set.
1406         (try_window_reusing_current_matrix, try_window_id)
1407         (try_cursor_movement): Disable these optimizations when the
1408         frame's 'redisplay' flag is set.
1410 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
1412         Don't modify buffer by unprettification
1414         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
1415         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
1416         modify buffer when setting/removing custom prettify-symbols-start/end
1417         text properties.  Add them to font-lock-extra-managed-props, too.
1419 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
1421         Try to avoid redisplaying all frames when creating a new one
1423         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
1424         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
1425         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
1426         * src/frame.c (x_set_screen_gamma): Set the specific frame's
1427         `redisplay' bit rather than windows_or_buffers_changed.
1429         * src/window.c (apply_window_adjustment): Remove redundant setting of
1430         windows_or_buffers_changed.
1432         * src/xdisp.c (redisplay_internal): Set the specific frame's
1433         `redisplay' bit rather than update_mode_lines in response to
1434         cursor_type_changed.
1435         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
1436         (AINC): Adjust accordingly.
1438 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
1440         Implement unprettification of symbol at point
1442         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
1443         symbol at point.
1444         (prettify-symbols--current-symbol-bounds): New variable.
1445         (prettify-symbols--post-command-hook): New function.
1446         (prettify-symbols-unprettify-at-point): New defcustom.
1447         (prettify-symbols-mode): Use it.
1448         (prettify-symbols--compose-symbol): Use them.
1450 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1452         * src/macfont.m (mac_font_descriptor_supports_languages): Regard "zh" as synonym of "zh-Hans".
1454 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1456         Work around crash when displaying etc/HELLO on OS X 10.11
1458         * src/macfont.m (mac_font_get_weight)
1459         (mac_font_descriptor_get_adjusted_weight): New functions.
1460         (macfont_store_descriptor_attributes): Adjust weight.
1462 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1464         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
1466 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
1468         * lisp/arc-mode.el (archive-rar-summarize): Better alignment of the columns.
1470 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
1472         Use unar and lsar to handle RAR archives in arc-mode
1474         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
1475         on unar and lsar instead of unrar-free for RAR archives (Bug#17663).
1477 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
1479         Clarify :create in auth-source's docs
1481         * auth-source.el (auth-source-search): Clarify :create's meaning.
1483 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
1485         Avoid empty -path arguments in rgrep
1487         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
1488         the list produced according to grep-find-ignored-directories,
1489         before passing it to Find/Grep invocation.  (Bug#21548)
1491 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
1493         Clarify documentation of pos-visible-in-window-p
1495         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
1496         t for POS.  See
1497         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
1498         for the original report.
1500         * doc/lispref/windows.texi (Window Start and End): Clarify the
1501         meaning of t for the POSITION argument of pos-visible-in-window-p.
1503 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1505         * lisp/progmodes/prolog.el: Fix various indentation cases
1507         (prolog-operator-chars): New const (add \\).
1508         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
1509         (prolog-smie-rules): Add rules according to bug#21526.
1511 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1513         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent
1515         (sh-indent-after-continuation): Add new value `always' (bug#17620)
1516         (sh-smie-sh-rules): Remove old handling of continued lines.
1517         (sh-smie--indent-continuation): New function.
1518         (sh-set-shell): Use it.
1520 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1522         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun
1524         Remove redundant :group keyword args.
1525         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
1526         Remove variables.
1527         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
1528         turn them into compile-time variables.
1529         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
1530         Add rules for break, continue, return, global, and persistent.
1531         Refine the rule for "until".
1532         (octave-smie--funcall-p, octave-smie--end-index-p)
1533         (octave-smie--in-parens-p): New functions.
1534         (octave-smie-backward-token, octave-smie-forward-token): Use them to
1535         distinguish the "enumeration" function and the "end" index from
1536         their corresponding keywords.
1537         (octave--block-offset-keywords): New constant.
1538         (octave-smie-rules): Use it.  Adjust rules for new global/persistent parsing.
1539         (octave-reserved-words): Redefine using octave-smie-grammar.
1540         (octave-font-lock-keywords): Use octave-smie--funcall-p and
1541         octave-smie--end-index-p.
1543 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1545         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*
1547 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
1549         nt/INSTALL: Remove references to GTK site
1551         That site no longer offers Windows downloads.
1553 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
1555         * nt/INSTALL: Add instructions for installing Git.
1557 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
1559         * net/shr.el (shr-colorize-region): Allow 88-color tty to use colors.
1560         Suggested by Eli Zaretskii.
1562 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
1564         * net/shr.el (shr-colorize-region):
1565         Don't do it on a system not supporting 256 above colors (bug#21557).
1567 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
1569         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
1571         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
1573 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
1575         Add documentation for seq.el
1577         * doc/lispref/sequences.texi: Add documentation regarding extending
1578         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
1579         seq-do and seq-map.
1581 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
1583         Better documentation for seq-some
1585         * doc/lispref/sequences.texi:
1586         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
1587         guarantee that the returned value is the first non-nil value that
1588         resulted from applying the predicate.
1590 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
1592         * lisp/arc-mode.el: Sharp-quote function arguments.
1594 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
1596         Avoid redisplay error in ediff-regions-wordwise
1598         * lisp/vc/ediff-util.el
1599         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
1600         set before activating it.  (Bug#21567)
1602 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
1604         Another attempt to fix crashes due to prematurely freed faces
1606         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
1607         faces for as long as we might have desired matrices that reference
1608         those faces.  (Bug#21428)
1610 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
1612         Add auctex development list email address
1614 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
1616         Add admin/MAINTAINERS entries
1618         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
1620 2015-09-28  (tiny change) Arash Esbati  <esbati@gmx.de>  (tiny change)
1622         Improve wrapfig package support and caption parsing
1624         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin): Correct
1625         description string and add wraptable environment.
1626         (reftex-default-context-regexps): Improve caption regexp.
1628 2015-09-28  Anders Lindgren  <andlind@gmail.com>
1630         Respect value of frame_resize_pixelwise when handling fullscreen state.
1632         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
1633         setting size increments.
1635 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
1637         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
1639 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
1641         Add prettify-symbols-alist for js-mode
1643         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
1644         (js-mode): Use it.
1646 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
1648         * nt/subdirs.el: File deleted (no longer used).
1650 2015-09-26  Alan Mackenzie  <acm@muc.de>
1652         Fix follow-scroll-up/down, making them replacements for scroll-up/down.
1654         1. Allow point to move between follow windows in scroll operations.
1655         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
1656         when EOB was isolated in the last follow window.
1658         lisp/follow.el (follow-fixed-window): New variable.
1659         (follow-get-scrolled-point): New function.
1660         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
1661         Reformulate
1662         the code.  Put `scroll-command' properties on the functions.  Correct
1663         minor errors in ...-down's doc string and code.
1664         (follow-calc-win-end): Amend incomplete doc string.  Use
1665         `pos-visible-in-window-p' to check whether EOB is in the window.
1666         (follow-estimate-first-window-start): Correct an off-by-1 error.
1667         (follow-adjust-window): Add handling for explicit scrolling operations.
1669 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
1671         * admin/MAINTAINERS: Add self, plus list some more files sans maintaners.
1673 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
1675         New DWIM commands for changing letter-case
1677         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
1678         New functions.  (Bug#21501)
1680 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
1682         * etc/PROBLEMS: Document problems with pasting on MS-Windows
1684 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
1686         Make face realization be more frame-specific
1688         * src/frame.h (struct f): New flag face_change.
1689         * src/xfaces.c (Finternal_make_lisp_face)
1690         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
1691         (update_face_from_frame_parameter): Set the face_change flag only
1692         for the frame whose faces are affected.
1693         * src/xdisp.c (init_iterator): If a frame's face_change flag is
1694         set, free faces only on that frame.
1695         (redisplay_internal): Disable "display optimization 1" if the
1696         frame's face_change flag is set.
1697         (redisplay_window): Don't allow skipping a window's redisplay if
1698         its frame's face_change flag is set.
1699         * src/frame.c (x_set_screen_gamma): Instead of calling
1700         Fclear_face_cache, call clear_face_cache and set
1701         windows_or_buffers_changed to a non-zero value.  This avoids
1702         setting the global face_change flag that triggers face realization
1703         on all frames and thorough redisplay of all of them.
1705         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
1706         clear face cache if the selected frame is a GUI frame.
1708 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
1710         Remove font-latex specific check
1712         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p): Use
1713         syntax-ppss data to identify verbatim contents.
1715 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
1717         Fix false negatives in tex--prettify-symbols-compose-p.
1719         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p): Fix some
1720         false negatives.
1722 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
1724         Reorder Windows version in Emacs manifests
1726         * nt/emacs-x64.manifest:
1727         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
1728         highest.
1730 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
1732         Update Emacs manifest files for Windows 10
1734         * nt/emacs-x86.manifest:
1735         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
1737 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
1739         Avoid non-ASCII decoding errors in C src files
1741         * src/nsterm.m:
1742         * src/lisp.h:
1743         * src/editfns.c:
1744         * src/doprnt.c: Add 'coding' cookies -- these files include
1745         Unicode characters and should be decoded as UTF-8.
1747 2015-09-25  Alan Mackenzie  <acm@muc.de>
1749         Resurrect edebug-set-initial-mode, repurposing it to set the global mode.
1751         lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
1752         amend to match current modes and functions.
1753         (edebug-set-initial-mode): Uncomment and change from setting a defun's
1754         `edebug-initial-mode''s property to setting the variable
1755         `edebug-initial-mode'.
1756         (top level): Create new binding C-x C-a C-m for
1757         `edebug-set-initial-mode'.
1759         doc/lispref/edebug.texi (Edebug Execution Modes): document
1760         `edebug-set-initial-mode' and its new key binding.
1761         (Edebug Options): Mention the new command in the pertinent place.
1763         etc/NEWS: Write entry for this change.
1765 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
1767         Avoid non-ASCII decoding errors in Texinfo files
1769         * doc/misc/tramp.texi:
1770         * doc/lispref/strings.texi:
1771         * doc/lispref/positions.texi:
1772         * doc/lispref/help.texi:
1773         * doc/lispref/functions.texi:
1774         * doc/lispintro/emacs-lisp-intro.texi:
1775         * doc/emacs/text.texi:
1776         * doc/emacs/modes.texi:
1777         * doc/emacs/mini.texi:
1778         * doc/emacs/display.texi:
1779         * doc/emacs/custom.texi:
1780         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
1781         Unicode characters and should be decoded as UTF-8.
1782         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
1783         apostrophe unnecessarily.
1785 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
1787         Merge from gnulib
1789         This incorporates:
1790         2015-09-25 c-ctype: rewrite to use inline functions
1791         2015-09-24 maint: add coding cookies to non-ASCII sources
1792         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
1793         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
1794         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
1795         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
1796         * lib/set-permissions.c:
1797         Copy from gnulib.
1799 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
1801         Update publicsuffix.txt from upstream
1803         * etc/publicsuffix.txt: Update from
1804         https://publicsuffix.org/list/effective_tld_names.dat
1805         dated 2015-09-24 17:29:21 UTC.
1807 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
1809         Prevent timers from messing up TTY menus
1811         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
1812         the TTY menu is open.  (Bug#21530)
1814 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
1816         No need to mention K&R C in c-mode intro
1818 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
1820         Fix recent bootstrap problems
1822         * src/syntax.c (parse_sexp_propertize): Fix last fix.
1823         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
1824         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
1826 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
1828         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
1830 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
1832         Properly quote nested xml comments (Bug#6267) (Bug#20001)
1834         * nxml-mode.el (nxml-comment-quote-nested): New function
1835         (nxml-mode): Set comment-quote-nested-function
1837 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
1839         Allow major-modes full control over quoting nested comments
1841         * newcomment.el (comment-quote-nested-function): New variable.
1842         (comment-quote-nested-default): New function.
1843         (comment-quote-nested): Use `comment-quote-nested-function'.
1845 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
1847         Prefer CALLN in a few more places
1849         * src/macfont.m (macfont_set_family_cache):
1850         * src/nsterm.m (append2):
1851         * src/xterm.c (x_cr_export_frames):
1852         Prefer CALLN to allocating the arg arrays by hand.
1854 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
1856         Adapt file-notify-test02-events test case
1858         * test/automated/file-notify-tests.el (file-notify-test02-events):
1859         Create a new watch for every test.
1861 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
1863         Continue gfilenotify.c implementation of missing parts
1865         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
1866         `gfile-add-watch' call.
1867         (file-notify-rm-watch): Modify `file-notify-descriptors' only
1868         after calling the low level functions.
1870         * src/gfilenotify.c (dir_monitor_callback): Check, whether
1871         event_type is expected.
1872         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
1873         (Fgfile_rm_watch): Fix typo.
1874         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
1876 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
1878         * src/syntax.c: Handle spurious e_property_truncated flag
1880         * src/syntax.c (parse_sexp_propertize): Handle spurious
1881         e_property_truncated flag.
1882         (update_syntax_table_forward): Remove invalid assertion.
1884 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
1886         Support ':relative-width' space display spec on text-mode terminals
1888         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
1889         space display spec on text-mode terminals, by calling
1890         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the HAVE_WINDOW_SYSTEM
1891         guards from the supporting code, as well as the test for a GUI frame.
1893 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
1895         Move let-when-compile to lisp-mode.el
1897         This fixes the bootstrapping problem of `let-when-compile' using
1898         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
1900 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1902         Do not include authorization header in an HTTP redirect
1904         * lisp/url/url-http.el (url-http-parse-headers): Do not
1905         automatically include Authorization header in redirect.
1906         (Bug#21350)
1908 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
1910         Clarify documentation of ':relative-width'
1912         * doc/lispref/display.texi (Specified Space): Document that
1913         ':relative-width' is only supported on GUI frames.
1915 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
1917         Fix 'current-column' in presence of :relative-width
1919         * src/indent.c (check_display_width): Support ':relative-width'
1920         in a display spec that specifies a stretch glyph.  (Bug#21533)
1922 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
1924         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
1926         ... to conform better to CONTRIBUTE guidelines.
1928 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
1930         * prolog.el: Fix indentation of empty line
1932         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
1933         `empty-line-token' element.
1934         (smie-indent-empty-line): New function.
1935         (smie-indent-functions): Add it.
1937         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro behavior
1938         and use the new `empty-line-token' element (bug#21526).
1939         (prolog-mode-variables): Fix comment-start-skip setting to match
1940         comment-start.
1942         * test/indent/prolog.prolog: Add nested indentation tests.
1944         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
1945         comment-start-skip not to misuse submatch 1.
1947 2015-09-22  Alan Mackenzie  <acm@muc.de>
1949         Make description of `edebug-initial-mode' user friendly.
1951         Fixes debbugs#21365.
1953         dec/lispref/edebug.texi (Edebug Execution Modes): Change the
1954         desscription
1955         of `edebug-initial-mode' from that of its implementation to that of its
1956         visual effect and use.  Move the paragraph higher up.
1958 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
1960         lisp/progmodes/gud.el (gud-format-command): Fix last commit
1962         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
1963         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
1965 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
1967         Improve last commit to process.c
1969 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
1971         Implement gfile-valid-p
1973         * lisp/filenotify.el (file-notify-callback): Fix typo.
1974         (gfile-valid-p): Remove defalias.
1976         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
1977         the file or directory to be watched is deleted.
1978         (Fgfile_add_watch): Make watch_object a triple.
1979         (Fgfile_rm_watch): Check, whether watch is cancelled already.
1980         (Fgfile_valid_p): New defun.
1981         (syms_of_gfilenotify): Declare Sgfile_valid_p.
1983 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
1985         Remove callback-handled channels from Available set
1987         * src/process.c (wait_reading_process_output): Remove channel from
1988         Available set if it is handled by a callback, e.g., dbus or
1989         inotify (bug#21313).
1991 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
1993         Use lunate epsilon for TeX \epsilon
1995         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Add
1996         \varepsilon using GREEK SMALL LETTER EPSILON, and change \epsilon to use
1997         GREEK LUNATE EPSILON SYMBOL
1999 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
2001         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
2003         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
2004         rather than outermost paren (bug#21526).
2006 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
2008         Improve git diff hunk headers for .el, .texi
2010         Problem reported by Alan Mackenzie in:
2011         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
2012         * .gitattributes (*.el, *.texi): New patterns.
2013         * autogen.sh: Configure diff.elisp.xfuncname and
2014         diff.texinfo.xfuncname if using Git.
2016 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
2018         Don't rely on defaults in decoding UTF-8 encoded Lisp files
2020         * lisp/replace.el:
2021         * lisp/textmodes/rst.el:
2022         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
2024 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
2026         Clarify or replace a few \u escapes.
2028         * doc/lispref/nonascii.texi (Character Properties)
2029         More-detailed commentary for \u escapes.
2030         * lisp/progmodes/python.el (python--prettify-symbols-alist):
2031         * lisp/replace.el (query-replace-from-to-separator):
2032         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
2033         (rst-mode-syntax-table):
2034         * lisp/whitespace.el (whitespace-display-mappings):
2035         Prefer actual character to \u escape when this makes the code
2036         easier to follow in the usual case where Unicode chars can be
2037         displayed.
2039 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
2041         Pacify GCC -Wmaybe-uninitialized in xdisp.c
2043         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
2044         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
2045         charpos.  The loop should always execute at least once anyway.
2047 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
2049         Signal error on invalid regexp
2051         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries): Signal an
2052         error when the user tries searching with a regexp matching the empty
2053         string.
2055 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
2057         Another fix of file-notify-tests for w32notify
2059         * test/automated/file-notify-tests.el (file-notify-test02-events):
2060         Further adaptation for w32notify: reduce the number of expected
2061         'changed' events.  (Bug#21435)
2063 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
2065         Adapt tests and manual for w32notify
2067         * doc/lispref/os.texi (File Notifications): w32notify does not
2068         send `attribute-changed' events.
2070         * test/automated/file-notify-tests.el (file-notify--test-with-events):
2071         Simplify parameters.  Adapt all callees.
2072         (file-notify-test02-events): w32notify does not send
2073         `attribute-changed' events.
2074         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
2075         Do not skip in case of w32notify.  Simply ignore this part of the test.
2077 2015-09-21  Dima Kogan  <dima@secretsauce.net>
2079         Fix setting breakpoints when remote-debugging
2081         * lisp/progmodes/gud.el (gud-format-command): Send localized file
2082         names to the debugger running on the remote.  (Bug#13304)
2084 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
2086         Better docstring and parameter name for seq-find
2088         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
2089         the parameter `sentinel' to `default'.
2091         * doc/lispref/sequences.texi (Sequence Functions): Update the
2092           documentation for `seq-find' accordingly.
2094 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
2096         Avoid infinite recursion while displaying box face
2098         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
2099         the previous string/buffer character position under bidi
2100         iteration.  (Bug#21428)
2102 2015-09-21  Anders Lindgren  <andlind@gmail.com>
2104         Keep upper edge unchanged when changing size of NS frame (Bug#21415)
2106         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
2107         (Bug#21415).
2109 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
2111         Subject: * lisp/progmodes/prolog.el: Improve handling of if/then/else
2113         (prolog-smie-rules): Accomodate standard if/then/else special indentation.
2114         (prolog-mode): Add . to electric-indent-chars.
2115         (prolog-electric--if-then-else): Re-indent the line before adding space
2116         after the new char (bug#21526).
2118 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
2120         Add prettify symbols to python-mode
2122         lisp/progmodes/python.el (python-prettify-symbols-alist): New variable
2123         lisp/progmodes/python.el (python-mode): Use it
2125 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
2127         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete
2129 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
2131         (compilation-error-regexp-alist-alist): Tone down guile-file
2133         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
2134         Make guile-file a bit less enthusiastic (bug#21496).
2136 2015-09-20  Drew Csillag  <drew@thecsillags.com>
2138         * m4-mode.el (m4-font-lock-keywords): Fix m4_* highlighting
2140         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
2141         of commands when they have a "m4_" prefix.
2143 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
2145         '.' -> `.' in doc string
2147         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
2148         individual chars with grave quotes instead of straight quotes, as
2149         this works better when they are translated to curved quotes.
2151 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
2153         Improve file notifications, especially for Tramp
2155         * doc/lispref/files.texi (Magic File Names):
2156         Mention `file-notify-valid-p'.
2158         * doc/lispref/os.texi (File Notifications):
2159         Describe `file-notify-valid-p'.
2161         * etc/NEWS: Add `file-notify-valid-p'.
2163         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
2164         Improve implementation.
2165         (tramp-gvfs-monitor-file-process-filter): Rename from
2166         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
2167         process if appropriate.
2169         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
2170         Improve implementation.
2171         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
2172         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
2173         if appropriate.
2174         (tramp-sh-inotifywait-process-filter): Rename from
2175         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
2176         appropriate.
2178         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
2179         Use `delete-process'
2180         (tramp-handle-file-notify-valid-p): Check also, that file or
2181         directory to be watched still exists.
2183         * test/automated/file-notify-tests.el (file-notify--test-timeout):
2184         New defun.  Use it at all places a timeout is needed.
2185         (file-notify--test-cleanup): Delete directories recursively.
2186         Cleanup also Tramp connections.
2187         (file-notify-test02-events): Add tests for `attribute-change'.
2188         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
2189         Add tests for `file-notify-rm-watch'.
2191 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
2193         Use %s to format strings instead of splicing them
2195         If FOO might contain quotes that are part of a file or variable
2196         name, the quotes should not be translated when showing FOO’s name
2197         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
2198         is not quite right, as it would translate FOO’s quotes.
2199         Change it to (message "%s: bar" FOO) instead.
2200         * lisp/allout.el (allout-process-exposed):
2201         * lisp/calc/calc-ext.el (calc-do-prefix-help):
2202         * lisp/calc/calc-store.el (calc-store-into):
2203         * lisp/calendar/todo-mode.el (todo-category-completions):
2204         * lisp/cedet/semantic/complete.el (semantic-completion-message):
2205         * lisp/org/ob-latex.el (convert-pdf):
2206         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
2207         * lisp/org/ox-latex.el (org-latex-compile):
2208         * lisp/org/ox-man.el (org-man-compile):
2209         * lisp/org/ox-odt.el (org-odt--export-wrap):
2210         * lisp/org/ox-texinfo.el (org-texinfo-compile):
2211         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
2212         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
2213         (verilog-signals-combine-bus, verilog-read-defines)
2214         (verilog-getopt-file, verilog-expand-dirnames)
2215         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
2216         * lisp/term/ns-win.el (ns-spi-service-call):
2217         Use %s to avoid translating quotes of file names etc. in diagnostics.
2219 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
2221         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
2223         (js-mode): Don't set syntax-begin-function.
2225 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
2227         Don't assume syntax-begin-function is a symbol.
2229         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
2230         syntax-begin-function is a symbol.
2232 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
2234         Improve documentation of 'run-at-time'
2235         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
2236         In particular, don't refer to 'diary-entry-time', because it is
2237         unavailable until diary-lib is loaded.  Also, refer to
2238         'timer-duration-words', not 'timer-duration', as the latter's doc
2239         string says nothing about the accepted strings.
2241 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
2243         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
2245 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
2247         Repair pdbtrack remote file tracking
2248         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
2249         Rectify pdbtrack so it follows transitions from one remote source
2250         file to the next.
2252 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
2254         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting
2256 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
2258         Adapt vc-src to the old-new vc-checkin API
2259         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
2260         additional optional parameter.
2262 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
2264         Add overflow module to CSS property list
2265         * lisp/textmodes/css-mode.el (css-property-ids): Add properties from CSS
2266         Overflow Module Level 3.
2268 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
2270         Fix documentation of "C-u C-x v v"
2271         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
2272         documentation of "C-u C-x v v" match what the code does.
2274         Resurrect the ability to specify a revision in vc-next-action
2275         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
2276         * lisp/vc/vc-dav.el (vc-dav-checkin):
2277         * lisp/vc/vc-git.el (vc-git-checkin):
2278         * lisp/vc/vc-hg.el (vc-hg-checkin):
2279         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
2280         an additional optional argument, the revision to checkin.
2281         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
2282         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
2283         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
2284         a revision to checkin.
2285         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
2286         revision when checking in files.
2287         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
2288         for the details.
2290 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
2292         Fix checkdoc warnings.
2293         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
2294         (verilog-decls-princ, verilog-modport-princ)
2295         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
2297 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
2299         Fix the routine for help on Calc's prefixes.
2300         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
2301         (calc-do-prefix-help): Use `read-char' to determine the next Calc
2302         command.
2304 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
2306         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove
2307         (font-lock-fontify-block): Don't let-bind it.
2308         (font-lock-compile-keywords): Don't use it.
2309         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
2310         start one slot earlier, instead.
2311         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
2312         Don't declare.
2313         (syntax-ppss): Don't use it either.
2314         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
2315         from docstring.
2316         * doc/emacs/display.texi (Font Lock): Don't mention
2317         font-lock-beginning-of-syntax-function.
2318         * doc/lispref/modes.texi (Font Lock Basics): Update description of
2319         font-lock-defaults.
2320         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
2321         * lisp/loadhist.el (unload-feature-special-hooks):
2322         Remove font-lock-beginning-of-syntax-function.
2323         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
2324         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
2325         font-lock-beginning-of-syntax-function.
2327 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
2329         Backslash cleanup in Elisp source files
2330         This patch should not change behavior.  It typically omits backslashes
2331         where they are redundant (e.g., in the string literal "^\$").
2332         In a few places, insert backslashes where they make regular
2333         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
2334         "^\\*", which has the same effect as a regular expression.
2335         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
2336         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
2337         RCS IDs, as that makes it clearer that the backslash is intended.
2339         Some more minor backslash fixes
2340         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
2341         * test/automated/info-xref.el (info-xref-test-write-file):
2342         Double backslashes in strings.
2344         Fix several backslash typos in Elisp strings
2345         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
2346         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
2347         (todo-reset-done-string, todo-reset-comment-string)
2348         (todo-reset-highlight-item):
2349         * lisp/erc/erc-networks.el (erc-networks-alist):
2350         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
2351         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
2352         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
2353         (nntp-telnet-shell-prompt):
2354         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
2355         * lisp/image-dired.el (image-dired-rotate-original):
2356         (image-dired-get-exif-file-name):
2357         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
2358         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
2359         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
2360         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
2361         * lisp/net/shr-color.el (shr-color->hexadecimal):
2362         * lisp/org/org-bibtex.el (org-bibtex-fields):
2363         * lisp/org/org-docview.el (org-docview-export):
2364         * lisp/org/org-entities.el (org-entities):
2365         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
2366         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
2367         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
2368         (ebnf-style-database):
2369         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
2370         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
2371         * lisp/progmodes/sql.el (sql-product-alist):
2372         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
2373         (verilog-error-font-lock-keywords)
2374         (verilog-assignment-operator-re):
2375         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
2376         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
2377         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
2378         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
2379         For example, to get the regular expression ‘\.’ use the string
2380         literal "\\.", not "\." (which is equivalent to ".").
2381         * lisp/emulation/viper-util.el (viper-glob-unix-files):
2382         Remove stray ‘\j’ from string.
2383         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
2384         (nntp-telnet-shell-prompt):
2385         Treat > like $ when matching a shell prompt.
2386         * lisp/progmodes/make-mode.el (makefile-browse):
2387         Properly quote a diagnostic.
2389         Fix minor quoting problems in diagnostics
2390         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
2391         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
2392         Follow text-quoting-style in diagnostic, and quote a file name.
2394 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
2396         * doc/lispref/frames.texi (Cursor Parameters): Document 'x-stretch-cursor'.
2398 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
2400         Omit unnecessary \ before paren in C docstrings
2401         Although \( is needed in docstrings in Elisp code, it is not needed in
2402         docstrings in C code, since C function definitiions do not start with
2403         a parenthesis.  The backslashes made the docstrings a bit harder to
2404         read and to format in columns.  Also, some C docstrings had ( in
2405         column 1 and this did not appear to be causing any problems.  So,
2406         simplify C docstrings by replacing \( with ( and \) with ).
2408         A few more minor quoting fixes in a script and a text file
2410         Minor quoting fixes in scripts and doc
2411         Prefer straight quotes in random script files, as they are not converted.
2412         Prefer grave quotes in a couple of places in the manual that were missed
2413         earlier, as these quotes are converted.
2415         Minor backslash fixes in manuals and scripts
2416         * Makefile.in (install-arch-indep):
2417         * admin/charsets/compact.awk:
2418         * admin/charsets/gb180302.awk (gb_to_index):
2419         * admin/charsets/gb180304.awk (gb_to_index):
2420         Avoid undefined behavior in Awk regular expression backslashes.
2421         * doc/misc/efaq.texi (Matching parentheses):
2422         Omit unnecessary backslashes.
2423         * doc/misc/gnus-faq.texi (FAQ 5-8):
2424         Avoid undefined behavior in suggested sed backslash usage.
2426         Add -Wswitch to --enable-gcc-warnings
2427         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
2428         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
2429         * lib-src/etags.c (main, consider_token, C_entries):
2430         * src/coding.c (encode_invocation_designation):
2431         * src/data.c (Ftype_of):
2432         * src/eval.c (Fdefvaralias, default_toplevel_binding)
2433         (Fbacktrace__locals, mark_specpdl):
2434         * src/lisp.h (record_xmalloc):
2435         * src/syntax.c (scan_lists, scan_sexps_forward):
2436         * src/window.c (window_relative_x_coord):
2437         * src/xdisp.c (push_it, pop_it):
2438         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
2439         Error out or do nothing (as appropriate) if a switch statement
2440         with an enum value does not cover all of the enum.
2441         * src/dispextern.h (struct iterator_stack_entry.u.comp):
2442         Remove unused member discovered by using -Wswitch.
2443         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
2444         * src/vm-limit.c (check_memory_limits):
2445         Simplify warning-diagnostic computation by using a table.
2447         etags ‘fatal’ function is now printf-like
2448         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
2449         Also, now static; not clear why it needed to be extern.
2450         (verror): New function, with most of the old contents of ‘error’.
2451         (fatal, error): Use it.
2453 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
2455         More adaptations in file-notify-tests.el
2456         * test/automated/file-notify-tests.el
2457         (file-notify-test05-dir-validity): Skip for w32notify in
2458         batch-mode.  (Bug#21432)
2460 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
2462         Adapt test in file-notify-tests.el
2463         * test/automated/file-notify-tests.el
2464         (file-notify-test04-file-validity): Skip for w32notify in
2465         batch-mode.  Add test lost last commit.
2467 2015-09-16  Dima Kogan  <dima@secretsauce.net>
2469         winner no longer holds on to dead frames
2470         * lisp/winner.el (winner-change-fun): Cull dead frames.
2471         This prevents a potentially massive memory leak.  See:
2472         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
2474 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
2476         Use common report_file_notify_error function
2477         * src/fileio.c (report_file_notify_error): New function.
2478         * src/inotify.c (report_inotify_error): Remove function.
2479         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
2480         (Finotify_rm_watch): Use report_file_notify_error.
2481         * src/lisp.h (report_file_notify_error): Declare external function.
2482         * src/w32notify.c (report_w32notify_error): Remove function.
2483         (Fw32notify_add_watch, Fw32notify_rm_watch):
2484         Use report_file_notify_error.
2486 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
2488         Fix documentation.
2489         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
2490         the documentation of the root mean square.
2492 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
2494         Remove tool_bar_redisplayed_once and associated code.
2495         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
2496         * src/frame.c (make_frame, x_set_font): Remove initialization of
2497         f->tool_bar_redisplayed_once.
2498         * src/w32fns.c (x_change_tool_bar_height):
2499         * src/xfns.c (x_change_tool_bar_height): Don't check for
2500         f->tool_bar_redisplayed_once.
2501         * src/xdisp.c (redisplay_internal): Remove handling of
2502         f->tool_bar_redisplayed_once.
2504 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
2506         Restore some of the quoting in the manuals
2507         * doc/lispref/windows.texi (Coordinates and Windows)
2508         (Coordinates and Windows):
2509         * doc/lispref/variables.texi (Lexical Binding)
2510         (File Local Variables):
2511         * doc/lispref/text.texi (Format Properties):
2512         * doc/lispref/symbols.texi (Symbol Components):
2513         * doc/lispref/strings.texi (Creating Strings):
2514         * doc/lispref/sequences.texi (Sequence Functions):
2515         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
2516         (Search and Replace):
2517         * doc/lispref/processes.texi (Bindat Spec):
2518         * doc/lispref/os.texi (Idle Timers):
2519         * doc/lispref/objects.texi (Basic Char Syntax):
2520         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
2521         * doc/lispref/nonascii.texi (Character Properties):
2522         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
2523         (Mode Line Variables):
2524         * doc/lispref/minibuf.texi (Text from Minibuffer):
2525         * doc/lispref/loading.texi (Autoload):
2526         * doc/lispref/keymaps.texi (Controlling Active Maps):
2527         * doc/lispref/frames.texi (Frame Layout, Size and Position)
2528         (Size Parameters, Implied Frame Resizing):
2529         * doc/lispref/files.texi (Changing Files, Magic File Names):
2530         * doc/lispref/eval.texi (Self-Evaluating Forms):
2531         * doc/lispref/display.texi (Progress, Abstract Display)
2532         (Abstract Display Example, Bidirectional Display):
2533         * doc/lispref/commands.texi (Event Mod):
2534         * doc/emacs/windows.texi (Displaying Buffers):
2535         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
2536         * doc/emacs/text.texi (Enriched Text):
2537         * doc/emacs/programs.texi (MixedCase Words):
2538         * doc/emacs/picture-xtra.texi (Insert in Picture)
2539         (Tabs in Picture):
2540         * doc/emacs/misc.texi (Emacs Server, Printing):
2541         * doc/emacs/mini.texi (Minibuffer History):
2542         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
2543         (Pulling / Pushing):
2544         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
2545         * doc/emacs/help.texi (Help, Help Echo):
2546         * doc/emacs/glossary.texi (Glossary):
2547         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
2548         (Frame Commands):
2549         * doc/emacs/files.texi (Reverting, Saving, Directories):
2550         * doc/emacs/entering.texi (Exiting):
2551         * doc/emacs/emacs.texi (Top):
2552         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
2553         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
2554         appropriate or replace quoting with @dfn.
2555         * doc/misc/ediff.texi (Window and Frame Configuration):
2556         * doc/lispref/processes.texi (Network Feature Testing):
2557         * doc/lispref/display.texi (Display Margins): Quote the phrase
2558         after "a.k.a." where appropriate.
2560 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
2562         Clarify reftex-extra-bindings docs.
2563         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
2564         * doc/misc/reftex.texi (Key Bindings): Document that the variable
2565         only has an effect at load-time.
2567 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
2569         Fix search argument in ‘lisp--el-match-keyword’ (Bug#21492) (Bug#21493)
2570         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
2571         search argument.  (Bug#21492) (Bug#21493)
2573 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
2575         Add pretty symbols for \qquad and \varrho.
2576         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Add pretty
2577         symbols for \qquad and \varrho.
2579 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
2581         Add new functions for the root mean square of a (Calc) vector
2582         * lisp/calc/calc-stats.el (calcFunc-rms, calc-vector-rms):
2583         New functions.
2584         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
2585         `calc-vector-rms', add autoloads for `calc-vector-rms' and
2586         `calcFunc-rms'.
2587         * lisp/calc/calc-map.el (calc-u-oper-keys):  Add entry for
2588         `calcFunc-rms'.
2589         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
2590         `calc-vector-rms'.
2591         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
2592         command.
2594 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
2596         Add monotone EDE generic project
2597         * lisp/cedet/ede/generic.el (ede-enable-generic-projects): Add monotone
2598         generic project.
2600         Revert premature commit
2601         * doc/lispref/files.texi: Revert premature commit of change to
2602         file-name-all-completions.
2604         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
2605         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
2606         with cl-generic defaults.
2607         (elisp--xref-find-references): Add doc string.
2608         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
2609         tests to find bug.
2611         Fix bugs in eieio-oref-default related to class symbols
2612         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
2613         (eieio-oref-default): Handle class properly.
2615 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
2617         Quote “fullboth” when defining it
2618         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
2619         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
2621 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
2623         Minor doc fix in emacs/ack.texi
2624         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
2625         first argument.
2627 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
2629         Adapt tests in auto-revert-tests.el
2630         * test/automated/auto-revert-tests.el (auto-revert--timeout):
2631         Make it a defconst.
2632         (auto-revert--wait-for-revert): New defun.
2633         (auto-revert-test00-auto-revert-mode)
2634         (auto-revert-test01-auto-revert-tail-mode)
2635         (auto-revert-test02-auto-revert-mode-dired): Use it.
2637 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
2639         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const
2640         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
2641         (cl-lib-fdefs): Add defgeneric.
2642         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
2643         (eieio-kw, cl-lib-kw, el-kw): Remove.
2645 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
2647         Quote less in manuals
2648         The manuals often used quotes ``...'' when it is better to use @dfn or
2649         @code or capitalized words or no quoting at all.  For example, there is
2650         no need for the `` and '' in “if a variable has one effect for
2651         @code{nil} values and another effect for ``non-@code{nil}'' values”.
2652         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
2653         unnecessary quoting like this, and to use @dfn etc. instead when called
2654         for (Bug#21472).
2656 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
2658         lisp/custom.el (load-theme): Only compute hash when needed.
2660 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
2662         Pacify --enable-gcc-warnings
2663         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
2665 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
2667         Improve error reports in inotify.c
2668         * src/inotify.c (report_inotify_error): New function.  Clone of
2669         report_w32notify_error.
2670         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
2671         (Finotify_rm_watch): Use it.
2673 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
2675         Fix the file-notify tests for watch validation on w32
2676         * test/automated/file-notify-tests.el
2677         (file-notify-test04-file-validity): Move the directory deletion
2678         out of the file-notify--test-with-events macro.
2679         (file-notify-test04-file-validity)
2680         (file-notify-test05-dir-validity): Enlarge the timeout of
2681         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
2683 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
2685         Use OPEN BOX instead of space for \quad.
2686         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
2687         character for \quad instead of a space.
2689 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
2691         Add missing *.pbm images
2692         * etc/images/connect.pbm: New file.
2693         * etc/images/custom/down-pushed.pbm: New file.
2694         * etc/images/custom/down.pbm: New file.
2695         * etc/images/custom/right-pushed.pbm: New file.
2696         * etc/images/custom/right.pbm: New file.
2697         * etc/images/describe.pbm: New file.
2698         * etc/images/disconnect.pbm: New file.
2699         * etc/images/ezimage/bits.pbm: New file.
2700         * etc/images/ezimage/bitsbang.pbm: New file.
2701         * etc/images/ezimage/box-minus.pbm: New file.
2702         * etc/images/ezimage/box-plus.pbm: New file.
2703         * etc/images/ezimage/box.pbm: New file.
2704         * etc/images/ezimage/checkmark.pbm: New file.
2705         * etc/images/ezimage/dir-minus.pbm: New file.
2706         * etc/images/ezimage/dir-plus.pbm: New file.
2707         * etc/images/ezimage/dir.pbm: New file.
2708         * etc/images/ezimage/doc-minus.pbm: New file.
2709         * etc/images/ezimage/doc-plus.pbm: New file.
2710         * etc/images/ezimage/doc.pbm: New file.
2711         * etc/images/ezimage/info.pbm: New file.
2712         * etc/images/ezimage/key.pbm: New file.
2713         * etc/images/ezimage/label.pbm: New file.
2714         * etc/images/ezimage/lock.pbm: New file.
2715         * etc/images/ezimage/mail.pbm: New file.
2716         * etc/images/ezimage/page-minus.pbm: New file.
2717         * etc/images/ezimage/page-plus.pbm: New file.
2718         * etc/images/ezimage/page.pbm: New file.
2719         * etc/images/ezimage/tag-gt.pbm: New file.
2720         * etc/images/ezimage/tag-minus.pbm: New file.
2721         * etc/images/ezimage/tag-plus.pbm: New file.
2722         * etc/images/ezimage/tag-type.pbm: New file.
2723         * etc/images/ezimage/tag-v.pbm: New file.
2724         * etc/images/ezimage/tag.pbm: New file.
2725         * etc/images/ezimage/unlock.pbm: New file.
2726         * etc/images/gnus/important.pbm: New file.
2727         * etc/images/gnus/mail-send.pbm: New file.
2728         * etc/images/gnus/receipt.pbm: New file.
2729         * etc/images/gnus/toggle-subscription.pbm: New file.
2730         * etc/images/gnus/unimportant.pbm: New file.
2731         * etc/images/gud/all.pbm: New file.
2732         * etc/images/gud/rcont.pbm: New file.
2733         * etc/images/gud/recstart.pbm: New file.
2734         * etc/images/gud/recstop.pbm: New file.
2735         * etc/images/gud/rfinish.pbm: New file.
2736         * etc/images/gud/rnext.pbm: New file.
2737         * etc/images/gud/rnexti.pbm: New file.
2738         * etc/images/gud/rstep.pbm: New file.
2739         * etc/images/gud/rstepi.pbm: New file.
2740         * etc/images/gud/thread.pbm: New file.
2741         * etc/images/lock-broken.pbm: New file.
2742         * etc/images/lock-ok.pbm: New file.
2743         * etc/images/lock.pbm: New file.
2744         * etc/images/mail/copy.pbm: New file.
2745         * etc/images/mail/forward.pbm: New file.
2746         * etc/images/mail/not-spam.pbm: New file.
2747         * etc/images/mail/outbox.pbm: New file.
2748         * etc/images/mail/preview.pbm: New file.
2749         * etc/images/mail/save-draft.pbm: New file.
2750         * etc/images/mh-logo.pbm: New file.
2751         * etc/images/mpc/add.pbm: New file.
2752         * etc/images/mpc/ffwd.pbm: New file.
2753         * etc/images/mpc/next.pbm: New file.
2754         * etc/images/mpc/pause.pbm: New file.
2755         * etc/images/mpc/play.pbm: New file.
2756         * etc/images/mpc/prev.pbm: New file.
2757         * etc/images/mpc/rewind.pbm: New file.
2758         * etc/images/mpc/stop.pbm: New file.
2759         * etc/images/redo.pbm: New file.
2760         * etc/images/smilies/braindamaged.pbm: New file.
2761         * etc/images/smilies/cry.pbm: New file.
2762         * etc/images/smilies/dead.pbm: New file.
2763         * etc/images/smilies/evil.pbm: New file.
2764         * etc/images/smilies/forced.pbm: New file.
2765         * etc/images/smilies/grin.pbm: New file.
2766         * etc/images/smilies/indifferent.pbm: New file.
2767         * etc/images/sort-ascending.pbm: New file.
2768         * etc/images/sort-column-ascending.pbm: New file.
2769         * etc/images/sort-criteria.pbm: New file.
2770         * etc/images/sort-descending.pbm: New file.
2771         * etc/images/sort-row-ascending.pbm: New file.
2772         * etc/images/unchecked.pbm: New file.
2773         * etc/images/zoom-in.pbm: New file.
2774         * etc/images/README: Update instructions for PBM files.
2776         Add separator.pbm tool-bar image
2777         * etc/images/separator.pbm: New file.  Having it avoids the side
2778         effect of changing the tool-bar height when the default font's size
2779         changes and XPM image support is not available, due to the SPC
2780         characters that are left in the Lisp string used to display the tool
2781         bar, because there are no images to display instead of those SPC
2782         characters.
2784         Make show-paren-match face visible on mono-color displays
2785         * lisp/faces.el (show-paren-match): Use the underline face for
2786         mono-color displays.  (Bug#21481)
2788 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
2790         Don’t double-encode non-ASCII mail clipboard
2791         * lisp/mail/mailclient.el (mailclient-send-it):
2792         Also fix the case when mailclient-place-body-on-clipboard-flag
2793         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
2795 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
2797         Adapt file-notify-tests.el test cases
2798         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
2799         * src/inotify.c (Finotify_valid_p): Adapt docstring.
2800         * test/automated/file-notify-tests.el ()
2801         (file-notify-test03-autorevert)
2802         (file-notify-test04-file-validity)
2803         (file-notify-test04-file-validity-remote)
2804         (file-notify-test05-dir-validity)
2805         (file-notify-test05-dir-validity-remote): Adapt docstring.
2806         (file-notify-test04-file-validity): Let events arrive before
2807         calling final `file-notify-valid-p'.  Do not ignore errors.
2808         (file-notify-test05-dir-validity): Do not manipulate
2809         `temporary-file-directory', it isn't necessary.  Let events arrive
2810         before calling final `file-notify-valid-p'.  Do not ignore errors.
2812 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
2814         Don’t double-encode non-ASCII for mail client
2815         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
2816         Use RFC 6068’s list of unreserved characters.
2817         (mailclient-send-it): When encoding the body as a URL,
2818         first decode it as per Content-Type: and Content-Transfer-Encoding:,
2819         as URLs must use percent-encoded UTF-8 (Bug#21471).
2820         * doc/misc/url.texi (mailto): Update RFC number.
2822 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
2824         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
2826 2015-09-14  Alan Mackenzie  <acm@muc.de>
2828         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs.
2829         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
2830         `cadr/car'.
2832 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
2834         Clarify documentation of char-table extra slots
2835         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
2836         slot numbers are zero-based.  (Bug#21467)
2838 2015-09-14  Alan Mackenzie  <acm@muc.de>
2840         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
2841         Fixes debbugs#21449.
2842         lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
2843         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
2844         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
2845         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
2846         Insert "\\|\\\\." into regexps which match symbols.
2848 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
2850         Improve the doc string of w32notify-valid-p
2851         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
2852         that removing a watch makes its object invalid.
2854 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
2856         Fix tests for file-notify-valid-p.
2857         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
2858         Use delete-directory to delete file-notify--test-tmpfile if it is
2859         a directory.  Likewise for file-notify--test-tmpfile1.
2860         (file-notify-test04-file-validity)
2861         (file-notify-test05-dir-validity): Delete the parent directory of
2862         the test.  Ignore errors when cleaning up after the test.
2864 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
2866         Report file-notify-error in w32notify.c
2867         * src/w32notify.c (report_w32notify_error): New function.
2868         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
2869         errors, instead of calling report_file_error.  (Bug#21432)
2871         Implement w32notify-valid-p
2872         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
2873         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
2874         'identity'.
2876 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
2878         Test file-notify-valid-p.
2879         * test/automated/file-notify-tests.el
2880         (file-notify-test04-file-validity, file-notify-test05-dir-validity): New
2881         tests.
2883 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
2885         Fix markup in ELisp manual
2886         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
2887         of the 'alpha' parameter value.  (Bug#21470)
2889 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
2891         Introduce `file-notify-valid-p'
2892         * lisp/filenotify.el (file-notify-valid-p): New defun.
2893         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
2894         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
2895         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
2896         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
2897         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
2898         <file-notify-valid-p>: Add handler.
2899         * lisp/net/tramp.el (tramp-file-name-for-operation):
2900         Add `file-notify-valid-p'.
2901         (tramp-handle-file-notify-valid-p): New defun.
2902         * src/inotify.c (Finotify_valid_p): New defun.
2903         (syms_of_inotify): Declare Sinotify_valid_p.
2905 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
2907         Port Unicode char detection to FreeBSD+svgalib
2908         Problem reported by Ashish SHUKLA in:
2909         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
2910         * configure.ac: Check for struct unipair.unicode instead of for
2911         <linux/kd.h>, since that’s more specific to what the code actually needs.
2912         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
2914         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
2916 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
2918         Fix vertical cursor motion across overlay strings with newlines
2919         * src/indent.c (Fvertical_motion): Don't leave point in the middle
2920         of an overlay string with newlines, as that will position the
2921         cursor after the string at whatever column is there.  (Bug#21468)
2923 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
2925         Fix tests in file-notify-tests.el
2926         * test/automated/file-notify-tests.el: Remove Tramp declarations.
2927         (file-notify-test00-availability): Print remote command w/o Tramp
2928         internal functions.
2929         (file-notify-test02-events, file-notify-test02-events-remote):
2930         Adapt docstring.
2931         (file-notify-test03-autorevert): Use `format-message' when
2932         inspecting *Messages* buffer.
2934 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
2936         Bind inhibit-modification-hooks rather than a/b-c-f
2937         * lisp/wid-edit.el (widget-editable-list-insert-before)
2938         (widget-editable-list-delete-at):
2939         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
2940         (cperl-font-lock-unfontify-region-function):
2941         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
2942         * lisp/obsolete/longlines.el (longlines-mode):
2943         * lisp/obsolete/fast-lock.el (save-buffer-state):
2944         * lisp/mouse.el (mouse-save-then-kill-delete-region):
2945         * lisp/gnus/message.el (message-hide-headers):
2946         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
2947         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
2948         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
2949         than after/before-change-functions to nil.
2951 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
2953         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
2954         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
2955         the buffers, even if the forced redisplay is interrupted.
2957         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
2959         Merge syntax-propertize--done and parse-sexp-propertize-done
2960         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
2961         (syntax-propertize): Set syntax-propertize--done even if
2962         syntax-propertize-function is nil.  Avoid recursive invocations.
2963         (syntax-propertize-chunks): New var.
2964         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
2965         Simplify.
2966         (parse-sexp-propertize-function): Don't set any more.
2967         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
2968         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
2969         Call Qinternal__syntax_propertize instead of
2970         Vparse_sexp_propertize_function.  Truncate e_property if needed.
2971         (update_syntax_table_forward): Streamline.
2972         (syms_of_syntax): Define Qinternal__syntax_propertize.
2973         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
2975 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
2977         Prefer straight quoting in some text files
2978         Mostly this just changes ` to ' in static text.  Some exceptions:
2979         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
2980         typically does that now.
2981         * admin/quick-install-emacs (TRY, top level):
2982         Use straight quoting in diagnostics.
2983         * src/README: Fix working-directory confusion.
2985         * CONTRIBUTE: Move send-email here from git-workflow.
2987 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
2989         Improve file notifications in Tramp
2990         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
2991         Set proper events to watch for.
2992         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
2993         watched events.
2995 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
2997         Fix NS build with --enable-checking='glyphs'
2998         * src/nsfns.m (unwind_create_frame): Make the preprocessor
2999         conditionals for referencing 'dpyinfo' consistent throughout the
3000         function.  (Bug#21426)
3002 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
3004         Add seq-find
3005         This function is similar to `seq-some' but returns the found element.
3006         In the cases where nil can be the found element, a sentinel optional
3007         argument can be provided to avoid ambiguities.
3008         * lisp/emacs-lisp/seq.el (seq-find): New function.
3009         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
3010         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
3011         seq-find.
3013 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
3015         Document file-notify--test-with-events.
3016         * test/automated/file-notify-tests.el (file-notify--test-with-events):
3017         Add docstring.
3019 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
3021         Report used native library in file-notify-tests.el
3022         * test/automated/file-notify-tests.el
3023         (tramp-get-remote-gvfs-monitor-dir)
3024         (tramp-get-remote-inotifywait): Declare them.
3025         (file-notify-test00-availability): Print used native library.
3027 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
3029         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
3030         (mpc-file-local-copy): Check for absolute path.  Check more config
3031         locations.
3033 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
3035         Improve documentation of categories
3036         * doc/lispref/syntax.texi (Categories): Clarify the example of
3037         using define-category and modify-category-entry.  (Bug#21448)
3039 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
3041         Revert some stray curved quotes I missed earlier
3042         Problem reported by David Kastrup in:
3043         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
3044         * lisp/international/mule-cmds.el (leim-list-header):
3045         Use format-message with an ASCII-only format.
3047         Prefer NUMBERP to spelling it out
3048         * src/editfns.c (styled_format):
3049         * src/frame.h (NUMVAL):
3050         * src/image.c (parse_image_spec):
3051         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
3052         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
3053         * src/process.c (Fsignal_process):
3054         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
3055         * src/xfaces.c (check_lface_attrs):
3056         * src/xselect.c (x_fill_property_data, x_send_client_event):
3057         Use NUMBERP rather than INTEGERP || FLOATP.
3059 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
3061         Improve file-notify-tests
3062         * test/automated/file-notify-tests.el: Use lexical-binding
3063         (file-notify--test-cleanup): New function.
3064         (file-notify-test00-availability, file-notify-test01-add-watch)
3065         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
3066         (file-notify--test-with-events): New macro.
3067         (file-notify-test02-events): Use it.
3069 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
3071         Add patch-sending instructions to git-workflow
3072         From a suggestion by Mitchel Humpherys in:
3073         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
3074         * admin/notes/git-workflow (Sending patches): New section.
3076         Port to GIFLIB 5.0.6 and later
3077         Problem reported by Mitchel Humpherys in:
3078         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
3079         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
3080         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
3081         (gif_load) [HAVE_GIF]: Use it.
3083 2015-09-10  Glenn Morris  <rgm@gnu.org>
3085         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
3087 2015-09-09  Glenn Morris  <rgm@gnu.org>
3089         * test/automated/file-notify-tests.el (file-notify-test02-events):
3090         Fix recent change.
3092 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
3094         Refix movemail GCC pacification
3095         Problem reported by Ken Brown in:
3096         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
3097         * lib-src/movemail.c (main): Fix previous change.
3099 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3101         (time-to-seconds, time-less-p): Mark unused vars with underscore
3102         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
3103         Mark unused vars with underscore.
3105         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
3106         (parse_sexp_propertize): ...from here.
3108         * lisp/filenotify.el: Use lexical-binding
3109         (file-notify-add-watch): Avoid add-to-list.
3111 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
3113         Start checking event types in file-notify tests
3114         * test/automated/file-notify-tests.el (file-notify--test-events): New
3115         variable.
3116         (file-notify--test-event-handler): Append received event to
3117         file-notify--test-events for later analysis.
3118         (file-notify-test02-events): Assert that the expected notifications have
3119         arrived in the expected order.
3121 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
3123         Merge from gnulib and texinfo
3124         This incorporates:
3125         2015-08-03 Improve port of stdalign to C++11
3126         * lib/stdalign.in.h: Copy from gnulib.
3127         * doc/misc/texinfo.tex: Copy from texinfo.
3129 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3131         Make syntax.c call syntax-propertize on demand
3132         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
3133         (parse-sexp-propertize-function): Use it.
3134         (syntax-propertize): Disable parse-sexp-propertize-function.
3135         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
3136         New functions.
3137         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
3138         `parse-sexp-propertize-function'.
3139         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
3140         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
3141         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
3142         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
3143         Don't assume `point' is set.
3145 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
3147         Fix indentation of an @example in ELisp manual
3148         * doc/lispref/syntax.texi (Categories): Untabify the example.
3149         (Bug#21448)
3151 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
3153         Define internal-char-font even if --without-x
3154         The function is used now even in non-graphical environments.
3155         Problem reported by Glenn Morris in:
3156         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
3157         * src/font.c (Finternal_char_font): Move here ...
3158         * src/fontset.c (Finternal_char_font): ... from here.
3160 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3162         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers): Remove
3163         warning.
3165 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
3167         Fix display of complex local data types in GDB-MI
3168         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
3169         variable has no value, display "<complex data type>" as a
3170         placeholder, instead of a confusing "nil".  (Bug#21438)
3172 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
3174         Remove redundant redefinition of seq-drop-while from seq.el
3175         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
3177 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
3179         * lisp/emacs-lisp/package.el (package--ensure-init-file)
3180         More robust check for `package-initialize' calls in init file.
3181         This function accepts an optional argument, but calls passing
3182         an argument would not have been detected.
3184 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
3186         Port movemail to RHEL 6 with --enable-gcc-warnings
3187         * lib-src/movemail.c (main): Declare local only if needed.
3189         Port recent Linux console changes to RHEL 6
3190         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
3192         Improvements for curved quotes on Linux consule
3193         This should help Emacs work better out-of-the-box on Linux consoles,
3194         which have only limited support for displaying Unicode characters.
3195         Also, undo the recent change that caused text-quoting-style to
3196         affect quote display on terminals, so that the two features are
3197         independent.  See Alan Mackenzie in:
3198         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
3199         Finally, add a style parameter to startup--setup-quote-display,
3200         so that this function can also be invoked after startup, with
3201         different styles depending on user preference at the time.
3202         * configure.ac: Check for linux/kd.h header.
3203         * doc/emacs/display.texi (Text Display): Document quote display.
3204         * doc/lispref/display.texi (Active Display Table):
3205         * etc/NEWS:
3206         * lisp/startup.el (startup--setup-quote-display, command-line):
3207         text-quoting-style no longer affects quote display.
3208         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
3209         * lisp/international/mule-util.el (char-displayable-p):
3210         * lisp/startup.el (startup--setup-quote-display):
3211         On a text terminal supporting glyph codes, use the reported
3212         glyph codes instead of the terminal coding system, as this
3213         is more accurate on the Linux console.
3214         * lisp/startup.el (startup--setup-quote-display):
3215         New optional arg STYLE.
3216         * src/fontset.c (Finternal_char_font):
3217         Report glyph codes for a text terminal, if they are available.
3218         Currently this is supported only for the Linux console.
3219         * src/termhooks.h (struct terminal): New member glyph-code-table.
3220         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
3221         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
3222         (terminal_glyph_code): New function.
3224 2015-09-08  Juri Linkov  <juri@linkov.net>
3226         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
3227         underline.  (Bug#21433)
3229 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
3231         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
3233 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
3235         Fix double-reporting of rename events with inotify
3236         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
3237         of rename events with inotify (bug#21435).
3239 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
3241         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
3242         (tetris-mode-map): Use it.
3244 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
3246         Remove a few simple cases of global redisplay
3247         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
3248         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
3249         rather than returning a "resized_p" boolean.
3250         (redisplay_internal): Adjust call accordingly.
3251         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
3252         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
3253         tracking of this undesirable situation.
3255         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
3256         * src/process.c (status_notify): Only set the update_mode_line on the
3257         relevant buffers rather than setting it globally.
3259 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
3261         * lisp/electric.el (electric-quote-post-self-insert-function):
3262         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
3263         (electric-quote-mode): Activate everywhere in message-mode.
3265 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
3267         Go back to grave quoting in source-code docstrings etc.
3268         This reverts almost all my recent changes to use curved quotes
3269         in docstrings and/or strings used for error diagnostics.
3270         There are a few exceptions, e.g., Bahá’í proper names.
3271         * admin/unidata/unidata-gen.el (unidata-gen-table):
3272         * lisp/abbrev.el (expand-region-abbrevs):
3273         * lisp/align.el (align-region):
3274         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
3275         (outlineify-sticky):
3276         * lisp/apropos.el (apropos-library):
3277         * lisp/bookmark.el (bookmark-default-annotation-text):
3278         * lisp/button.el (button-category-symbol, button-put)
3279         (make-text-button):
3280         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
3281         * lisp/calc/calc-embed.el (calc-do-embedded):
3282         * lisp/calc/calc-ext.el (calc-user-function-list):
3283         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
3284         * lisp/calc/calc-help.el (calc-describe-key)
3285         (calc-describe-thing, calc-full-help):
3286         * lisp/calc/calc-lang.el (calc-c-language)
3287         (math-parse-fortran-vector-end, math-parse-tex-sum)
3288         (math-parse-eqn-matrix, math-parse-eqn-prime)
3289         (calc-yacas-language, calc-maxima-language, calc-giac-language)
3290         (math-read-giac-subscr, math-read-math-subscr)
3291         (math-read-big-rec, math-read-big-balance):
3292         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
3293         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
3294         (calc-auto-recompute):
3295         * lisp/calc/calc-prog.el (calc-fix-token-name)
3296         (calc-read-parse-table-part, calc-user-define-invocation)
3297         (math-do-arg-check):
3298         * lisp/calc/calc-store.el (calc-edit-variable):
3299         * lisp/calc/calc-units.el (math-build-units-table-buffer):
3300         * lisp/calc/calc-vec.el (math-read-brackets):
3301         * lisp/calc/calc-yank.el (calc-edit-mode):
3302         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
3303         * lisp/calendar/appt.el (appt-display-message):
3304         * lisp/calendar/diary-lib.el (diary-check-diary-file)
3305         (diary-mail-entries, diary-from-outlook):
3306         * lisp/calendar/icalendar.el (icalendar-export-region)
3307         (icalendar--convert-float-to-ical)
3308         (icalendar--convert-date-to-ical)
3309         (icalendar--convert-ical-to-diary)
3310         (icalendar--convert-recurring-to-diary)
3311         (icalendar--add-diary-entry):
3312         * lisp/calendar/time-date.el (format-seconds):
3313         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
3314         (timeclock-make-hours-explicit, timeclock-log-data):
3315         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
3316         (todo-item-mark, todo-check-format)
3317         (todo-insert-item--next-param, todo-edit-item--next-key)
3318         (todo-mode):
3319         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
3320         * lisp/cedet/mode-local.el (describe-mode-local-overload)
3321         (mode-local-print-binding, mode-local-describe-bindings-2):
3322         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
3323         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
3324         * lisp/cus-start.el (standard):
3325         * lisp/cus-theme.el (describe-theme-1):
3326         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
3327         (custom--sort-vars-1, load-theme):
3328         * lisp/descr-text.el (describe-text-properties-1, describe-char):
3329         * lisp/dired-x.el (dired-do-run-mail):
3330         * lisp/dired.el (dired-log):
3331         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
3332         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
3333         (ad-disable-advice, ad-remove-advice, ad-set-argument)
3334         (ad-set-arguments, ad--defalias-fset, ad-activate)
3335         (ad-deactivate):
3336         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
3337         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
3338         (byte-optimize-while, byte-optimize-apply):
3339         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
3340         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
3341         (byte-compile-log-file, byte-compile-format-warn)
3342         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
3343         (byte-compile-cl-warn)
3344         (byte-compile-warn-about-unresolved-functions)
3345         (byte-compile-file, byte-compile--declare-var)
3346         (byte-compile-file-form-defmumble, byte-compile-form)
3347         (byte-compile-normal-call, byte-compile-check-variable)
3348         (byte-compile-variable-ref, byte-compile-variable-set)
3349         (byte-compile-subr-wrong-args, byte-compile-setq-default)
3350         (byte-compile-negation-optimizer)
3351         (byte-compile-condition-case--old)
3352         (byte-compile-condition-case--new, byte-compile-save-excursion)
3353         (byte-compile-defvar, byte-compile-autoload)
3354         (byte-compile-lambda-form)
3355         (byte-compile-make-variable-buffer-local, display-call-tree)
3356         (batch-byte-compile):
3357         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
3358         * lisp/emacs-lisp/chart.el (chart-space-usage):
3359         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
3360         (check-declare-warn, check-declare-file)
3361         (check-declare-directory):
3362         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
3363         (checkdoc-message-text-engine):
3364         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
3365         (cl--describe-class):
3366         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
3367         (cl--generic-describe, cl-generic-generalizers):
3368         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
3369         (cl-symbol-macrolet):
3370         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
3371         * lisp/emacs-lisp/copyright.el (copyright)
3372         (copyright-update-directory):
3373         * lisp/emacs-lisp/edebug.el (edebug-read-list):
3374         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
3375         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
3376         (eieio-oref):
3377         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
3378         * lisp/emacs-lisp/eieio-speedbar.el:
3379         (eieio-speedbar-child-make-tag-lines)
3380         (eieio-speedbar-child-description):
3381         * lisp/emacs-lisp/eieio.el (defclass, change-class):
3382         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
3383         (elint-init-form, elint-check-defalias-form)
3384         (elint-check-let-form):
3385         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
3386         (ert-results-pop-to-backtrace-for-test-at-point)
3387         (ert-results-pop-to-messages-for-test-at-point)
3388         (ert-results-pop-to-should-forms-for-test-at-point)
3389         (ert-describe-test):
3390         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
3391         (find-function-library):
3392         * lisp/emacs-lisp/generator.el (iter-yield):
3393         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
3394         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
3395         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
3396         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
3397         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
3398         (advice--make, define-advice):
3399         * lisp/emacs-lisp/package-x.el (package-upload-file):
3400         * lisp/emacs-lisp/package.el (package-version-join)
3401         (package-disabled-p, package-activate-1, package-activate)
3402         (package--download-one-archive)
3403         (package--download-and-read-archives)
3404         (package-compute-transaction, package-install-from-archive)
3405         (package-install, package-install-selected-packages)
3406         (package-delete, package-autoremove, describe-package-1)
3407         (package-install-button-action, package-delete-button-action)
3408         (package-menu-hide-package, package-menu--list-to-prompt)
3409         (package-menu--perform-transaction)
3410         (package-menu--find-and-notify-upgrades):
3411         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
3412         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
3413         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
3414         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
3415         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
3416         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
3417         (rx-form):
3418         * lisp/emacs-lisp/smie.el (smie-config-save):
3419         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
3420         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
3421         * lisp/emacs-lisp/testcover.el (testcover-1value):
3422         * lisp/emacs-lisp/timer.el (timer-event-handler):
3423         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
3424         (viper-toggle-search-style, viper-kill-buffer)
3425         (viper-brac-function):
3426         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
3427         * lisp/env.el (setenv):
3428         * lisp/erc/erc-button.el (erc-nick-popup):
3429         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
3430         * lisp/eshell/em-dirs.el (eshell/cd):
3431         * lisp/eshell/em-glob.el (eshell-glob-regexp)
3432         (eshell-glob-entries):
3433         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
3434         * lisp/eshell/esh-opt.el (eshell-show-usage):
3435         * lisp/facemenu.el (facemenu-add-new-face)
3436         (facemenu-add-new-color):
3437         * lisp/faces.el (read-face-name, read-face-font, describe-face)
3438         (x-resolve-font-name):
3439         * lisp/files-x.el (modify-file-local-variable):
3440         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
3441         (set-auto-mode, hack-one-local-variable--obsolete)
3442         (dir-locals-set-directory-class, write-file, basic-save-buffer)
3443         (delete-directory, copy-directory, recover-session)
3444         (recover-session-finish, insert-directory)
3445         (file-modes-char-to-who, file-modes-symbolic-to-number)
3446         (move-file-to-trash):
3447         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
3448         * lisp/find-cmd.el (find-generic, find-to-string):
3449         * lisp/finder.el (finder-commentary):
3450         * lisp/font-lock.el (font-lock-fontify-buffer):
3451         * lisp/format.el (format-write-file, format-find-file)
3452         (format-insert-file):
3453         * lisp/frame.el (get-device-terminal, select-frame-by-name):
3454         * lisp/fringe.el (fringe--check-style):
3455         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
3456         * lisp/help-fns.el (help-fns--key-bindings)
3457         (help-fns--compiler-macro, help-fns--parent-mode)
3458         (help-fns--obsolete, help-fns--interactive-only)
3459         (describe-function-1, describe-variable):
3460         * lisp/help.el (describe-mode)
3461         (describe-minor-mode-from-indicator):
3462         * lisp/image.el (image-type):
3463         * lisp/international/ccl.el (ccl-dump):
3464         * lisp/international/fontset.el (x-must-resolve-font-name):
3465         * lisp/international/mule-cmds.el (prefer-coding-system)
3466         (select-safe-coding-system-interactively)
3467         (select-safe-coding-system, activate-input-method)
3468         (toggle-input-method, describe-current-input-method)
3469         (describe-language-environment):
3470         * lisp/international/mule-conf.el (code-offset):
3471         * lisp/international/mule-diag.el (describe-character-set)
3472         (list-input-methods-1):
3473         * lisp/mail/feedmail.el (feedmail-run-the-queue):
3474         * lisp/mouse.el (minor-mode-menu-from-indicator):
3475         * lisp/mpc.el (mpc-playlist-rename):
3476         * lisp/msb.el (msb--choose-menu):
3477         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
3478         * lisp/net/imap.el (imap-interactive-login):
3479         * lisp/net/mairix.el (mairix-widget-create-query):
3480         * lisp/net/newst-backend.el (newsticker--sentinel-work):
3481         * lisp/net/newst-treeview.el (newsticker--treeview-load):
3482         * lisp/net/rlogin.el (rlogin):
3483         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
3484         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
3485         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
3486         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
3487         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
3488         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
3489         (org-babel-goto-named-result):
3490         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
3491         * lisp/org/ob-ref.el (org-babel-ref-resolve):
3492         * lisp/org/org-agenda.el (org-agenda-prepare):
3493         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
3494         (org-clock-resolve):
3495         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
3496         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
3497         * lisp/org/org-habit.el (org-habit-parse-todo):
3498         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
3499         (org-mouse-context-menu):
3500         * lisp/org/org-table.el (org-table-edit-formulas):
3501         * lisp/org/ox.el (org-export-async-start):
3502         * lisp/proced.el (proced-log):
3503         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
3504         (ada-check-matching-start, ada-goto-matching-start):
3505         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
3506         * lisp/progmodes/ada-xref.el (ada-find-executable):
3507         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
3508         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
3509         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
3510         (flymake-start-syntax-check-process):
3511         * lisp/progmodes/python.el (python-shell-get-process-or-error)
3512         (python-define-auxiliary-skeleton):
3513         * lisp/progmodes/sql.el (sql-comint):
3514         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
3515         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
3516         * lisp/recentf.el (recentf-open-files):
3517         * lisp/replace.el (query-replace-read-from)
3518         (occur-after-change-function, occur-1):
3519         * lisp/scroll-bar.el (scroll-bar-columns):
3520         * lisp/server.el (server-get-auth-key):
3521         * lisp/simple.el (execute-extended-command)
3522         (undo-outer-limit-truncate, list-processes--refresh)
3523         (compose-mail, set-variable, choose-completion-string)
3524         (define-alternatives):
3525         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
3526         (command-line-1):
3527         * lisp/subr.el (noreturn, define-error, add-to-list)
3528         (read-char-choice, version-to-list):
3529         * lisp/term/common-win.el (x-handle-xrm-switch)
3530         (x-handle-name-switch, x-handle-args):
3531         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
3532         * lisp/textmodes/reftex-ref.el (reftex-label):
3533         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
3534         * lisp/textmodes/two-column.el (2C-split):
3535         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
3536         (tutorial--find-changed-keys):
3537         * lisp/type-break.el (type-break-noninteractive-query):
3538         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
3539         (wdired-do-perm-changes):
3540         * lisp/whitespace.el (whitespace-report-region):
3541         Prefer grave quoting in source-code strings used to generate help
3542         and diagnostics.
3543         * lisp/faces.el (face-documentation):
3544         No need to convert quotes, since the result is a docstring.
3545         * lisp/info.el (Info-virtual-index-find-node)
3546         (Info-virtual-index, info-apropos):
3547         Simplify by generating only curved quotes, since info files are
3548         typically that ways nowadays anyway.
3549         * lisp/international/mule-diag.el (list-input-methods):
3550         Don’t assume text quoting style is curved.
3551         * lisp/org/org-bibtex.el (org-bibtex-fields):
3552         Revert my recent changes, going back to the old quoting style.
3554 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
3556         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling
3557         (package--autoloads-file-name)
3558         (package--activate-autoloads-and-load-path): New function.
3559         (package-activate-1): Delegate autoloading and load-path
3560         configuration to `package--activate-autoloads-and-load-path'.
3561         (package--compile): Before compilation, call
3562         `package--activate-autoloads-and-load-path' instead of
3563         `package-activate-1'.
3565 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
3567         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
3569 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
3571         Fix deletion of symlinks to directories on MS-Windows
3572         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
3573         symlink to a directory, try again with 'rmdir'.
3574         (is_symlink): If the argument is a symlink to a directory, set a
3575         bit in the return value to indicate that fact.
3577 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
3579         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
3580         When `package-initialize' is called as part of loading the init file,
3581         the user probably doesn't want it to be called again afterwards. In this
3582         situation, `package-initialize' now sets `package-enable-at-startup' to
3583         nil to prevent that. The user can have the old behaviour by setting this
3584         variable to t after the call to `package-initialize'.  (Bug#21423)
3585         * doc/emacs/package.texi (Package Installation): Document it.
3586         * doc/lispref/package.texi (Packaging Basics): Document it.
3587         * etc/NEWS: Document it.
3589 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3591         Bump version of ntlm.el to 2.00
3592         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.  Add comm
3593         keyword.
3595 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
3597         * doc/misc/gnus.texi (Mail Source Specifiers):
3598         Allow :mailbox to be a list.
3600 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
3602         Allow even one non-regular character before the implicit tag name
3603         * lisp/progmodes/etags.el (etags-tags-completion-table):
3604         Allow even one non-regular character before the implicit tag name.
3605         Reported at http://emacs.stackexchange.com/questions/15269/.
3607 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3609         Add support for NTLMv2 authentication
3610         * net/ntlm.el (ntlm): New customization group.
3611         (ntlm-compatibility-level): New defcustom.
3612         (ntlm-compute-timestamp): New function.
3613         (ntlm-generate-nonce): Likewise.
3614         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
3616 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
3618         * lisp/emacs-lisp/package.el: Rename custom faces
3619         All of the recently introduced faces, like `package-name-face', have
3620         been renamed to no end in `-face' to comply with the convention
3621         described in (info "(elisp) Defining Faces").
3622         (package-name, package-description)
3623         (package-status-built-in, package-status-external)
3624         (package-status-available, package-status-new)
3625         (package-status-held, package-status-disabled)
3626         (package-status-installed, package-status-dependency)
3627         (package-status-unsigned, package-status-incompat)
3628         (package-status-avail-obso): New faces.
3629         (package-menu--print-info-simple): Use them.
3631 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
3633         mail-source.el: Make the imap mail-source's :mailbox handle a list
3634         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
3635         Allow :mailbox to be  a list.
3637 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
3639         nnimap.el:  Handle nil arg to nnimap-request-group
3640         * lisp/gnus/nnimap.el (nnimap-request-group):  Handle nil "info" arg.
3641         This arg isn't always passed in, check it's not nil before making it
3642         into a list.  The active arg will also be nil if the group is new,
3643         check for that.
3645 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
3647         File notifications: Support renaming over directory boundaries
3648         * lisp/filenotify.el (file-notify-handle-event):
3649         (file-notify--pending-event): Adapt docstring.
3650         (file-notify--descriptor, file-notify-callback): Reimplement in
3651         order to support renaming over directory boundaries.
3652         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
3653         * doc/lispref/os.texi (File Notifications): Remove limitation of
3654         file renaming to the same directory.
3656 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
3658         Spelling fix (Bug#21420)
3660 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
3662         Improve the semantic of map-some
3663         Update map-some to return the returned by the predicate, similar to
3664         seq-some.
3665         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
3666           return value of the predicate.
3667         * test/automated/map-tests.el (test-map-some): Update the test to check
3668           for non-nil values only.
3670         Rename map-contains-key-p and map-some-p
3671         Remove the "-p" suffix from both function names.
3672         * lisp/emacs-lisp/map.el (map-contains-key, map-some): Rename the functions.
3673         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
3674           Update both test functions.
3676         Improve the semantic of seq-some
3677         Update seq-some to return non-nil if the predicate returns non-nil for
3678         any element of the seq, in which case the returned value is the one
3679         returned by the predicate.
3680         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
3681           docstring.
3682         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
3683         * doc/lispref/sequences.texi (Sequence Functions): Update the
3684           documentation for seq-some.
3686         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
3687         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
3688           without the "-p" prefix.
3689         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
3690           the tests accordingly.
3691         * doc/lispref/sequences.texi (Sequence Functions): Update the
3692           documentation for seq.el.
3694 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
3696         text-quoting-style for usage of fn names with ‘’
3697         * lisp/help.el (help--docstring-quote): Don’t assume
3698         text-quoting-style is ‘curve’ when generating usage strings for
3699         functions whose names contain curved quotes.
3701 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
3703         Fix fix for describe-function keybinding confusion
3704         This fixes a bug introduced by the previous patch.
3705         * lisp/help-fns.el (help-fns--signature):
3706         Last arg of help-fns--signature is now a buffer, or nil if a
3707         raw signature is wanted.  All callers changed.
3708         (describe-function-1): Use this to do the right thing with signatures.
3710 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
3712         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
3714         Use PAT rather than UPAT in pcase macros
3715         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
3716         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
3717           than UPAT.
3719 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
3721         Fix describe-function keybinding confusion
3722         * lisp/help-fns.el (describe-function-1): Compute signature
3723         in the original buffer, not in standard-output, so that
3724         substitute-command-keys uses the proper keybindings.
3725         This fixes Bug#21412, introduced in commit
3726         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
3728 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
3730         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
3732 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
3734         Avoid read error messages from 'inotify'
3735         * src/process.c (wait_reading_process_output): Add a
3736         'tls_available' set and manipulate it instead of 'Available' when
3737         checking TLS inputs.  Assign the value to 'Available' only if we
3738         find any TLS data waiting to be read.  This avoids error messages
3739         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
3741 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
3743         Avoid errors in thing-at-point with 2nd argument non-nil
3744         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
3745         sequences.  (Bug#21391)
3747 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
3749         Fix segfaults due to using a stale face ID
3750         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
3751         (display_echo_area_1, redisplay_internal): Call it to avoid
3752         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
3753         faces, which could case a segfault if the frame's face cache was
3754         freed since the last redisplay.  (Bug#21394)
3755         * src/xfaces.c (free_realized_faces): Call
3756         forget_escape_and_glyphless_faces.
3757         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
3759 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
3761         Fix minor problems with " in manual
3763 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
3765         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
3766         multi-hop files.
3768 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
3770         Support automated ‘make check’ in non-C locale
3771         This lets the builder optionally test Emacs behavior in other locales.
3772         The C locale is still the default for tests.
3773         * test/automated/Makefile.in (TEST_LOCALE): New macro.
3774         (emacs): Use it.
3775         * test/automated/flymake-tests.el (flymake-tests--current-face):
3776         Use C locale for subprocesses so that tests behave as expected.
3777         * test/automated/python-tests.el:
3778         (python-shell-prompt-validate-regexps-1)
3779         (python-shell-prompt-validate-regexps-2)
3780         (python-shell-prompt-validate-regexps-3)
3781         (python-shell-prompt-validate-regexps-4)
3782         (python-shell-prompt-validate-regexps-5)
3783         (python-shell-prompt-validate-regexps-6)
3784         (python-shell-prompt-set-calculated-regexps-1):
3785         Adjust expected output to match locale.
3786         * test/automated/tildify-tests.el (tildify-test--test)
3787         (tildify-space-test--test, tildify-space-undo-test--test):
3788         This test assumes UTF-8 encoding.
3790 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
3792         Fix some more docstring etc. quoting problems
3793         Mostly these fixes prevent the transliteration of apostrophes
3794         that should stay apostrophes.  Also, prefer curved quotes in
3795         Bahá’í proper names, as that’s the preferred Bahá’í style and
3796         these names are chock-full of non-ASCII characters anyway.
3797         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
3798         (eieio-defclass-internal):
3799         * lisp/emacs-lisp/eieio.el (defclass):
3800         * lisp/hi-lock.el (hi-lock-mode):
3801         Don’t transliterate Lisp apostrophes when generating a
3802         doc string or diagnostic.
3803         * lisp/international/mule-diag.el (list-coding-systems-1):
3804         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
3805         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
3806         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
3807         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
3808         Substitute quotes before putting them in the help buffer.
3810 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
3812         Re-add the notion of echo_prompt lost in the translation
3813         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
3814         echo_prompt which contains the actual string.  Update all uses.
3815         * src/keyboard.c (kset_echo_prompt): New function.
3816         (echo_update): Add echo_prompt at the very beginning.
3817         (read_char): Remove workaround for bug#19875, not needed any more.
3818         (read_key_sequence): Set echo_prompt rather than echo_string (bug#21403).
3819         (mark_kboards): Mark echo_prompt.
3821         Fix disassembly of non-compiled lexical functions (bug#21377)
3822         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
3823         * lisp/emacs-lisp/disass.el: Use lexical-binding.
3824         (disassemble): Recognize `closure's as well.
3825         (disassemble-internal): Use indirect-function and
3826         help-function-arglist, and accept `closure's.
3827         (disassemble-internal): Use interactive-form.
3828         (disassemble-1): Use functionp.
3830         (tex--prettify-symbols-compose-p): Don't compose in verbatim blocks!
3831         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
3832         Don't compose inside verbatim blocks!
3834 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
3836         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
3837         (bug#19441)
3839         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394)
3841 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
3843         vc-git-mode-line-string: Explicitly re-apply the face
3844         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
3845         the face (bug#21404).
3847 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
3849         Treat initial-scratch-message as a doc string
3850         * doc/emacs/building.texi (Lisp Interaction):
3851         * doc/lispref/os.texi (Startup Summary):
3852         * etc/NEWS: Document this.
3853         * lisp/startup.el (initial-scratch-message):
3854         Look up find-file’s key rather than hardcoding it.
3855         (command-line-1): Substitute the doc string.
3856         This also substitutes the quotes, which will help test display
3857         quoting at startup.
3859         Fix describe-char bug with glyphs on terminals
3860         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
3861         buffers too, so don’t treat them differently from graphic displays.
3862         Without this fix, describe-char would throw an error on a terminal
3863         if given a glyph with a non-default face.
3865         Follow text-quoting-style in display table init
3866         This attempts to fix a problem reported by Alan Mackenzie in:
3867         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
3868         * doc/lispref/display.texi (Active Display Table):
3869         Mention how text-quoting-style affects it.
3870         * doc/lispref/help.texi (Keys in Documentation):
3871         Say how to set text-quoting-style in ~/.emacs.
3872         * etc/NEWS: Document the change.
3873         * lisp/startup.el (startup--setup-quote-display):
3874         Follow user preference if text-quoting-style is set.
3875         (command-line): Setup quote display again if user expresses
3876         a preference in .emacs.
3878 2015-09-02  K. Handa  <handa@gnu.org>
3880         Fix typo
3881         * ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask -> OTF_positioning_type_components_mask.
3883         Fix previous change
3884         * ftfont.c (ftfont_drive_otf): Remember some bits of
3885         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
3887 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
3889         * lisp/vc/vc-hooks.el (vc-refresh-state): New command
3890         (vc-refresh-state): Rename from vc-find-file-hook and make interactive.
3891         (vc-find-file-hook): Redefine as obsolete alias.
3893 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
3895         Escape ` and ' in doc
3896         Escape apostrophes and grave accents in docstrings if they are
3897         are supposed to stand for themselves and are not quotes.  Remove
3898         apostrophes from docstring examples like ‘'(calendar-nth-named-day
3899         -1 0 10 year)’ that confuse source code with data.  Do some other
3900         minor docstring fixups as well, e.g., insert a missing close
3901         quote.
3903 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
3905         Generalize the prefix-command machinery of C-u
3906         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
3907         (prefix-command-preserve-state-hook): New hooks.
3908         (internal-echo-keystrokes-prefix): New function.
3909         (prefix-command--needs-update, prefix-command--last-echo): New vars.
3910         (prefix-command-update, prefix-command-preserve): New functions.
3911         (reset-this-command-lengths): New compatibility definition.
3912         (universal-argument--mode): Call prefix-command-update.
3913         (universal-argument, universal-argument-more, negative-argument)
3914         (digit-argument): Call prefix-command-preserve-state.
3915         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
3916         the "prefix argument" to echo.
3917         (this_command_key_count_reset, before_command_key_count)
3918         (before_command_echo_length): Delete variables.
3919         (echo_add_key): Always add a space.
3920         (echo_char): Remove.
3921         (echo_dash): Don't give up when this_command_key_count is 0, since that
3922         is now the case after a prefix command.
3923         (echo_update): New function, extracted from echo_now.
3924         (echo_now): Use it.
3925         (add_command_key, read_char, record_menu_key): Remove old disabled code.
3926         (command_loop_1): Don't refrain from pushing an undo boundary when
3927         prefix-arg is set.  Remove other prefix-arg special case, now handled
3928         directly in the prefix commands instead.  But call echo_now if there's
3929         a prefix state to echo.
3930         (read_char, record_menu_key): Use echo_update instead of echo_char.
3931         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
3932         (Freset_this_command_lengths): Delete function.
3933         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
3934         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
3935         * lisp/simple.el: Use those new hooks for C-u.
3936         (universal-argument--description): New function.
3937         (prefix-command-echo-keystrokes-functions): Use it.
3938         (universal-argument--preserve): New function.
3939         (prefix-command-preserve-state-hook): Use it.
3940         (command-execute): Call prefix-command-update if needed.
3941         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
3942         (kmacro-step-edit-prefix-index): Delete variables.
3943         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
3944         support for prefix arg commands.
3945         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
3946         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
3947         (cua--shift-control-prefix): Use prefix-command-preserve-state.
3948         Remove now unused arg `arg'.
3949         (cua--prefix-override-handler, cua--prefix-repeat-handler)
3950         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
3951         Update accordingly.
3952         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
3953         any more.
3954         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
3955         if the mark is not set.
3957 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
3959         Rework quoting in Emacs Lisp Introduction
3960         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
3961         (if in more detail, type-of-animal in detail, else): Rework the
3962         early example to use " rather than ' so that we don’t burden
3963         complete novices with the low-priority detail of text quoting style.
3964         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
3965         (kill-new function, kill-ring-yank-pointer)
3966         (Complete forward-sentence, Loading Files)
3967         (Code for current-kill, Code for current-kill, yank):
3968         Resurrect the Emacs 22 versions of the code, which uses grave
3969         quoting style in doc strings.
3970         (Complete zap-to-char): Mention how quoting works in doc strings.
3972         Setup quote display only if interactive
3973         * lisp/startup.el (command-line):
3974         Skip call to startup--setup-quote-display if noninteractive.
3975         Without this change, python-shell-prompt-validate-regexps-1
3976         fails in test/automated/python-tests.el when run in an
3977         en_US.utf8 locale on Fedora.
3979 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
3981         Use defalias at the top level
3982         * lisp/gnus/gnus-util.el (gnus-format-message):
3983         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
3984         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
3986 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
3988         terminal-init-w32console mimicks command-line
3989         Problem reported by Eli Zaretskii.
3990         * lisp/startup.el (startup--setup-quote-display):
3991         New function, refactored from a part of ‘command-line’.
3992         (command-line): Use it.
3993         * lisp/term/w32console.el (terminal-init-w32console):
3994         Use it, so that this function stays consistent with ‘command-line’.
3996         Display replacement quotes with shadow glyphs
3997         * lisp/startup.el (command-line): When displaying ASCII
3998         replacements for curved quotes, use a shadow glyph instead of a
3999         regular one, to avoid ambiguity.
4001 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
4003         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
4005 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
4007         Docstring fixes re quotes in C code
4008         Fix some docstring quoting problems, mostly by escaping apostrophe.
4010 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
4012         Some Tramp password fixes
4013         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
4014         of the hops.
4015         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
4016         at the beginning of the command.  Otherwise, it could be
4017         interpreted as password prompt if the remote host echoes the
4018         command.
4019         (tramp-remote-coding-commands): Add "openssl enc -base64".
4021 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
4023         Make vc-git-working-revision always return the commit hash
4024         * lisp/vc/vc-git.el (vc-git-working-revision):
4025         Return the commit hash (bug#21383).
4026         (vc-git--symbolic-ref): New function, extracted from above.
4027         (vc-git-mode-line-string): Use it.
4029 2015-09-01  K. Handa  <handa@gnu.org>
4031         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs.
4032         * ftfont.c (MFLTGlyphFT): New type.
4033         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
4034         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
4035         elements in the array MFLTGlyphString.glyphs.
4037 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
4039         Improve comments in elisp-mode.el, elisp-mode-tests.el
4040         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
4042         Delete Emacs 25 test in mode-local.el
4043         * lisp/cedet/mode-local.el (describe-mode-local-overload): Fix missed an
4044         edit in previous commit.
4046         Show all known mode-local overrides in *Help*
4047         * lisp/cedet/mode-local.el (describe-mode-local-overload): Assume Emacs
4048         25. Add all known mode-local overrides.
4050 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
4052         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
4053         Ensure that the article where the search word is found is displayed
4054         and pointed to in the summary buffer.
4056 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
4058         * lisp/newcomment.el (comment-dwim): Use `use-region-p'
4059         When the region is active, but is empty (length 0), act as though
4060         the region was not active; that is, put a comment at the end of
4061         the line.  (Bug#21119)
4063 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
4065         Port tls.el to older Emacs
4066         * lisp/net/tls.el (tls-format-message):
4067         Alias to format-message, or format if not available.
4068         (open-tls-stream): Use it.
4070 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
4072         hideif.el: Recognize .h++ as C++ header.
4073         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
4075         isearch: Document character folding mode.
4076         * isearch.el (isearch-forward): Mention `isearch-toggle-character-fold'
4077         in doc string.
4079 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
4081         Quoting fixes in ERC and Eshell
4082         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
4083         * lisp/erc/erc-backend.el (define-erc-response-handler):
4084         * lisp/erc/erc-fill.el (erc-fill-static-center):
4085         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
4086         * lisp/eshell/em-glob.el (eshell-glob-entries):
4087         * lisp/eshell/em-hist.el (eshell-save-some-history):
4088         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
4089         (eshell-shuffle-files):
4090         * lisp/eshell/esh-cmd.el (eshell-do-eval):
4091         * lisp/eshell/esh-proc.el (eshell-process-interact)
4092         (eshell-query-kill-processes):
4093         Respect ‘text-quoting-style’ in diagnostics and doc strings.
4095         Quoting fixes in Gnus
4096         * lisp/gnus/gnus-agent.el:
4097         (gnus-agent-possibly-synchronize-flags-server):
4098         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
4099         * lisp/gnus/gnus-eform.el (gnus-edit-form):
4100         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
4101         (gnus-group-nnimap-edit-acl):
4102         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
4103         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
4104         * lisp/gnus/message.el (message-strip-subject-encoded-words)
4105         (message-check-recipients, message-send-form-letter):
4106         * lisp/gnus/mm-decode.el (mm-display-part):
4107         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
4108         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
4109         (mml-smime-get-ldap-cert):
4110         * lisp/gnus/spam-report.el (spam-report-process-queue):
4111         Respect ‘text-quoting-style’ in diagnostics.
4112         * lisp/gnus/gnus-art.el (article-display-face)
4113         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
4114         Use straight quoting in email.
4115         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
4116         Escape apostrophes in doc strings.
4118         Quoting fixes in lisp mail, mh-e, net, url
4119         * lisp/mail/emacsbug.el (report-emacs-bug)
4120         (report-emacs-bug-hook): Use straight quotes in outgoing email,
4121         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
4122         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
4123         * lisp/mail/rmailout.el (rmail-output-read-file-name):
4124         * lisp/net/imap.el (imap-interactive-login):
4125         * lisp/net/tls.el (open-tls-stream):
4126         * lisp/url/url-auth.el (url-register-auth-scheme):
4127         Respect ‘text-quoting-style’ in diagnostics.
4128         * lisp/mh-e/mh-e.el (mh-sortm-args):
4129         Quote docstring example using text quotes, not as a Lisp quote.
4131 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
4133         Fix some byte-compiler warnings in EDE
4134         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
4135         existing autoloader list, rather than add to it.
4136         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
4137         argument to eieio class constructor.
4138         (ede-show-supported-projects): New.
4139         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
4140         with (oref ... name).
4141         (ede-auto-load-project): Use slot name, not initarg key.
4142         * lisp/cedet/ede/generic.el (ede-generic-load,
4143         ede-generic-find-matching-target): Use slot name, not initarg key.
4144         (ede-find-target): Use oref-default on class name.
4145         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
4146         class constructor.
4147         (ede-enable-generic-projects): Make project type names unique.
4149 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
4151         Fix directory accessibility tests for w32 network volumes
4152         * src/w32.c (faccessat): Don't fail with network volumes without a
4153         share.
4154         (w32_accessible_directory_p): Handle network volumes without a
4155         share.
4157         Fix handling long file names in readdir on MS-Windows
4158         * src/w32.c (sys_readdir): Append "\*" to the directory after
4159         converting it to UTF-16/ANSI, not before, to avoid overflowing the
4160         260-character limit on file names in filename_to_utf16/ansi.
4162         Make file-accessible-directory-p reliable on MS-Windows
4163         * src/w32.c (w32_accessible_directory_p): New function.
4164         * src/w32.h (w32_accessible_directory_p): Add prototype.
4165         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
4166         w32_accessible_directory_p to test a directory for accessibility
4167         by the current user.  (Bug#21346)
4168         (Ffile_accessible_directory_p): Remove the w32 specific caveat
4169         from the doc string.
4171 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
4173         Don't call do_pending_window_change in signal handlers (Bug#21380)
4174         * src/gtkutil.c (xg_frame_resized):
4175         * src/xterm.c (x_set_window_size):
4176         * src/w32term.c (x_set_window_size): Don't call
4177         do_pending_window_change.
4179 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
4181         Quoting fixes in lisp/org
4182         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
4183         (org-tags-view):
4184         * lisp/org/org-capture.el (org-capture-mode)
4185         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
4186         (org-ctags-ask-append-topic):
4187         * lisp/org/org.el (org-time-string-to-time)
4188         (org-time-string-to-absolute):
4189         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
4190         (org-ctags-ask-append-topic):
4191         * lisp/org/org.el (org-time-string-to-time)
4192         (org-time-string-to-absolute):
4193         Respect ‘text-quoting-style’ in diagnostics.
4194         * lisp/org/org-agenda.el (org-agenda-custom-commands)
4195         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
4196         * lisp/org/org-capture.el (org-capture-fill-template):
4197         Avoid contraction in output file that might be ASCII.
4198         * lisp/org/org-compat.el (format-message):
4199         Define if not already defined, for backward compatibility.
4200         * lisp/org/org-src.el (org-edit-src-save):
4201         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
4202         Escape apostrophes in diagnostics.
4204         Treat “instead” strings as docstrings
4205         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
4206         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
4207         Substitute quotes in instead strings.
4209 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
4211         Better documentation of seq-let
4212         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
4213         documentation of seq-let.
4215 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
4217         * lisp/international/ccl.el: Fix quoting.
4219         Quoting fixes in lisp/international and lisp/leim
4220         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
4221         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
4222         * lisp/international/mule-cmds.el:
4223         (select-safe-coding-system-interactively, leim-list-file-name):
4224         * lisp/international/quail.el (quail-use-package, quail-help):
4225         * lisp/international/titdic-cnv.el (tit-process-header)
4226         (miscdic-convert):
4227         Respect text quoting style in doc strings and diagnostics.
4228         * lisp/international/quail.el (lisp/international/quail.el):
4229         * lisp/leim/quail/ethiopic.el ("ethiopic"):
4230         Escape apostrophes in doc strings.
4232         Make ‘text-quoting-style’ a plain defvar
4233         It doesn’t need customization, as it’s likely useful only by experts.
4234         Suggested by Stefan Monnier in:
4235         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
4236         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
4238         Quoting fixes in lisp/textmodes
4239         * lisp/textmodes/bibtex.el (bibtex-validate)
4240         (bibtex-validate-globally, bibtex-search-entries):
4241         * lisp/textmodes/ispell.el (ispell-command-loop):
4242         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
4243         * lisp/textmodes/texinfmt.el (texinfmt-version)
4244         (texinfo-format-region, texinfo-format-buffer-1):
4245         * lisp/textmodes/two-column.el (2C-split):
4246         Respect text quoting style in doc strings and diagnostics.
4247         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
4248         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
4249         Escape apostrophes in doc strings.
4251         Documentation fixes re quotes
4252         Prefer curved quotes in examples if users will typically see
4253         curved quotes when the examples run.
4254         Mention format-message when appropriate.
4255         Don’t use @code in examples.
4256         Quote an apostrophe with @kbd.
4258         Quoting fixes in lisp/progmodes
4259         * lisp/progmodes/cc-engine.el (c-bos-report-error):
4260         * lisp/progmodes/cpp.el (cpp-edit-reset):
4261         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
4262         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
4263         (etags-tags-apropos, list-tags, tags-apropos):
4264         * lisp/progmodes/executable.el (executable-set-magic):
4265         * lisp/progmodes/octave.el (octave-sync-function-file-names)
4266         (octave-help, octave-find-definition-default-filename)
4267         (octave-find-definition):
4268         Respect text quoting style in doc strings and diagnostics.
4269         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
4270         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
4271         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
4272         Escape apostrophes in doc strings.
4273         * lisp/progmodes/cmacexp.el (c-macro-expansion):
4274         Use straight quoting in ASCII comment.
4275         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
4276         (idlwave-pad-keyword):
4277         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
4278         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
4279         (vhdl-electric-semicolon, vhdl-electric-comma)
4280         (vhdl-electric-period, vhdl-electric-equal):
4281         Use directed quotes in diagnostics and doc strings.
4283 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
4285         Minor documentation and NEWS tweak
4286         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let): Add an index
4287         entry.
4288         * NEWS: Fix a typo in character-fold-to-regexp.
4290 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
4292         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
4293         Revert patch from 2015-08-24.  Tramp shall be have like for local files.
4294         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
4295         Adapt test.
4297 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
4299         Text quoting fixes in cedet, emulation, emacs-lisp
4300         * lisp/cedet/ede.el (ede-check-project-directory):
4301         * lisp/cedet/semantic/analyze/debug.el:
4302         (semantic-analyzer-debug-insert-include-summary):
4303         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
4304         * lisp/cedet/semantic/decorate/include.el:
4305         (semantic-decoration-unknown-include-describe)
4306         (semantic-decoration-all-include-summary):
4307         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
4308         * lisp/emulation/edt.el (edt-load-keys):
4309         * lisp/emulation/viper-cmd.el:
4310         (viper-display-current-destructive-command)
4311         (viper-query-replace, viper-brac-function):
4312         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
4313         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
4314         Respect text quoting style in doc string or diagnostic.
4315         * lisp/cedet/mode-local.el (describe-mode-local-overload):
4316         Use format-message to avoid overtranslating quotes.
4317         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
4318         Escape an apostrophe in a docstring.
4319         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
4321 2015-08-29  Daniel Colascione  <dancol@dancol.org>
4323         Fix which-func for curly quotes: look for symbol, not message
4324         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
4325         imenu-unavailable error symbol instead of trying to match message
4326         exactly.
4327         * lisp/imenu.el (imenu-unavailable): New error.
4328         (imenu-unavailable-error): New function.
4330 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
4332         Fix Python tests on MS-Windows
4333         * test/automated/python-tests.el
4334         (python-shell-calculate-command-1): Run python-shell-interpreter
4335         through shell-quote-argument before comparing with what
4336         python-shell-calculate-command returns.
4337         (python-shell-calculate-pythonpath-1)
4338         (python-shell-calculate-pythonpath-2)
4339         (python-shell-calculate-process-environment-2): Use path-separator
4340         instead of a literal ':'.
4341         (python-shell-calculate-exec-path-2)
4342         (python-shell-calculate-exec-path-3)
4343         (python-shell-calculate-exec-path-4)
4344         (python-shell-with-environment-1)
4345         (python-shell-with-environment-2): Run "/env/bin" through
4346         expand-file-name before comparing with exec-path.  (Bug#21375)
4348 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4350         Use Core Text types/functions/variables/enumerators directly
4351         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
4352         (CharacterCollection): Remove typedefs.  All uses replaced with
4353         definitions.
4354         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
4355         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
4356         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
4357         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
4358         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
4359         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
4360         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
4361         definitions.
4362         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
4363         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
4364         (MAC_FONT_FORMAT_BITMAP)
4365         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
4366         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.  All
4367         uses replaced with definitions.
4368         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
4369         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
4370         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault): Add
4371         compatibility enumerators for older versions.
4372         (mac_font_descriptor_create_with_attributes)
4373         (mac_font_descriptor_create_matching_font_descriptors)
4374         (mac_font_descriptor_create_matching_font_descriptor)
4375         (mac_font_descriptor_copy_attribute)
4376         (mac_font_descriptor_supports_languages)
4377         (mac_font_create_with_name, mac_font_get_size)
4378         (mac_font_copy_family_name, mac_font_copy_character_set)
4379         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
4380         (mac_font_get_descent, mac_font_get_leading)
4381         (mac_font_get_underline_position)
4382         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
4383         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
4384         replaced with definitions.
4385         (mac_font_create_preferred_family_for_attributes)
4386         (mac_font_get_advance_width_for_glyph)
4387         (mac_font_get_bounding_rect_for_glyph)
4388         (mac_font_create_available_families, mac_font_shape): Remove
4389         macros for renamed functions.
4390         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
4391         * src/macterm.m (mac_font_descriptor_supports_languages): Rename
4392         from mac_ctfont_descriptor_supports_languages.
4393         (mac_font_create_preferred_family_for_attributes): Rename from
4394         mac_ctfont_create_preferred_family_for_attributes.
4395         (mac_font_get_advance_width_for_glyph): Rename from
4396         mac_ctfont_get_advance_width_for_glyph.  Use
4397         kCTFontOrientationDefault also for older versions.
4398         (mac_font_get_bounding_rect_for_glyph): Rename from
4399         mac_ctfont_get_bounding_rect_for_glyph. Use
4400         kCTFontOrientationDefault also for older versions.
4401         (mac_font_create_available_families): Rename from
4402         mac_ctfont_create_available_families.
4403         (mac_font_equal_in_postscript_name): Rename from
4404         mac_ctfont_equal_in_postscript_name.  All uses changed.
4405         (mac_font_create_line_with_string_and_font): Rename from
4406         mac_ctfont_create_line_with_string_and_font.  All uses changed.
4407         (mac_font_shape): Rename from mac_ctfont_shape.
4408         (mac_font_family_compare): Remove unused declaration.
4410 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
4412         Fix minor text quoting in calc, calendar, vc
4413         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
4414         * lisp/calc/calc-help.el (calc-j-prefix-help):
4415         * lisp/calc/calc-misc.el (calc-help):
4416         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
4417         Escape an apostrophe in a docstring.
4418         * lisp/calc/calc-forms.el (calc-hms-notation):
4419         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
4420         Escape an apostrophe in a diagnostic.
4421         * lisp/calc/calc-misc.el (calc-help):
4422         * lisp/calendar/diary-lib.el (diary-include-files):
4423         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
4424         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
4425         * lisp/vc/ediff-diff.el (ediff-same-contents):
4426         * lisp/vc/ediff-merg.el (ediff-re-merge):
4427         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
4428         * lisp/vc/ediff-util.el (ediff-test-save-region)
4429         (ediff-status-info):
4430         * lisp/vc/ediff.el (ediff-merge-revisions)
4431         (ediff-merge-revisions-with-ancestor):
4432         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
4433         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
4434         Respect text quoting style in doc string or diagnostic.
4435         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
4436         * lisp/vc/add-log.el (change-log-goto-source):
4437         Avoid double-formatting.
4438         * lisp/vc/ediff-init.el (format-message):
4439         New backward-compatibility alias.
4441 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
4443         Fix minor text quoting problems in lisp top level
4444         * lisp/apropos.el (apropos-describe-plist):
4445         * lisp/cus-theme.el (customize-themes):
4446         * lisp/dired.el (dired-log):
4447         * lisp/help-fns.el (describe-variable):
4448         * lisp/hexl.el (hexl-insert-multibyte-char):
4449         * lisp/info.el (Info-finder-find-node):
4450         * lisp/json.el (json-read-string):
4451         * lisp/novice.el (disabled-command-function)
4452         (disabled-command-function):
4453         * lisp/startup.el (normal-mouse-startup-screen):
4454         * lisp/woman.el (WoMan-log, WoMan-warn):
4455         Respect text quoting style in doc string or diagnostic.
4456         * lisp/replace.el (replace-character-fold):
4457         * src/syntax.c (Fmodify_syntax_entry):
4458         Escape an apostrophe in a docstring.
4459         * lisp/tempo.el (tempo-define-template):
4460         Remove confusing apostrophe from docstring.
4461         * lisp/whitespace.el (whitespace-mark-x):
4462         Use directed quotes in docstring.
4464 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
4466         Fix indentation rule in css-mode
4467         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
4468         brackets in presence of pseudo-selectors.  (Bug#21328)
4470 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
4472         Fix a bug in recording a macro while flyspell-mode is active
4473         * lisp/subr.el (sit-for): Don't call read-event when recording a
4474         macro.  (Bug#21329)
4476 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
4478         Tweak startup screen quoting
4479         * lisp/startup.el (normal-splash-screen): Use standard
4480         "M-" abbrevation rather than a confusingly-different one.
4481         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
4483 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
4485         Add test case for ‘format’ bug and refactor
4486         * src/editfns.c (styled_format): Refactor internally, mostly by
4487         moving declarations closer to uses.  This should not affect behavior.
4488         * test/automated/textprop-tests.el (textprop-tests-format): New test.
4490         Fix ‘format’ bug with property offsets
4491         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
4492         bug in calculating string property offsets (Bug#21351).
4494         Use straight quotes in lib-src diagnostics
4495         These auxiliary programs can’t use Emacs’s text-quoting-style,
4496         and it’s too much trouble to redo that mechanism by hand.
4497         So just use straight quotes for now.
4498         * lib-src/ebrowse.c (main):
4499         * lib-src/emacsclient.c (decode_options, main):
4500         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
4501         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
4502         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
4503         (none_help, print_language_names, print_help, add_regex)
4504         (suggest_asking_for_help):
4505         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
4506         Use straight quotes in diagnostics.
4508         ‘text-quoting-style’ fixes for admin
4509         * admin/admin.el (cusver-scan, cusver-check):
4510         * admin/authors.el (authors-canonical-file-name):
4511         * admin/bzrmerge.el (bzrmerge-missing):
4512         Respect ‘text-quoting-style’ in diagnostics.
4514 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
4516         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
4517         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
4518         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
4519         * doc/lispref/internals.texi (Writing Emacs Primitives):
4520         * etc/NEWS:
4521         Document the change.
4522         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
4523         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
4524         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
4525         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
4526         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
4527         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
4528         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
4529         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
4530         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
4531         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
4532         Remove.  All uses removed.  The code now assumes
4533         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
4534         * src/bytecode.c (relocate_byte_stack):
4535         Rename from unmark_byte_stack, since it now only relocates.
4536         All callers changed.
4537         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
4538         with GCPROs removed.
4539         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
4540         * test/automated/finalizer-tests.el (finalizer-basic)
4541         (finalizer-circular-reference, finalizer-cross-reference)
4542         (finalizer-error):
4543         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
4544         Remove tests, as they depend on gc-precise.
4546 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
4548         Improve seq-concatenate for new sequence types
4549         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
4550         ensure that concatenation happens on sequences only.  This makes it
4551         possible to use `seq-concatenate' for new types of seqs.
4552         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate): New
4553         function used in `seq-concatenate'.
4554         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
4555         for seq-into-sequence.
4557 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
4559         Add mode local overrides to xref-find-definitions
4560         * lisp/cedet/mode-local.el (xref-mode-local--override-present,
4561         xref-mode-local-overload): New; add mode local overrides to
4562         xref-find-definitions.
4563         * test/automated/elisp-mode-tests.el: Add mode local override tests.
4564         (xref-elisp-test-run): Handle indented defuns.
4565         (xref-elisp-generic-*): Improve doc strings.
4566         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
4567         (elisp--xref-find-definitions): Use it.
4569         Add mode local overrides to describe-function
4570         * lisp/cedet/mode-local.el (describe-mode-local-overload): New; add mode
4571         local overrides to describe-function.
4572         * etc/NEWS: Document change.
4574 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
4576         Prefer straight quoting in some etc text files
4577         These files are plain text and might be used by non-Emacs apps.
4578         They’re mostly ASCII, so just use straight quotes.
4580         Fix quoting in ‘message_with_string’
4581         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
4582         should work now.
4583         * src/xdisp.c (message_to_stderr): New function, refactored from
4584         part of ‘message3_nolog’.
4585         (message3_nolog): Use it.
4586         (message_with_string): Use it.  Don’t mishandle NUL bytes when
4587         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
4588         Use ‘format-message’, not ‘format’, so that quotes are translated.
4590 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
4592         Mention false positives of file-accessible-directory on w32
4593         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
4594         (Bug#21346)
4596 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
4598         Treat error strings as help
4599         * src/print.c (print_error_message): Translate quotes and command
4600         keys in errmsg so that users see, e.g., "Symbol’s value as
4601         variable is void: foo" when text-quoting-style is curved.
4603 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
4605         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
4607 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
4609         Top-level elisp files respect ‘text-quoting-style’
4610         In top-level elisp files, use format-message in diagnostic formats,
4611         so that they follow user preference as per ‘text-quoting-style’
4612         rather than being hard-coded to quote `like this'.
4613         * lisp/allout.el (allout-get-configvar-values):
4614         * lisp/apropos.el (apropos-symbols-internal):
4615         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
4616         (dired-do-create-files-regexp, dired-create-files-non-directory):
4617         * lisp/dired-x.el (dired-do-run-mail):
4618         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
4619         * lisp/disp-table.el (standard-display-european):
4620         * lisp/find-dired.el (find-dired):
4621         * lisp/forms.el (forms-mode):
4622         * lisp/ido.el (ido-buffer-internal):
4623         * lisp/info.el (Info-index-next):
4624         * lisp/outline.el (outline-invent-heading):
4625         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
4626         * lisp/proced.el (proced-log):
4627         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
4628         * lisp/recentf.el (recentf-open-files, recentf-save-list):
4629         * lisp/savehist.el (savehist-save):
4630         * lisp/server.el (server-ensure-safe-dir):
4631         * lisp/ses.el (ses-rename-cell):
4632         * lisp/simple.el (list-processes--refresh):
4633         * lisp/startup.el (command-line):
4634         * lisp/strokes.el (strokes-unset-last-stroke)
4635         (strokes-execute-stroke):
4636         Use format-message so that quotes are restyled.
4637         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
4638         Don’t quote ‘raised’.
4639         * lisp/descr-text.el (describe-char):
4640         * lisp/dirtrack.el (dirtrack-debug-message):
4641         * lisp/hexl.el (hexl-insert-multibyte-char):
4642         Apply substitute-command-keys to help string.
4643         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
4644         (wdired-do-perm-changes):
4645         Let dired-log do the formatting.
4647 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
4649         Go back to grave quoting in Tramp
4650         * lisp/net/tramp-adb.el:
4651         * lisp/net/tramp-cache.el:
4652         * lisp/net/tramp-compat.el:
4653         * lisp/net/tramp-gvfs.el:
4654         * lisp/net/tramp-gw.el:
4655         * lisp/net/tramp-sh.el:
4656         * lisp/net/tramp-smb.el:
4657         * lisp/net/tramp.el:
4658         Stick with grave quoting in diagnostics strings.  This is more
4659         portable to older Emacs, desirable for Tramp.
4660         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
4661         for diagnostic that needs requoting.
4662         * lisp/net/tramp-compat.el (format-message):
4663         Fall back on simple ‘format’, since that’s good enough now.
4665         Go back to grave quoting in Gnus
4666         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
4667         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
4668         (gnus-agent-fetch-headers):
4669         * lisp/gnus/gnus-int.el (gnus-start-news-server):
4670         * lisp/gnus/gnus-registry.el:
4671         (gnus-registry--split-fancy-with-parent-internal)
4672         (gnus-registry-post-process-groups):
4673         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
4674         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
4675         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
4676         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
4677         * lisp/gnus/spam.el (spam-check-blackholes):
4678         Stick with grave quoting in diagnostics strings.  This is more
4679         portable to older Emacs, desirable for Gnus.
4681         Fix customization of text-quoting-style
4682         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
4683         * lisp/wid-edit.el (widget-docstring):
4684         Get raw docstring here since it’s cooked later and should not be
4685         cooked twice.
4686         * lisp/cus-edit.el (custom-group-value-create):
4687         Cook the docstring before inserting it.
4688         * lisp/cus-start.el (text-quoting-style): Quote the customization
4689         docstrings according to the new rules.  Give curved examples.
4691         format-message now curves ` and '
4692         That way, the caller doesn’t have to use curved quotes to
4693         get diagnostics that match the text-quoting-style preferences.
4694         Suggested by Dmitry Gutov in:
4695         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
4696         This means we no longer need %qs, so remove that format.
4697         While we’re at it, fix an unlikely bug and lessen the pressure
4698         on the garbage collector by processing the string once rather
4699         than twice in the usual case.
4700         * doc/lispref/strings.texi (Formatting Strings):
4701         * etc/NEWS: Document this.
4702         * lisp/subr.el (format-message): Remove; now done in C.
4703         * src/callint.c (Fcall_interactively):
4704         * src/editfns.c (Fmessage, Fmessage_box):
4705         Use Fformat_message instead of Finternal__text_restyle
4706         followed by Fformat.
4707         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
4708         uLSQM and uRSQM.
4709         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
4710         when pure ASCII now suffices.  Fix unlikely bug when parsing
4711         unibyte string containing non-ASCII bytes.  Use inline code
4712         rather than memcpy, as it’s a tiny number of bytes.
4713         (Finternal__text_restyle): Remove; no longer used.
4714         (syms_of_doc): Don’t declare it.
4715         * src/editfns.c (Fformat): Rewrite in terms of new function
4716         ‘styled_format’.
4717         (Fformat_message): New function, moved here from subr.el.
4718         (styled_format): New function, with the old guts of Fformat,
4719         except it now optionally transliterates quotes, and it transliterates
4720         traditional grave accent and apostrophe quoting as well.
4721         Remove recently-added q flag; no longer needed or used.
4722         (syms_of_editfns): Define format-message.
4723         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
4724         Remove; no longer need to be global symbols.
4725         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
4726         so that callers can use `%s'.
4727         * src/image.c (image_size_error, xbm_load_image, xbm_load)
4728         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
4729         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
4730         (svg_load_image, gs_load, x_kill_gs_process):
4731         * src/lread.c (load_warn_old_style_backquotes):
4732         * src/xfaces.c (load_pixmap):
4733         * src/xselect.c (x_clipboard_manager_error_1):
4734         Use `%s' instead of %qs in formats.
4736 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
4738         Minor fixes in doc/emacs/search.texi
4739         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
4740         (Special Isearch): Use @w{} to generate several consecutive spaces
4741         with Texinfo 6.  (Bug#21345)
4743 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
4745         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
4746         (tramp-awk-coding-test): New defconsts.
4747         (tramp-remote-coding-commands): Use them.
4748         (tramp-find-inline-encoding): Check for Perl only if necessary.
4750 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
4752         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
4753         index entries for the special form `quote'.
4755 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
4757         Spelling fixes
4759         Gnus format-message typo fix
4760         * lisp/gnus/gnus-util.el (gnus-format-message):
4761         Fix typo when running in older Emacs.
4763         Prefer directed to neutral quotes
4764         Prefer directed to neutral quotes in docstings and diagnostics.
4765         In docstrings, escape apostrophes that would otherwise be translated
4766         to curved quotes using the newer, simpler rules.
4767         * admin/unidata/unidata-gen.el (unidata-gen-table):
4768         * lisp/align.el (align-region):
4769         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
4770         * lisp/bookmark.el (bookmark-default-annotation-text):
4771         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
4772         * lisp/calc/calc-lang.el (math-read-giac-subscr)
4773         (math-read-math-subscr):
4774         * lisp/calc/calc-misc.el (report-calc-bug):
4775         * lisp/calc/calc-prog.el (calc-fix-token-name)
4776         (calc-read-parse-table-part):
4777         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
4778         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
4779         * lisp/dabbrev.el (dabbrev-expand):
4780         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
4781         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
4782         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
4783         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
4784         * lisp/erc/erc-button.el (erc-nick-popup):
4785         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
4786         * lisp/eshell/em-dirs.el (eshell/cd):
4787         * lisp/eshell/em-glob.el (eshell-glob-regexp):
4788         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
4789         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
4790         * lisp/eshell/esh-opt.el (eshell-show-usage):
4791         * lisp/files-x.el (modify-file-local-variable):
4792         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
4793         (filesets-update-pre010505):
4794         * lisp/find-cmd.el (find-generic, find-to-string):
4795         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
4796         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
4797         (gnus-agent-fetch-headers):
4798         * lisp/gnus/gnus-int.el (gnus-start-news-server):
4799         * lisp/gnus/gnus-registry.el:
4800         (gnus-registry--split-fancy-with-parent-internal):
4801         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
4802         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
4803         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
4804         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
4805         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
4806         * lisp/gnus/spam.el (spam-check-blackholes):
4807         * lisp/mail/feedmail.el (feedmail-run-the-queue):
4808         * lisp/mpc.el (mpc-playlist-rename):
4809         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
4810         * lisp/net/mairix.el (mairix-widget-create-query):
4811         * lisp/net/tramp-cache.el:
4812         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
4813         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
4814         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
4815         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
4816         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
4817         (org-babel-goto-named-result):
4818         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
4819         * lisp/org/ob-ref.el (org-babel-ref-resolve):
4820         * lisp/org/org-agenda.el (org-agenda-prepare):
4821         * lisp/org/org-bibtex.el (org-bibtex-fields):
4822         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
4823         (org-clock-resolve):
4824         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
4825         * lisp/org/org-habit.el (org-habit-parse-todo):
4826         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
4827         (org-mouse-context-menu):
4828         * lisp/org/org-table.el (org-table-edit-formulas):
4829         * lisp/org/ox.el (org-export-async-start):
4830         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
4831         (dun-rooms, dun-endgame-questions):
4832         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
4833         * lisp/progmodes/ada-xref.el (ada-find-executable):
4834         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
4835         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
4836         (flymake-start-syntax-check-process):
4837         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
4838         * lisp/progmodes/sql.el (sql-comint):
4839         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
4840         * lisp/server.el (server-get-auth-key):
4841         * lisp/subr.el (version-to-list):
4842         * lisp/textmodes/reftex-ref.el (reftex-label):
4843         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
4844         * lisp/vc/ediff-diff.el (ediff-same-contents):
4845         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
4846         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
4847         Use directed rather than neutral quotes in diagnostics.
4849         Treat ' like ’ even when not matching `
4850         This is simpler and easier to explain, and should encourage better
4851         typography.  Do this in Electric Quote mode and when translating
4852         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
4853         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
4854         * doc/emacs/text.texi (Quotation Marks):
4855         * doc/lispref/help.texi (Keys in Documentation):
4856         * etc/NEWS:
4857         Document this.
4858         * lisp/electric.el (electric-quote-post-self-insert-function):
4859         * src/doc.c (Fsubstitute_command_keys):
4860         Always treat ' like ’ even when not matched by an open quote.
4862 2015-08-25  Glenn Morris  <rgm@gnu.org>
4864         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
4865         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
4867 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4869         * src/macfont.m (macfont_create_family_with_symbol): Accept
4870         localized names.
4872 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
4874         Tramp diagnostics as per ‘text-quoting-style’
4875         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
4876         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
4877         (tramp-adb-handle-delete-directory)
4878         (tramp-adb-handle-delete-file)
4879         (tramp-adb-handle-file-local-copy)
4880         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
4881         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
4882         (tramp-adb-maybe-open-connection):
4883         * lisp/net/tramp-cache.el:
4884         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
4885         (tramp-compat-octal-to-decimal)
4886         (tramp-compat-coding-system-change-eol-conversion):
4887         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
4888         (tramp-gvfs-do-copy-or-rename-file)
4889         (tramp-gvfs-handle-delete-directory)
4890         (tramp-gvfs-handle-delete-file)
4891         (tramp-gvfs-handle-expand-file-name)
4892         (tramp-gvfs-handle-file-local-copy)
4893         (tramp-gvfs-handle-file-notify-add-watch)
4894         (tramp-gvfs-handle-make-directory)
4895         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
4896         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
4897         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
4898         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
4899         (tramp-sh-handle-set-visited-file-modtime)
4900         (tramp-sh-handle-set-file-modes)
4901         (tramp-sh-handle-file-name-all-completions)
4902         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
4903         (tramp-do-copy-or-rename-file-directly)
4904         (tramp-do-copy-or-rename-file-out-of-band)
4905         (tramp-sh-handle-make-directory)
4906         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
4907         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
4908         (tramp-sh-handle-start-file-process)
4909         (tramp-sh-handle-file-local-copy)
4910         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
4911         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
4912         (tramp-find-file-exists-command, tramp-open-shell)
4913         (tramp-find-shell)
4914         (tramp-open-connection-setup-interactive-shell)
4915         (tramp-find-inline-encoding, tramp-find-inline-compress)
4916         (tramp-compute-multi-hops, tramp-maybe-open-connection)
4917         (tramp-wait-for-output, tramp-send-command-and-check)
4918         (tramp-send-command-and-read, tramp-get-remote-path)
4919         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
4920         (tramp-get-ls-command-with-quoting-style)
4921         (tramp-get-test-command, tramp-get-remote-ln)
4922         (tramp-get-remote-perl, tramp-get-remote-stat)
4923         (tramp-get-remote-readlink, tramp-get-remote-trash)
4924         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
4925         (tramp-get-remote-inotifywait, tramp-get-remote-id)
4926         (tramp-get-remote-python):
4927         * lisp/net/tramp-smb.el (tramp-smb-errors)
4928         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
4929         (tramp-smb-handle-delete-directory)
4930         (tramp-smb-handle-delete-file)
4931         (tramp-smb-handle-file-local-copy)
4932         (tramp-smb-handle-make-directory)
4933         (tramp-smb-handle-make-directory-internal)
4934         (tramp-smb-handle-make-symbolic-link)
4935         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
4936         (tramp-smb-handle-set-file-modes)
4937         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
4938         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
4939         (tramp-process-actions):
4940         Generate diagnostics according to ‘text-quoting-style’, by
4941         using curved quotes in format strings and ‘format-message’
4942         when appropriate.
4943         * lisp/net/tramp-compat.el (format-message):
4944         Define a replacement, if it’s an older version of Emacs
4945         that doesn’t have it already.
4947         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
4949 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
4951         Fix documentation for `save-excursion'
4952         * doc/lispref/positions.texi (Excursions):
4953         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
4954         (Template for save-excursion, Point and mark): `save-excursion'
4955         does not save&restore the mark any more.
4957 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
4959         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
4960         New defconsts.
4961         (tramp-do-file-attributes-with-stat)
4962         (tramp-do-directory-files-and-attributes-with-stat): Use them.
4963         (tramp-convert-file-attributes): Remove double slashes in symlinks.
4964         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
4965         Handle symlinks with "//" in the file name.
4967         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
4969 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
4971         Fix cl-subseq and cl-concatenate
4972         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
4973         seq functions.
4974         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
4975         seq-concatenate.
4977 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
4979         Fix full-screen code when there is no window manager (Bug#21317)
4980         * src/xterm.h (x_wm_supports): Declare external.
4981         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
4982         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
4983         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
4984         `fullscreen' frame parameter.
4985         * gtkutil.c (x_wm_set_size_hint): Set size hints when running
4986         without a window manager.
4988 2015-08-24  Glenn Morris  <rgm@gnu.org>
4990         * lisp/version.el (emacs-version): No longer include build host
4991         * doc/lispref/intro.texi (Version Info): Update example.
4993 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
4995         * doc/lispref/elisp.texi: Fix typo in previous change.
4997         More-conservative ‘format’ quote restyling
4998         Instead of restyling curved quotes for every call to ‘format’,
4999         create a new function ‘format-message’ that does the restyling,
5000         and using the new function instead of ‘format’ only in contexts
5001         where this seems appropriate.
5002         Problem reported by Dmitry Gutov and Andreas Schwab in:
5003         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
5004         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
5005         * doc/lispref/commands.texi (Using Interactive):
5006         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
5007         * doc/lispref/display.texi (Displaying Messages, Progress):
5008         * doc/lispref/elisp.texi:
5009         * doc/lispref/help.texi (Keys in Documentation):
5010         * doc/lispref/minibuf.texi (Minibuffer Misc):
5011         * doc/lispref/strings.texi (Formatting Strings):
5012         * etc/NEWS:
5013         Document the changes.
5014         * lisp/abbrev.el (expand-region-abbrevs):
5015         * lisp/apropos.el (apropos-library):
5016         * lisp/calc/calc-ext.el (calc-record-message)
5017         (calc-user-function-list):
5018         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
5019         * lisp/calc/calc-lang.el (math-read-big-balance):
5020         * lisp/calc/calc-store.el (calc-edit-variable):
5021         * lisp/calc/calc-units.el (math-build-units-table-buffer):
5022         * lisp/calc/calc-yank.el (calc-edit-mode):
5023         * lisp/calendar/icalendar.el (icalendar-export-region)
5024         (icalendar--add-diary-entry):
5025         * lisp/cedet/mode-local.el (mode-local-print-binding)
5026         (mode-local-describe-bindings-2):
5027         * lisp/cedet/semantic/complete.el (semantic-completion-message):
5028         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
5029         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
5030         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
5031         * lisp/descr-text.el (describe-text-properties-1, describe-char):
5032         * lisp/dframe.el (dframe-message):
5033         * lisp/dired-aux.el (dired-query):
5034         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
5035         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
5036         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
5037         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
5038         (cconv-analyze-form):
5039         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
5040         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
5041         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
5042         * lisp/emacs-lisp/edebug.el (edebug-format):
5043         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
5044         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
5045         (eldoc-message):
5046         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
5047         * lisp/emacs-lisp/find-func.el (find-function-library):
5048         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
5049         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
5050         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
5051         * lisp/emacs-lisp/package.el (package-compute-transaction)
5052         (package-install-button-action, package-delete-button-action)
5053         (package-menu--list-to-prompt):
5054         * lisp/emacs-lisp/timer.el (timer-event-handler):
5055         * lisp/emacs-lisp/warnings.el (lwarn, warn):
5056         * lisp/emulation/viper-cmd.el:
5057         (viper-toggle-parse-sexp-ignore-comments)
5058         (viper-kill-buffer, viper-brac-function):
5059         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
5060         * lisp/facemenu.el (facemenu-add-new-face):
5061         * lisp/faces.el (face-documentation, read-face-name)
5062         (face-read-string, read-face-font, describe-face):
5063         * lisp/files.el (find-alternate-file, hack-local-variables)
5064         (hack-one-local-variable--obsolete, write-file)
5065         (basic-save-buffer, delete-directory):
5066         * lisp/format.el (format-write-file, format-find-file)
5067         (format-insert-file):
5068         * lisp/help-fns.el (help-fns--key-bindings)
5069         (help-fns--compiler-macro, help-fns--obsolete)
5070         (help-fns--interactive-only, describe-function-1)
5071         (describe-variable):
5072         * lisp/help.el (describe-mode):
5073         * lisp/info-xref.el (info-xref-output):
5074         * lisp/info.el (Info-virtual-index-find-node)
5075         (Info-virtual-index, info-apropos):
5076         * lisp/international/kkc.el (kkc-error):
5077         * lisp/international/mule-cmds.el:
5078         (select-safe-coding-system-interactively)
5079         (select-safe-coding-system, describe-input-method):
5080         * lisp/international/mule-conf.el (code-offset):
5081         * lisp/international/mule-diag.el (describe-character-set)
5082         (list-input-methods-1):
5083         * lisp/international/quail.el (quail-error):
5084         * lisp/minibuffer.el (minibuffer-message):
5085         * lisp/mpc.el (mpc--debug):
5086         * lisp/msb.el (msb--choose-menu):
5087         * lisp/net/ange-ftp.el (ange-ftp-message):
5088         * lisp/net/gnutls.el (gnutls-message-maybe):
5089         * lisp/net/newst-backend.el (newsticker--sentinel-work):
5090         * lisp/net/newst-treeview.el (newsticker--treeview-load):
5091         * lisp/net/nsm.el (nsm-query-user):
5092         * lisp/net/rlogin.el (rlogin):
5093         * lisp/net/soap-client.el (soap-warning):
5094         * lisp/net/tramp.el (tramp-debug-message):
5095         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
5096         * lisp/nxml/nxml-parse.el (nxml-parse-error):
5097         * lisp/nxml/rng-cmpct.el (rng-c-error):
5098         * lisp/nxml/rng-match.el (rng-compile-error):
5099         * lisp/nxml/rng-uri.el (rng-uri-error):
5100         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
5101         * lisp/org/org-ctags.el:
5102         (org-ctags-ask-rebuild-tags-file-then-find-tag):
5103         * lisp/proced.el (proced-log):
5104         * lisp/progmodes/ebnf2ps.el (ebnf-log):
5105         * lisp/progmodes/flymake.el (flymake-log):
5106         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
5107         * lisp/replace.el (occur-1):
5108         * lisp/simple.el (execute-extended-command)
5109         (undo-outer-limit-truncate, define-alternatives):
5110         * lisp/startup.el (command-line):
5111         * lisp/subr.el (error, user-error, add-to-list):
5112         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
5113         (tutorial--find-changed-keys):
5114         * src/callint.c (Fcall_interactively):
5115         * src/editfns.c (Fmessage, Fmessage_box):
5116         Restyle the quotes of format strings intended for use as a
5117         diagnostic, when restyling seems appropriate.
5118         * lisp/subr.el (format-message): New function.
5119         * src/doc.c (Finternal__text_restyle): New function.
5120         (syms_of_doc): Define it.
5122 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
5124         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
5126 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
5128         python.el: Fix python-shell-buffer-substring on indented code
5129         (Bug#21086)
5130         * lisp/progmodes/python.el (python-shell-buffer-substring):
5131         Respect current line indentation when calculating string.
5132         * test/automated/python-tests.el
5133         (python-shell-buffer-substring-10)
5134         (python-shell-buffer-substring-11)
5135         (python-shell-buffer-substring-12): New tests.
5137 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
5139         Fix minor glitches from ‘format’ reversion
5140         * doc/lispref/strings.texi (Formatting Strings):
5141         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
5142         Documentation’, not below.
5143         * src/syntax.c (Finternal_describe_syntax_value):
5144         Prefer AUTO_STRING to build_string where either will do, as
5145         AUTO_STRING is a bit faster.
5147 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
5149         python.el: Defer shell setup code until first interactive prompt
5150         * lisp/progmodes/python.el
5151         (python-shell-comint-watch-for-first-prompt-output-filter): New
5152         function.
5153         (inferior-python-mode): Use it.
5154         (python-shell-first-prompt-hook): New hook.
5155         (python-shell-send-setup-code)
5156         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
5157         this hook instead of inferior-python-hook.
5159 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
5161         Remove the calls to `seq-into` from `seq-concatenate`
5162         Since most new types of seq would have to be defined as sequences (cons
5163         cells or CL structs, mostly), there is no need to convert the seqs to
5164         sequences (which can be a fairly expensive operation).
5165         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
5166         sequences.
5168 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
5170         python.el: Fix completion for pdb interactions
5171         * lisp/progmodes/python.el (python-shell-completion-setup-code):
5172         Simplify.  Toggle print_mode for native wrapped completer.
5173         (python-shell-completion-native-setup): Ensure process buffer.
5174         Add print_mode attribute to completer wrapper to toggle returning
5175         or printing candidates.
5176         (python-shell-completion-native-get-completions): Cleanup.
5177         (python-shell-completion-get-completions): Cleanup.
5178         (python-shell-completion-at-point): Perform prompt checks.  Force
5179         fallback completion in pdb interactions.
5181 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
5183         Make seq.el more extensible by using cl-defmethod
5184         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
5185         make it easier to extend seq.el with new "seq types".
5186         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
5187         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
5188         subseq in cl-extra.el, and use it in seq.el.
5190 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
5192         python.el: Fix prompt detection with user overridden interpreter
5193         * lisp/progmodes/python.el (python-shell-prompt-detect): Honor
5194         buffer local python-shell-interpreter and
5195         python-shell-interpreter-interactive-arg.
5197 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
5199         Support exec-directory with non-ASCII characters on Windows
5200         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
5201         in the system's ANSI codepage, when it is used for invoking
5202         cmdproxy.
5204 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
5206         Revert "Extend ‘format’ to translate curved quotes"
5207         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
5209         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
5210         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
5212 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
5214         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers): Clarify
5215         "invisible window".
5217 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
5219         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
5220         magic-fallback-mode-alist.
5222 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
5224         python.el: fallback completion, ffap and eldoc setup enhancements
5225         Setup codes are now sent continuously so that the current frame is
5226         always taken into account.  This allows working within debuggers
5227         and always keeping a fresh version of setup codes that will return
5228         proper results.
5229         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
5230         (python-shell-send-setup-code): Send code only when
5231         python-shell-setup-codes is non-nil.
5232         (python-shell-completion-string-code): Cleanup trailing newline.
5233         (python-shell-completion-get-completions): Always use
5234         python-shell-completion-setup-code.
5235         (python-ffap-setup-code): Work with any object, not only modules.
5236         (python-ffap-string-code): Cleanup trailing newline.
5237         (python-ffap-module-path): Always use python-ffap-setup-code.
5238         (python-eldoc-string-code): Cleanup trailing newline.
5239         (python-eldoc--get-doc-at-point): Always use
5240         python-eldoc-setup-code.  Return non-nil only if docstring is
5241         found.
5243         python.el: Increase native completion robustness.
5244         * lisp/progmodes/python.el (python-shell-completion-native-setup):
5245         Make completer print real candidates and just return dummy ones to
5246         avoid input modification.
5247         (python-shell-completion-native-get-completions): Set
5248         comint-redirect-insert-matching-regexp to non-nil and make
5249         comint-redirect-finished-regexp match the last dummy candidate.
5250         Use python-shell-accept-process-output to wait for the full list
5251         of candidates.
5253 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
5255         Fix invocation of programs via cmdproxy.exe
5256         * src/w32proc.c (sys_spawnve): Use exec-directory, not
5257         invocation-directory, for finding cmdproxy.exe.  When Emacs is
5258         run from the source tree, look for cmdproxy.exe in the same source
5259         tree.  (Bug#21323)
5261 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
5263         Handle comments inside unquoted URIs in css-mode
5264         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
5265         (css-syntax-propertize-function): New defconst.
5266         (css--font-lock-keywords): Handle parens around unquoted URIs.
5267         (css-mode): Set `syntax-propertize-function'.
5269 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
5271         Support invocation of Hunspell with multiple dictionaries
5272         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file): Support
5273         lists of dictionaries of the form "DICT1,DICT2,...".
5274         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
5276         Minor formatting changes in ispell.el
5277         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
5278         (ispell-print-if-debug, ispell-aspell-find-dictionary)
5279         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
5280         (ispell-hunspell-dictionary-alist)
5281         (ispell-hunspell-fill-dictionary-entry)
5282         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
5283         (ispell-buffer-with-debug, ispell-complete-word)
5284         (ispell-current-dictionary, ispell-current-personal-dictionary)
5285         (ispell-accept-output, ispell-minor-mode)
5286         (ispell-personal-dictionary, ispell-dictionary-alist)
5287         (ispell-really-aspell, ispell-really-hunspell)
5288         (ispell-encoding8-command, ispell-aspell-supports-utf8)
5289         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
5290         Fix whitespace, inconsistent capitalization, and arguments in doc
5291         strings.
5293 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
5295         In ‘adjust-window-trailing-edge’ fix bug with size-preserved windows.
5296         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
5297         function refused to resize a size-preserved window.
5299 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
5301         Improve documentation of 'window-use-time'
5302         * doc/lispref/windows.texi (Selecting Windows): Improve
5303         documentation and indexing of 'window-use-time'.
5305 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
5307         * lisp/progmodes/cc-*.el: Fix up commenting style
5308         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
5309         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
5310         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
5311         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
5312         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
5313         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
5314         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
5315         Fix up commenting style.
5317 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
5319         text-quoting-style in emacs-lisp diagnostics
5320         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
5321         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
5322         (ad-disable-advice, ad-remove-advice, ad-set-argument)
5323         (ad-set-arguments):
5324         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
5325         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
5326         (byte-optimize-while, byte-optimize-apply):
5327         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
5328         (byte-compile-log-file, byte-compile-format-warn)
5329         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
5330         (byte-compile-cl-warn)
5331         (byte-compile-warn-about-unresolved-functions)
5332         (byte-compile-file, byte-compile-fix-header)
5333         (byte-compile--declare-var, byte-compile-file-form-defmumble)
5334         (byte-compile-form, byte-compile-normal-call)
5335         (byte-compile-variable-ref, byte-compile-variable-set)
5336         (byte-compile-subr-wrong-args, byte-compile-setq-default)
5337         (byte-compile-negation-optimizer)
5338         (byte-compile-condition-case--old)
5339         (byte-compile-condition-case--new, byte-compile-save-excursion)
5340         (byte-compile-defvar, byte-compile-autoload)
5341         (byte-compile-lambda-form)
5342         (byte-compile-make-variable-buffer-local, display-call-tree)
5343         (batch-byte-compile):
5344         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
5345         (cconv-analyze-form):
5346         * lisp/emacs-lisp/chart.el (chart-space-usage):
5347         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
5348         (check-declare-warn, check-declare-file)
5349         (check-declare-directory):
5350         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
5351         (checkdoc-message-text-engine):
5352         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
5353         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
5354         (cl-symbol-macrolet):
5355         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
5356         * lisp/emacs-lisp/copyright.el (copyright)
5357         (copyright-update-directory):
5358         * lisp/emacs-lisp/edebug.el (edebug-read-list):
5359         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
5360         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
5361         (eieio-oref, eieio-oset-default):
5362         * lisp/emacs-lisp/eieio-speedbar.el:
5363         (eieio-speedbar-child-make-tag-lines)
5364         (eieio-speedbar-child-description):
5365         * lisp/emacs-lisp/eieio.el (defclass, change-class):
5366         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
5367         (elint-init-form, elint-check-defalias-form)
5368         (elint-check-let-form):
5369         * lisp/emacs-lisp/ert.el (ert-get-test):
5370         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
5371         (find-function-library):
5372         * lisp/emacs-lisp/generator.el (iter-yield):
5373         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
5374         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
5375         * lisp/emacs-lisp/package-x.el (package-upload-file):
5376         * lisp/emacs-lisp/package.el (package-version-join)
5377         (package-disabled-p, package-activate-1, package-activate)
5378         (package--download-one-archive)
5379         (package--download-and-read-archives)
5380         (package-compute-transaction, package-install-from-archive)
5381         (package-install, package-install-selected-packages)
5382         (package-delete, package-autoremove)
5383         (package-install-button-action, package-delete-button-action)
5384         (package-menu-hide-package, package-menu--list-to-prompt)
5385         (package-menu--perform-transaction)
5386         (package-menu--find-and-notify-upgrades):
5387         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
5388         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
5389         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
5390         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
5391         * lisp/emacs-lisp/smie.el (smie-config-save):
5392         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
5393         * lisp/emacs-lisp/testcover.el (testcover-1value):
5394         Use curved quotes in diagnostic format strings.
5396 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
5398         python.el: Ensure remote process-environment on non-interactive processes
5399         * lisp/progmodes/python.el
5400         (python-shell-tramp-refresh-process-environment): New function.
5401         (python-shell-with-environment): Use it.
5402         * test/automated/python-tests.el (python-shell-with-environment-2):
5403         Update.
5405         python.el: Enhancements to process environment setup.
5406         * lisp/progmodes/python.el (python-shell-process-environment)
5407         (python-shell-extra-pythonpaths, python-shell-exec-path)
5408         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
5409         (python-shell-setup-codes): Remove :safe.
5410         (python-shell-remote-exec-path): New defcustom.
5411         (python-shell--add-to-path-with-priority): New macro.
5412         (python-shell-calculate-pythonpath): Give priority to
5413         python-shell-extra-pythonpaths.  Update docstring.
5414         (python-shell-calculate-process-environment): Give priority to
5415         python-shell-process-environment.  Update docstring.
5416         (python-shell-calculate-exec-path): Give priority to
5417         python-shell-exec-path and calculated virtualenv bin directory.
5418         Update docstring.
5419         (python-shell-tramp-refresh-remote-path): New function.
5420         (python-shell-with-environment): Use it when working remotely and
5421         do not modify tramp-remote-path.  Allow nesting.
5422         (python-shell-calculate-command): Remove useless
5423         python-shell-with-environment call.
5424         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
5425         (python-shell-calculate-pythonpath-2)
5426         (python-shell-calculate-process-environment-6)
5427         (python-shell-calculate-process-environment-7)
5428         (python-shell-calculate-process-environment-8)
5429         (python-shell-calculate-exec-path-3)
5430         (python-shell-calculate-exec-path-4)
5431         (python-shell-calculate-exec-path-5)
5432         (python-shell-calculate-exec-path-6)
5433         (python-shell-with-environment-3): New tests.
5434         (python-shell-calculate-process-environment-2)
5435         (python-shell-calculate-process-environment-3)
5436         (python-shell-calculate-process-environment-4)
5437         (python-shell-calculate-process-environment-5)
5438         (python-shell-calculate-exec-path-1)
5439         (python-shell-calculate-exec-path-2)
5440         (python-shell-with-environment-1)
5441         (python-shell-with-environment-2): Update and simplify.
5443 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
5445         Avoid hard-coding "M-x command" in docstrings
5446         * lisp/calendar/todo-mode.el (todo-mode):
5447         * lisp/desktop.el (desktop-save-mode):
5448         * lisp/edmacro.el (edit-kbd-macro):
5449         * lisp/emacs-lisp/package.el (package-menu-execute):
5450         * lisp/emulation/viper-cmd.el (viper-ask-level):
5451         * lisp/emulation/viper-init.el (viper-expert-level):
5452         * lisp/filesets.el (filesets-add-buffer):
5453         * lisp/follow.el (follow-mode):
5454         * lisp/gnus/auth-source.el (auth-sources):
5455         * lisp/international/ogonek.el (ogonek-informacja)
5456         (ogonek-information):
5457         * lisp/net/tramp.el (tramp-process-actions):
5458         * lisp/org/org-gnus.el (org-gnus-no-new-news):
5459         * lisp/org/org.el (org-ellipsis):
5460         * lisp/progmodes/python.el (python-shell-get-process-or-error):
5461         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
5462         * lisp/server.el (server-start):
5463         * lisp/type-break.el (type-break-noninteractive-query):
5464         * lisp/userlock.el (ask-user-about-supersession-help):
5465         * lisp/whitespace.el (whitespace-report-region):
5466         Prefer (substitute-command-keys "`\\[foo-command]'")
5467         to "`M-x foo-command'" in docstrings and the like.
5469 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
5471         Use add-function for prettify-symbols-compose-predicate
5472         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
5473         prettify-symbols-compose-predicate in terms of add-function.
5474         * etc/NEWS: Mention prettify-symbols-compose-predicate and
5475         prettify-symbols-mode support in tex-mode.
5477 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
5479         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun
5480         (smie-indent-exps, smie-indent-keyword): Use it.
5481         * test/indent/css-mode.css: Test alignment with leading comment.
5483 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
5485         Respect text-quoting-style in (*Finder*) menus
5486         * lisp/info.el (info--prettify-description):
5487         Treat description as a docstring, so that it's requoted as
5488         per text-quoting-style.
5490 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
5492         Document `window-use-time' in Elisp manual
5493         * doc/lispref/windows.texi (Selecting Windows): Document
5494         `window-use-time'.
5496 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
5498         A better fix for bug#21303
5499         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.  This is a
5500         cleaner fix for Bug#21260 than the previous change.
5502 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
5504         Respect text-quoting-style in calc
5505         In calc, tespect text-quoting-style preference in diagnostic
5506         formats and fix a few similar problems in docstrings.
5507         * lisp/calc/calc-aent.el (math-read-factor):
5508         * lisp/calc/calc-embed.el (calc-do-embedded):
5509         * lisp/calc/calc-ext.el (calc-user-function-list)
5510         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
5511         * lisp/calc/calc-help.el (calc-describe-key)
5512         (calc-describe-thing):
5513         * lisp/calc/calc-lang.el (calc-c-language)
5514         (math-parse-fortran-vector-end, math-parse-tex-sum)
5515         (math-parse-eqn-matrix, math-parse-eqn-prime)
5516         (calc-yacas-language, calc-maxima-language, calc-giac-language)
5517         (math-read-big-rec, math-read-big-balance):
5518         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
5519         (calc-auto-recompute):
5520         * lisp/calc/calc-prog.el (calc-user-define-invocation)
5521         (math-do-arg-check):
5522         * lisp/calc/calc-store.el (calc-edit-variable):
5523         * lisp/calc/calc-units.el (math-build-units-table-buffer):
5524         * lisp/calc/calc-vec.el (math-read-brackets):
5525         * lisp/calc/calc-yank.el (calc-edit-mode):
5526         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
5527         Use curved quotes in diagnostic format strings.
5528         * lisp/calc/calc-help.el (calc-describe-thing):
5529         Format docstrings with substitute-command-keys.
5530         * lisp/calc/calc-help.el (calc-j-prefix-help):
5531         * lisp/calc/calc-misc.el (calc-help):
5532         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
5533         Escape a docstring "`".
5535 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
5537         Fix documentation of 'menu-set-font' and 'set-frame-font'
5538         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
5539         * doc/lispref/frames.texi (Frame Font): Document that
5540         set-frame-font with the last argument 't' will also make the font
5541         the default for the future GUI frames.
5543         Document '--create-frame' option to emacsclient
5544         * doc/emacs/misc.texi (emacsclient Options): Document the
5545         '--create-frame' option.  (Bug#21308)
5547 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
5549         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
5551 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
5553         Document 'get-mru-window' in the ELisp manual
5554         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
5555         'get-mru-window'.  (Bug#21306)
5557         Clarify documentation of 'get-buffer-window-list'
5558         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
5559         current window, if relevant, will be the first in the list
5560         returned by 'get-buffer-window-list'.
5561         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
5563 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
5565         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
5566         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
5567         `switch-to-buffer'.
5569 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
5571         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
5572         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
5573         `display-buffer' instead of `switch-to-buffer'.
5575 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
5577         Follow user preference in calendar diagnostics
5578         Respect text-quoting-style preference in diagnostic formats by
5579         using curved quotes (which are translated as per text-quoting-style)
5580         instead of grave accent and apostrophe (which are not).
5581         * lisp/calendar/appt.el (appt-display-message):
5582         * lisp/calendar/diary-lib.el (diary-check-diary-file)
5583         (diary-mail-entries, diary-from-outlook):
5584         * lisp/calendar/icalendar.el (icalendar-export-region)
5585         (icalendar--convert-float-to-ical)
5586         (icalendar--convert-date-to-ical)
5587         (icalendar--convert-ical-to-diary)
5588         (icalendar--convert-recurring-to-diary)
5589         (icalendar--add-diary-entry):
5590         * lisp/calendar/time-date.el (format-seconds):
5591         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
5592         (timeclock-make-hours-explicit):
5593         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
5594         (todo-item-mark, todo-check-format)
5595         (todo-insert-item--next-param, todo-edit-item--next-key)
5596         (todo-mode):
5597         Use curved quotes in diagnostic format strings.
5598         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
5599         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
5600         Just use straight quoting for simple test case.
5602 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
5604         * src/gfilenotify.c (Fgfile_add_watch):
5605         Handle errors from g_file_monitor.
5607 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
5609         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
5610         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
5611         frame" instead of "non-minibuffer frame".
5613         Fix frame geometry related text
5614         * doc/lispref/frames.texi (Frame Layout): Rename
5615         `x-frame-geometry' to `frame-geometry'.
5616         * doc/lispref/frames.texi (Mouse Position):
5617         * doc/lispref/windows.texi (Coordinates and Windows): Use
5618         `set-mouse-absolute-pixel-position' instead of
5619         `x-set-mouse-absolute-pixel-position'.
5621         Sanitize frame geometry related functions
5622         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
5623         (Fx_frame_edges): Rename to Fns_frame_edges.
5624         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
5625         (Fx_frame_edges): Rename to Fw32_frame_edges.
5626         (Fx_mouse_absolute_pixel_position): Rename to
5627         Fw32_mouse_absolute_pixel_position.
5628         (Fx_set_mouse_absolute_pixel_position): Rename to
5629         Fw32_set_mouse_absolute_pixel_position.
5630         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
5631         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
5632         (ns-frame-edges, w32-mouse-absolute-pixel-position)
5633         (x-mouse-absolute-pixel-position)
5634         (w32-set-mouse-absolute-pixel-position)
5635         (x-set-mouse-absolute-pixel-position): Declare.
5636         (frame-geometry, mouse-absolute-pixel-position)
5637         (set-mouse-absolute-pixel-position): New functions.
5638         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
5640 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
5642         Fix MinGW64 build broken by latest w32uniscribe.c changes
5643         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
5644         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
5645         (Bug#21260)
5647 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
5649         Add TeX defaults for prettify-symbol-mode
5650         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Rename
5651         from tex-prettify-symbols-alist.
5652         (tex--prettify-symbols-compose-p): New function.
5653         (tex-common-initialization): Use them as prettify-symbols-alist
5654         and prettify-symbols-compose-predicate.
5656         Generalize prettify-symbols to arbitrary modes
5657         * lisp/progmodes/prog-mode.el
5658         (prettify-symbols-default-compose-p): New function.
5659         (prettify-symbols-compose-predicate): New variable.
5660         (prettify-symbols--compose-symbol): Use it.
5662 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
5664         Don't quote symbols 'like-this' in docstrings etc.
5665         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
5666         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
5667         * lisp/allout.el (allout-add-resumptions, allout-mode):
5668         * lisp/calculator.el (calculator-operators):
5669         * lisp/cedet/data-debug.el (dd-propertize):
5670         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
5671         * lisp/cedet/semantic/analyze/debug.el:
5672         (semantic-analyzer-debug-global-miss-text):
5673         * lisp/cedet/semantic/lex-spp.el:
5674         (semantic-lex-spp-replace-or-symbol-or-keyword):
5675         * lisp/cedet/semantic/symref.el:
5676         (semantic-symref-cleanup-recent-buffers-fcn):
5677         * lisp/cedet/semantic/tag.el (semantic-tag-class):
5678         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
5679         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
5680         * lisp/gnus/pop3.el (pop3-authentication-scheme):
5681         * lisp/help-fns.el (describe-function-orig-buffer):
5682         * lisp/imenu.el (imenu--history-list):
5683         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
5684         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
5685         (feedmail-queue-default-file-slug)
5686         (feedmail-queue-buffer-file-name):
5687         * lisp/net/mairix.el (mairix-searches-mode-map):
5688         * lisp/net/newst-backend.el (newsticker-retrieval-method)
5689         (newsticker-auto-mark-filter-list):
5690         * lisp/obsolete/vi.el (vi-mode):
5691         * lisp/progmodes/cc-engine.el (c-literal-type):
5692         * lisp/progmodes/cpp.el (cpp-face):
5693         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
5694         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
5695         * lisp/progmodes/pascal.el (pascal-auto-lineup):
5696         * lisp/progmodes/prog-mode.el (prog-widen):
5697         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
5698         (verilog-auto-lineup, verilog-auto-reset-widths)
5699         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
5700         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
5701         (flyspell-maybe-correct-doubling):
5702         * lisp/textmodes/table.el (table-justify, table-justify-cell)
5703         (table-justify-row, table-justify-column, table-insert-sequence)
5704         (table--justify-cell-contents):
5705         * lisp/url/url-auth.el (url-get-authentication):
5706         * lisp/window.el (display-buffer-record-window):
5707         * lisp/xml.el (xml-parse-file, xml-parse-region):
5708         * src/gfilenotify.c (Fgfile_add_watch):
5709         Don't quote symbols with apostrophes in doc strings.
5710         Use asymmetric quotes instead.
5711         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
5712         Likewise for symbol in diagnostic.
5713         * lisp/image.el (image-extension-data):
5714         * lisp/register.el (frame-configuration-to-register):
5715         * src/buffer.c (syms_of_buffer):
5716         Remove bogus apostrophes after symbols.
5717         * lisp/thumbs.el (thumbs-conversion-program):
5718         Quote Lisp string values using double-quotes, not apostrophes.
5720 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
5722         Describe frame geometry and related functions in Elisp manual
5723         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
5724         (Showing Images): Update references.
5725         * doc/lispref/elisp.texi (Top): Update node listing.
5726         * doc/lispref/frames.texi (Frame Geometry): New node.  Move
5727         `Size and Position' section here.
5728         (Size Parameters): Update references.
5729         (Mouse Position): Update references and nomenclature.  Describe
5730         new functions `x-mouse-absolute-pixel-position' and
5731         `x-set-mouse-absolute-pixel-position'.
5732         * doc/lispref/windows.texi (Window Sizes): Update references.
5733         (Resizing Windows): Update references.  Move description of
5734         `fit-frame-to-buffer' here.
5735         (Coordinates and Windows): Update nomenclature and references.
5736         Describe new arguments of `window-edges'.  Comment out
5737         descriptions of `window-left-column', `window-top-line',
5738         `window-pixel-left' and `window-pixel-top'.  Describe
5739         `window-absolute-pixel-position'.
5741 2015-08-20  Alan Mackenzie  <acm@muc.de>
5743         Handling of `c-parse-state'.  Fix low level bug.
5744         progmodes/cc-engine.el (c-remove-stale-state-cache-backwards): Add
5745         "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
5747 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
5749         In `widget-color--choose-action' quit *Color* window instead of deleting it
5750         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
5751         window instead of deleting it.
5753 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
5755         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
5756         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
5757         determine whether frame has a titlebar.
5758         Suggested by Eli Zaretskii <eliz@gnu.org>
5760 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
5762         Add a prettify-symbols-alist for (La)TeX
5763         * tex-mode.el (tex-prettify-symbols-alist): New variable holding
5764         an alist suitable as prettify-symbols-alist in (La)TeX modes.
5766 2015-08-19  Alan Mackenzie  <acm@muc.de>
5768         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
5769         Fixes debbugs#21275.
5770         In Emacs >= 25, let electric-pair-mode take precedence over
5771         delete-selection-mode.
5772         delsel.el (delete-selection-uses-region-p): New function, previously a
5773         lambda expression in a property value for `self-insert-command'.
5774         (top-level) Set the `delete-selection' property of `self-insert-command'
5775         to `delete-selection-uses-region-p'.
5776         progmodes/cc-cmds.el (top-level): Give the `delete-selection' property
5777         for c-electric-\(brace\|paren\) the value
5778         `delete-selection-uses-region-p' when the latter function exists.
5780 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
5782         Fix key binding quoting in tutorial *Help*
5783         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
5784         When generating help for custom key bindings, use the user-preferred
5785         quoting style rather than hardcoding the grave style.
5787 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
5789         Improve and future-proof OTF fonts support in w32uniscribe.c
5790         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
5791         about the expected results and why the new Uniscribe APIs are not
5792         used in this function.
5793         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
5794         (ScriptGetFontFeatureTags_Proc): New function typedefs.
5795         (uniscribe_new_apis): New static variable.
5796         (uniscribe_check_features): New function, implements OTF features
5797         verification while correctly accounting for features in the list
5798         after the nil member, if any.
5799         (uniscribe_check_otf_1): New function, retrieves the features
5800         supported by the font for the requested script and language using
5801         the Uniscribe APIs available from Windows Vista onwards.
5802         (uniscribe_check_otf): If the new Uniscribe APIs are available,
5803         use them in preference to reading the font data directly.  Call
5804         uniscribe_check_features to verify that the requested features are
5805         supported, replacing the original incomplete code.
5806         (syms_of_w32uniscribe): Initialize function pointers for the new
5807         Uniscribe APIs.  (Bug#21260)
5808         (otf_features): Scan the script, langsys, and feature arrays back
5809         to front, so that the result we return has them in alphabetical
5810         order, like ftfont.c does.
5811         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
5812         New variable for debugging w32uniscribe.c code.
5814 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
5816         * isearch.el (isearch-search-fun-default): Revert a5bdb87
5817         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
5818         clause of `isearch-search-fun-default'. That lax variable does not
5819         refer to lax-whitespacing.  Related to (bug#21777).
5820         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
5821         * character-fold.el (character-fold-search): Set to nil.
5822         Default to nil for now, until someone implements proper
5823         lax-whitespacing with char-fold searching.
5825 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
5827         Fix doc-string of `help-mode-finish'.
5828         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
5830         In nsimage.m include coding.h (Bug#21292)
5831         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
5833         Move window edge functions to Elisp.
5834         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
5835         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
5836         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
5837         Move to window.el.
5838         (calc_absolute_offset): Remove.
5839         * lisp/frame.el (frame-edges): New function.
5840         * lisp/window.el (window-edges, window-pixel-edges)
5841         (window-absolute-pixel-edges): Move here from window.c.
5842         (window-body-edges, window-body-pixel-edges)
5843         (window-absolute-body-pixel-edges): Move here from window.c and
5844         rename "inside" to "body".  Keep old names as aliases.
5845         (window-absolute-pixel-position): New function.
5847 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
5849         [Gnus]: Use overlay functions directly
5850         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
5851         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
5852         (gnus-article-highlight-signature, gnus-article-extend-url-button)
5853         (gnus-article-add-button, gnus-insert-prev-page-button)
5854         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
5855         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
5856         (gnus-cite-add-face):
5857         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
5858         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
5859         (gnus-tree-recenter, gnus-highlight-selected-tree):
5860         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
5861         (gnus-summary-show-thread, gnus-summary-hide-thread)
5862         (gnus-highlight-selected-summary):
5863         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
5864         * lisp/gnus/message.el (message-fix-before-sending)
5865         (message-toggle-image-thumbnails):
5866         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
5867         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
5868         Use overlay functions directly instead of using gnus-overlay-*,
5869         message-overlay-*, and sieve-overlay-*.
5870         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
5871         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
5872         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
5873         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
5874         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
5875         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
5876         (message-overlay-get, message-overlay-put, message-overlays-in):
5877         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
5878         (sieve-overlays-at): Remove.
5880 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
5882         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version.
5883         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
5884         builds can use the declaration from the system headers.
5885         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
5886         definition of TITLEBAR_INFO.
5887         Suggested by Eli Zaretskii  <eliz@gnu.org>
5889 2015-08-19  Glenn Morris  <rgm@gnu.org>
5891         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
5893 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
5895         Use new q ‘format’ flag when fixing quotes in C
5896         * src/image.c (image_size_error): New function.  All uses of
5897         image_error with "Invalid image size ..."  changed to use it.
5898         * src/image.c (image_size_error, xbm_load_image, xbm_load)
5899         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
5900         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
5901         (imagemagick_load, svg_load, svg_load_image, gs_load)
5902         (x_kill_gs_process):
5903         * src/lread.c (load_warn_old_style_backquotes):
5904         * src/xfaces.c (load_pixmap):
5905         * src/xselect.c (x_clipboard_manager_error_1):
5906         Use %qs, not uLSQM and uRSQM.
5907         * src/syntax.c (Finternal_describe_syntax_value):
5908         Prefer Fsubstitute_command_keys to Fformat, as this lets
5909         us use AUTO_STRING.
5910         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
5911         as it's now guaranteed to be ASCII.
5912         * src/xselect.c (x_clipboard_manager_error_2):
5913         Avoid grave accent in low-level stderr diagnostic.
5915 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
5917         New q flag for ‘format’
5918         * doc/lispref/processes.texi (Sentinels):
5919         Don't hardwire grave quoting style in example.
5920         * doc/lispref/strings.texi (Formatting Strings):
5921         * etc/NEWS:
5922         Document new q flag.
5923         * src/editfns.c (Fformat): Implement it.
5925 2015-08-18  Daiki Ueno  <ueno@gnu.org>
5927         pinentry.el: Add debugging support
5928         * lisp/net/pinentry.el (pinentry-debug): New variable.
5929         (pinentry-debug-buffer): New variable.
5930         (pinentry--process-filter): Send input to the debug buffer, if
5931         `pinentry-debug' is set.
5933         pinentry.el: Improve multiline prompt
5934         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
5935         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
5936         command.
5938 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
5940         Fix multibyte confusion in diagnostics
5941         * src/print.c (print_error_message):
5942         Don't assume that the caller's name is unibyte.
5943         * src/xdisp.c (vadd_to_log):
5944         Don't assume that the formatted diagnostic is unibyte.
5946         Fix file name encodings in diagnostics
5947         Also, close some minor races when opening image files, by opening
5948         them once instead of multiple times.
5949         * src/gtkutil.c (xg_get_image_for_pixmap):
5950         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
5951         (svg_load):
5952         * src/nsimage.m (allocInitFromFile:):
5953         * src/xfns.c (xg_set_icon):
5954         Encode file name, since x_find_image_file no longer does that.
5955         * src/image.c (x_find_image_fd): New function.
5956         (x_find_image_file): Use it.  Do not encode resulting file name,
5957         since callers sometimes need it decoded.
5958         (slurp_file): File arg is now a fd, not a file name.
5959         All callers changed.  This saves us having to open the file twice.
5960         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
5961         (svg_load):
5962         Use x_find_image_fd and fdopen to save a file-open.
5963         Report file name that failed.
5964         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
5966 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
5968         Allow blink-matching-paren to jump off screen
5969         * doc/emacs/programs.texi (Matching): Mention the
5970         `blink-matching-paren' value `jump-offscreen'.
5971         * lisp/simple.el (blink-matching-paren): New possible value.
5972         (blink-matching-paren-on-screen): Clarify the docstring.
5973         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
5975         Refine the previous change
5976         * lisp/simple.el (blink-matching-open): Use minibuffer-message
5977         outside of save-excursion (bug#21286).
5979 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
5981         Rewrite and add frame geometry related functions.
5982         * src/frame.c (Fframe_position): New function.
5983         (Fset_frame_position): Rename parameters and rewrite doc-string.
5984         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
5985         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
5986         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
5987         Qtitle_bar_size.
5988         * src/nsfns.m (frame_geometry): New function.
5989         (Fx_frame_geometry): Call frame_geometry.
5990         (Fx_frame_edges): New function.
5991         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
5992         (GetTitleBarInfo_Proc): Define these so we can use the
5993         GetTitleBarInfo API.
5994         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
5995         (Fx_frame_geometry): Rewrite.
5996         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
5997         (Fx_set_mouse_absolute_pixel_position): New functions.
5998         * src/xfns.c (frame_geometry): New function.
5999         (Fx_frame_geometry): Call frame_geometry.
6000         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
6001         (Fx_set_mouse_absolute_pixel_position): New functions.
6003 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
6005         Improve Tramp's compatibility
6006         * lisp/net/tramp.el (tramp-get-method-parameter):
6007         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
6008         (tramp-adb-get-device):
6009         * lisp/net/trampver.el (tramp-repository-get-version):
6010         Use `tramp-compat-replace-regexp-in-string'.
6012 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
6014         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
6015         Encode/decode string.
6017 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
6019         Clarify what happens to match data on failure
6020         Problem reported by Ernesto Alfonso (Bug#21279).
6021         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
6022         Document more carefully what happens to match data after a failed
6023         search.
6024         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
6025         the return value is undefined if the last search failed.
6026         (Fmatch_data): Simplify doc string line 1.
6028 2015-08-18  Daiki Ueno  <ueno@gnu.org>
6030         Revert "pinentry.el: Support external passphrase cache"
6031         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
6032         pinentry.el shouldn't directly interact with the secrets service,
6033         but ask the caller to cache the passphrase.
6035 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
6037         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
6038         Message mode hooks.
6040 2015-08-17  Daiki Ueno  <ueno@gnu.org>
6042         epg.el: Make gpgconf output parsing future proof
6043         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
6044         --list-options" output.
6046         pinentry.el: Support external passphrase cache
6047         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
6048         (pinentry--allow-external-password-cache): New local variable.
6049         (pinentry--key-info): New local variable.
6050         (secrets-enabled, secrets-search-items, secrets-get-secret):
6051         Declare.
6052         (pinentry--send-passphrase): New function, split from
6053         `pinentry--process-filter'.
6054         (pinentry--process-filter): Use secrets.el to retrieve passphrase
6055         from login keyring.
6057         pinentry.el: Popup window for multiline prompt
6058         * lisp/net/pinentry.el (pinentry): New custom group.
6059         (pinentry-popup-prompt-window): New user option.
6060         (pinentry-prompt-window-height): New user option.
6061         (pinentry--prompt-buffer): New variable.
6062         (pinentry-prompt-mode-map): New variable.
6063         (pinentry-prompt-mode): New function.
6064         (pinentry--prompt): New function.
6065         (pinentry--process-filter): Use `pinentry--prompt' instead of
6066         `read-passwd' and `y-or-n-p'.
6068 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
6070         message.el: Silent the byte compiler
6071         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
6072         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
6073         (message-delete-overlay, message-window-inside-pixel-edges):
6074         Declare before using.
6076         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
6077         (message-window-inside-pixel-edges): XEmacs compatible functions.
6079 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6081         * message.el (message-toggle-image-thumbnails): New command.
6083 2015-08-17  Noah Friedman  <friedman@splode.com>
6085         (blink-matching-open): Restore point before calling minibuffer-message.
6087 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
6089         * lisp/play/dunnet.el: Update version number in header (now
6090         matches help).
6092 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
6094         Curved quotes in --batch diagnostics in non-UTF-8
6095         When run with --batch, check that curved quotes are compatible with
6096         the system locale before outputting them in diagnostics.
6097         Problem reported by Eli Zaretskii in:
6098         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
6099         * lisp/startup.el (command-line): Set internal--text-quoting-flag
6100         after the standard display table is initialized.
6101         * src/doc.c (default_to_grave_quoting_style): New function.
6102         (text_quoting_style): Use it.
6103         (text_quoting_flag): New static var, visible to Lisp as
6104         internal--text-quoting-flag.
6105         * src/emacs.c: Include <wchar.h> if available.
6106         (using_utf8): New function.
6107         (main): Use it to initialize text_quoting_flag.
6108         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
6109         Don't define, as it's not needed and it clashes with wchar.h.
6111 2015-08-17  Glenn Morris  <rgm@gnu.org>
6113         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
6114         from makeinfo about spurious "Note:" cross-reference, and for grammar.
6116 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
6118         Minor change in variable initialization on MS-Windows
6119         * src/w32fns.c <after_dead_key>: Initialize to -1.
6120         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
6121         non-zero.
6123         Fix a bug with LWindow key remapping on MS-Windows
6124         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
6126 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
6128         Improve fontset support for latest OTF script tags
6129         * lisp/international/fontset.el (otf-script-alist): Add some
6130         missing script tags.
6131         (setup-default-fontset): Include settings for v2 versions of the
6132         script tags used by some modern OTF/TTF fonts.
6134 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
6136         Spelling fixes
6138 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
6140         Use curved quotes in core elisp diagnostics
6141         In the core elisp files, use curved quotes in diagnostic formats,
6142         so that they follow user preference as per ‘text-quoting-style’
6143         rather than being hard-coded to quote `like this'.
6144         * lisp/abbrev.el (expand-region-abbrevs):
6145         * lisp/button.el (button-category-symbol, button-put)
6146         (make-text-button):
6147         * lisp/cus-start.el:
6148         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
6149         (custom--sort-vars-1, load-theme):
6150         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
6151         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
6152         (cl-generic-generalizers):
6153         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
6154         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
6155         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
6156         (advice--make, define-advice):
6157         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
6158         * lisp/emacs-lisp/timer.el (timer-event-handler):
6159         * lisp/env.el (setenv):
6160         * lisp/facemenu.el (facemenu-add-new-face)
6161         (facemenu-add-new-color):
6162         * lisp/faces.el (face-documentation, read-face-name)
6163         (face-read-string, read-face-font, face-spec-set-match-display)
6164         (read-color, x-resolve-font-name):
6165         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
6166         (set-auto-mode, hack-local-variables)
6167         (hack-one-local-variable--obsolete)
6168         (dir-locals-set-directory-class, write-file)
6169         (basic-save-buffer, delete-directory, copy-directory)
6170         (recover-session, recover-session-finish, insert-directory)
6171         (file-modes-char-to-who, file-modes-symbolic-to-number)
6172         (move-file-to-trash):
6173         * lisp/font-lock.el (font-lock-fontify-buffer):
6174         * lisp/format.el (format-write-file, format-find-file)
6175         (format-insert-file):
6176         * lisp/frame.el (get-device-terminal, select-frame-by-name):
6177         * lisp/fringe.el (fringe--check-style):
6178         * lisp/help.el (describe-minor-mode-from-indicator):
6179         * lisp/image.el (image-type):
6180         * lisp/international/fontset.el (x-must-resolve-font-name):
6181         * lisp/international/mule-cmds.el (prefer-coding-system)
6182         (select-safe-coding-system-interactively)
6183         (select-safe-coding-system, activate-input-method)
6184         (toggle-input-method, describe-current-input-method):
6185         * lisp/international/mule-conf.el (code-offset):
6186         * lisp/mouse.el (minor-mode-menu-from-indicator):
6187         * lisp/replace.el (query-replace-read-from)
6188         (occur-after-change-function, occur-1):
6189         * lisp/scroll-bar.el (scroll-bar-columns):
6190         * lisp/simple.el (execute-extended-command)
6191         (undo-outer-limit-truncate, compose-mail, set-variable)
6192         (choose-completion-string, define-alternatives):
6193         * lisp/startup.el (site-run-file, tty-handle-args, )
6194         (command-line, command-line-1):
6195         * lisp/subr.el (noreturn, define-error, add-to-list)
6196         (read-char-choice):
6197         * lisp/term/common-win.el (x-handle-xrm-switch)
6198         (x-handle-name-switch, x-handle-args):
6199         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
6200         Use curved quotes in diagnostics.
6201         * lisp/international/mule.el (find-auto-coding):
6202         Use " to quote in a diagnostic, to be consistent with the rest of
6203         this file.
6205         Convert lisp/term/x-win.el to UTF-8
6206         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
6207         runtime behavior, and the file is multilingual so compile-time
6208         appearance shouldn't be an issue.
6209         * admin/notes/unicode: Document this.
6211 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
6213         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
6214         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
6215         issues and comments, bug#943.
6216         (verilog-type-font-keywords): Cycle delay operators like ##1 and
6217         ##[0:$] are now highlighted in their entirety similarly to the #
6218         delay-control operator.  Likewise, the followed-by operators #-#
6219         and #=# are no longer partially highlighed.
6220         (verilog-backward-syntactic-ws-quick)
6221         (verilog-skip-backward-comments): Minor performance improvements
6222         to buffer traversal functions for reduced latency.
6223         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
6224         keyword 'final' follows 'assert/assume/cover', then it is part of
6225         a deferred immediate assertion item and should not be treated as a
6226         final construct for indentation.  Reported by Yuri Sugihara.
6227         (verilog-do-indent): Virtual task/function/class definition lines
6228         should not be considered as declarations.  Reported by Enzo Chi.
6229         (verilog-do-indent): Do not falsely indent to '=' of
6230         property/sequence operators on subsequent lines of a multi-line
6231         statement.
6232         (verilog-assignment-operator-re): Fix '!==' operator and add
6233         support for '<->', ':/', '#-#', and '#=#' operators.
6234         (verilog-calculate-indent, verilog-label-be): Enable
6235         case-sensitive regular expression parsing when looking for
6236         keywords.
6237         (verilog-calc-1): Detect 'pure virtual method' declarations which
6238         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
6239         (verilog-backward-ws&directives): When moving back to the start of
6240         a line and the preceeding line ended with an escaped-newline, then
6241         jump up one line.  This properly consumes a multi-line
6242         pre-processor directive.  Reported by Kaushal Modi.
6243         (verilog-dpi-import-export-re, verilog-extended-complete-re)
6244         (verilog-calc-1): Teach verilog-mode to properly indent after a
6245         DPI import/export statement that resides outside of a module.
6246         Reported by Kaushal Modi.
6247         (verilog-extended-complete-re): Update regexp to match both
6248         "DPI-C" and "DPI".  Reported by Kaushal Modi.
6250 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
6252         substitute-command-keys a few more doc strings
6253         * lisp/allout.el (outlineify-sticky):
6254         * lisp/files.el (hack-one-local-variable--obsolete):
6255         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
6256         Use substitute-command-keys on some doc strings so that
6257         they don't use hard-coded key bindings or quoting styles.
6259         Fix quoting in Fformat calls
6260         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
6261         (xpm_load, xpm_load_image, pbm_load, png_load_body)
6262         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
6263         (imagemagick_load, svg_load, svg_load_image, gs_load)
6264         (x_kill_gs_process):
6265         * src/lread.c (load_warn_old_style_backquotes):
6266         * src/xfaces.c (load_pixmap):
6267         * src/xselect.c (x_clipboard_manager_error_1):
6268         Quote diagnostics according to user preference when calling
6269         Fformat or its derivatives.
6271 2015-08-15  Glenn Morris  <rgm@gnu.org>
6273         * admin/admin.el (set-version, set-copyright): Remove deleted files.
6275 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
6277         Allow describe-function helpers to access buffer-local values.
6278         This will be used by cedet/mode-local.el `describe-mode-local-override'
6279         on `help-fns-describe-function-functions' in upstream CEDET.
6280         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
6281         `describe-function'.
6282         (describe-function): Bind it, save it on the help xref stack.
6284         Handle pulse-background being nil
6285         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
6286         pulse-background, handle it being nil.
6288 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
6290         Fix "\`" confusion in Lisp strings
6291         * admin/authors.el (authors-canonical-author-name):
6292         Fix typo by using "\\`" not "\`" in string RE.
6293         * lisp/obsolete/complete.el (PC-complete-as-file-name):
6294         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
6295         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
6296         Use plain "`", not the equivalent-but-confusing "\`", in strings.
6297         * lisp/textmodes/texinfmt.el: Fix comment likewise.
6299 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
6301         Remove 'nt/zipdist.bat' (no longer used)
6302         * nt/zipdist.bat: Remove -- no longer used.
6304 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
6306         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
6307         rather than "getenforce".
6308         (tramp-sh-handle-set-file-selinux-context): Do not
6309         cache SELinux context if not all context components are given.
6311 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
6313         Add doc strings to 2 help-mode.el functions
6314         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
6315         strings.  (Bug#21263)
6317         Remove files used by the old MS-Windows specific build procedure
6318         * admin/unidata/makefile.w32-in:
6319         * doc/emacs/makefile.w32-in:
6320         * doc/lispintro/makefile.w32-in:
6321         * doc/lispref/makefile.w32-in:
6322         * doc/misc/makefile.w32-in:
6323         * leim/makefile.w32-in:
6324         * lib-src/makefile.w32-in:
6325         * lib/makefile.w32-in:
6326         * lisp/makefile.w32-in:
6327         * nt/INSTALL.OLD:
6328         * nt/config.nt:
6329         * nt/emacs-src.tags:
6330         * nt/envadd.bat:
6331         * nt/gmake.defs:
6332         * nt/makefile.w32-in:
6333         * nt/multi-install-info.bat:
6334         * nt/nmake.defs:
6335         * nt/paths.h:
6336         * src/makefile.w32-in: Files deleted.
6337         * nt/configure.bat: Remove everything except the blurb about the
6338         new build procedure.
6339         * make-dist: Remove references to makefile.w32-in in various
6340         directories, and to files in nt/ that were deleted.
6341         * etc/NEWS: Mention the fact that the files were dropped.
6343 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
6345         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
6346         (Bug#21248)
6348 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
6350         Default to inotify instead of gfile
6351         * configure.ac (with_file_notification): Fix typo that
6352         prevented suppression of file notification if HAVE_NS.
6353         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
6354         with_file_notification is 'yes' (Bug#21241).
6355         * etc/NEWS: Mention this.
6357         Fix broken URLs for ISO-IR
6358         * doc/emacs/mule.texi (Charsets):
6359         * lisp/international/mule-conf.el:
6360         Fix broken URL (Bug#21248).
6362         Low-level diagnostics now use ‘text-quoting-style’
6363         * src/doprnt.c (doprnt):
6364         Format ` and ' as per ‘text-quoting-style’.
6365         * src/xdisp.c (vmessage, message): Mention that the format should
6366         not contain ` or '.
6368         Prefer ‘format’ to ‘substitute-command-keys’
6369         * src/character.h (uLSQM, uRSQM): Move here ...
6370         * src/doc.c (uLSQM, uRSQM): ... from here.
6371         * src/doc.c (Fsubstitute_command_keys):
6372         * src/syntax.c (Finternal_describe_syntax_value):
6373         * lisp/cedet/mode-local.el (mode-local-print-binding)
6374         (mode-local-describe-bindings-2):
6375         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
6376         * lisp/cus-theme.el (describe-theme-1):
6377         * lisp/descr-text.el (describe-text-properties-1, describe-char):
6378         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
6379         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
6380         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
6381         * lisp/emacs-lisp/package.el (describe-package-1):
6382         * lisp/faces.el (describe-face):
6383         * lisp/help-fns.el (help-fns--key-bindings)
6384         (help-fns--compiler-macro, help-fns--parent-mode)
6385         (help-fns--obsolete, help-fns--interactive-only)
6386         (describe-function-1, describe-variable):
6387         * lisp/help.el (describe-mode):
6388         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
6389         to implement quoting style.  This generally makes the code simpler.
6391         Extend ‘format’ to translate curved quotes
6392         This is a followup to the recent doc string change, and deals with
6393         diagnostics and the like.  This patch is more conservative than
6394         the doc string change, in that the behavior of ‘format’ changes
6395         only if its first arg contains curved quotes and the user prefers
6396         straight or grave quotes.  (Come to think of it, perhaps we should
6397         be similarly conservative with doc strings too, but that can wait.)
6398         The upside of this conservatism is that existing usage is almost
6399         surely unaffected.  The downside is that we'll eventually have to
6400         change Emacs's format strings to use curved quotes in places where
6401         the user might want curved quotes, but that's a simple and
6402         mechanical translation that I'm willing to do later.  (Bug#21222)
6403         * doc/lispref/help.texi (Keys in Documentation):
6404         Move description of text-quoting-style from here ...
6405         * doc/lispref/strings.texi (Formatting Strings):
6406         ... to here, and describe new behavior of ‘format’.
6407         * etc/NEWS: Describe new behavior.
6408         * lisp/calc/calc-help.el (calc-describe-thing):
6409         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
6410         * lisp/info.el (Info-find-index-name):
6411         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
6412         of recently-added curved quotes.
6413         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
6414         Move from here ...
6415         * src/lisp.h: ... to here.
6416         * src/doc.c (text_quoting_style): New function.
6417         (Fsubstitute_command_keys): Use it.
6418         * src/editfns.c (Fformat): Implement new behavior.
6419         * src/lisp.h (enum text_quoting_style): New enum.
6421 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
6423         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
6424         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
6426 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
6428         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
6429         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
6431 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
6433         Flush file properties in Tramp
6434         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
6435         (tramp-sh-handle-set-file-times):
6436         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
6437         (tramp-adb-handle-set-file-times): Flush the file properties of
6438         the directory.
6440 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
6442         * doc/emacs/misc.text (Amusements): Fixed typo.
6444 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
6446         Don't miss warnings about removing string text properties while dumping
6447         * src/alloc.c (purecopy): Warn about removing a string's text
6448         properties even when the same string was already pure-copied
6449         earlier.
6450         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
6451         (elisp--xref-format-extra): Fix the commentary.
6453 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
6455         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049)
6457 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
6459         * lisp/progmodes/compile.el: Assume 8-wide TABs (bug#21038)
6460         * lisp/progmodes/compile.el: Use lexical-binding.
6461         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
6463 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
6465         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
6466         * lisp/uniquify.el: Remove redundant `:group's.
6468 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
6470         * lisp/net/tramp-adb.el
6471         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
6472         result to prevent modification of the tramp-cache by side effects.
6473         Use the correct cache key.
6475 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
6477         Make add_to_log varargs
6478         * src/alloc.c (run_finalizer_handler):
6479         * src/charset.c (load_charset_map_from_vector):
6480         * src/nsimage.m (ns_load_image):
6481         * src/xfaces.c (load_pixmap, load_color2):
6482         Simplify, now that add_to_log has a variable number of args.
6483         * src/image.c (image_error): Take a variable number of args.
6484         Callers simplified.
6485         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
6486         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
6487         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
6488         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
6490         Optional args for holiday-greek-orthodox-easter
6491         * etc/NEWS: Document this.
6492         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
6493         Add optional args N and STRING, mimicking the API and code of
6494         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
6496 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
6498         xref-find-definitions: Exclude more generic function items.
6499         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method): Add doc string.
6500         (cl--generic-find-defgeneric-regexp): New.
6501         (find-function-regexp-alist): Add it.
6502         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
6503         elisp-mode.el, change to search for ";;; Code:"
6504         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
6505         (find-function-regexp-alist): Add them.
6506         * lisp/progmodes/elisp-mode.el:
6507         (elisp--xref-format, elisp--xref-format-extra): Change back to defvar due
6508         to bug#21237.
6509         (elisp--xref-find-definitions): Exclude co-located default methods for
6510         generic functions. Also exclude implicitly declared defgeneric.
6511         (elisp--xref-find-definitions): Handle C source properly. Exclude minor
6512         mode variables defined by 'define-minor-mode'.
6513         * test/automated/elisp-mode-tests.el: Declare generic functions, add
6514         tests for them.
6515         (xref-elisp-test-run): Fix bug.
6516         (emacs-test-dir): Improve initial value.
6517         (find-defs-defun-defvar-el): Don't expect defvar.
6518         (find-defs-feature-el): Match change to find-feature-regexp.
6520 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
6522         Improve warning about purecopy of strings with properties
6523         * src/alloc.c (purecopy): Show the offending string with the
6524         warning about removing its text properties.
6526 2015-08-12  Alan Mackenzie  <acm@muc.de>
6528         Introduce new macros to cover Emacs's new names in cl-lib.el.
6529         This also eliminates `mapcan' warnings in XEmacs.
6530         progmodes/cc-defs.el (c--mapcan-status): new variable to characterise
6531         [X]Emacs versions.
6532         (top-level): Require either 'cl or 'cl-lib, depending on
6533         c--mapcan-status.
6534         Change this back to cc-external-require from an eval-when-compile
6535         require.
6536         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
6537         (c--delete-duplicates): New macros which expand into either old or new
6538         names.
6539         (c-make-keywords-re, c-lang-defconst, c-lang-const) Use the new macros
6540         rather than the old names.
6541         progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan rather
6542         than mapcan.
6543         progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
6544         progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
6545         depending on c--mapcan-status.
6546         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
6547         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
6548         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
6549         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
6550         (c-decl-block-key, c-keywords, c-keywords-obarray)
6551         (c-regular-keywords-regexp, c-primary-expr-regexp)
6552         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
6553         (c-known-type-key, c-nonlabel-token-key)
6554         (c-make-init-lang-vars-fun): Use the new macros rather than the old
6555         names.
6557 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
6559         loadhist.el (read-feature): Conform to completing-read
6560         * lisp/loadhist.el (read-feature): According to `completing-read'
6561         documentation, if collection is a list, then it must be a list of
6562         strings, not a list of symbols like before.
6564 2015-08-12  David Kastrup  <dak@gnu.org>
6566         Deal gracefully with up-events (Bug#19746)
6567         * keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
6568         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
6569         those may easily be injected by user-level Lisp code.
6570         (read_key_sequence): Discard unbound up-events like unbound
6571         down-events: they are even more likely only relevant for special
6572         purposes.
6573         While Emacs will not produce up-events on its own currently (those are
6574         converted to drag or click events before being converted to
6575         Lisp-readable structures), the input queue can be made to contain them
6576         by synthesizing events to `unread-command-events'.  Emacs should deal
6577         consistently with such events.
6579 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
6581         Fix display of thin lines whose newline has line-height property of t
6582         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
6583         and descent values of non-empty glyph rows, since they could have
6584         forced low values deliberately.  (Bug#21243)
6586 2015-08-12  Richard Stallman  <rms@gnu.org>
6588         Offer to combine multiple To or CC fields.
6589         * sendmail.el (mail-combine-fields): New function.
6590         (mail-send): Call 'mail-combine-fields'.
6592         Don't decrypt encrypted files.
6593         * mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
6595         Handle encrypted mbox files.
6596         * rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt the mbox
6597         file if necessary.
6599         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
6600         * rmail.el (rmail-epa-decrypt-1): New subroutine.
6601         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
6602         In a mime message, reenable Mime and show the parts that
6603         were shown before.
6604         Add keyword "decrypt" if anything decrypted.
6606         epa-inhibit inhibits auto-recognition of .gpg files
6607         * lisp/epa-file.el (epa-inhibit): New variable.
6608         (epa-file-handler): Check epa-inhibit.
6610 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
6612         * emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
6614 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
6616         Respect python.el imenu when semantic-mode is off
6617         Fixes debbugs:21220
6618         * lisp/cedet/semantic/wisent/python.el: Do not force
6619         wisent-python-default-setup on python-mode-hook.
6621 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
6623         Give names to Unicode code points in C code
6624         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
6625         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
6626         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
6627         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
6628         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
6629         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
6630         (OBJECT_REPLACEMENT_CHARACTER):
6631         New named constants for Unicode code points.
6632         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
6633         * src/composite.c (char_composable_p):
6634         * src/lread.c (readevalloop, read1):
6635         * src/xdisp.c (get_next_display_element):
6636         Use them.
6637         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
6638         Remove; now in character.h.
6640 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
6642         elisp--xref-find-definitions handle cl-defstuct default constructor
6643         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
6644         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
6645         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
6646         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
6647         from xref-elisp-test for ease of debugging.
6648         (xref-elisp-deftest): Rename from xref-elisp-test.
6649         (find-defs-constructor): New test.
6650         (find-defs-defgeneric-el): Match batch test config.
6651         (compile): Required for find-defs compilation-minor-mode test.
6652         (find-defs-defvar-el): Match code change.
6653         (find-defs-face-el): Match code change.
6654         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
6655         Improve doc string.
6657 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
6659         * lisp/replace.el (perform-replace): Document `replacements'.
6660         (perform-replace): Move the description of the format of `replacements'
6661         from the body's comment to the doc string.
6663 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
6665         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
6666         sequence.  Recent adb version send initial escape sequences, even
6667         when terminal type is set to TERM=dumb.
6669 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
6671         Rewrite elisp--xref-find-definitions to handle many more cases; add tests.
6672         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
6673         Function deleted.
6674         (elisp--xref-format-cl-defmethod): New defconst.
6675         (find-feature-regexp, find-alias-regexp): New defcustoms.
6676         (elisp--xref-make-xref): New function.
6677         (elisp--xref-find-definitions): Rewrite using the above, handle many
6678         more cases.  Always output all available definitions.
6679         (xref-location-marker): No need for special cases.
6680         * test/automated/elisp-mode-tests.el: Add more tests of
6681         elisp--xref-find-definitions, improve current tests.
6683 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
6685         Fix recording of events pushed onto unread-command-events
6686         * src/keyboard.c (read_char): Make sure events read from
6687         unread-command-events and unread-post-input-method-events are
6688         always recorded by record_char.  Reported by David Kastrup
6689         <dak@gnu.org>, see
6690         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
6692 2015-08-10  Samer Masterson  <samer@samertm.com>
6694         Set file buffer as current for "--file"
6695         * lisp/startup.el (command-line-1): Set file buffer as current before
6696         it is displayed so it can be used with options like "--eval".
6697         (Bug#21095)
6699 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
6701         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
6702         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
6703         after setting LC_ALL to the desired locale, to avoid affecting how
6704         numbers are read and printed.  (Bug#21223)
6706 2015-08-10  Alan Mackenzie  <acm@muc.de>
6708         Fix "Invalid search bound (wrong side of point)" in fontification
6709         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
6710         an initialization expression, check point is not beyond the
6711         fontification limit.
6713 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6715         Fix DPI calculation when Xft/DPI is default
6716         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
6717         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
6718         Remove unnecessary cast while we're in the neighborhood.
6720 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
6722         Add project-vc-search-path and project-vc-ignores
6723         * lisp/progmodes/project.el (project-vc): New group.
6724         (project-vc-search-path, project-vc-ignores): New variables.
6725         (project--value-in-dir): Utility function.
6726         (project-search-path, project-ignores): Use them.
6727         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
6728         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
6730 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6732         Fix some minor quoting issues with grave accent
6733         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
6734         Remove redundant quotes.
6735         * src/doc.c (uLSQM, uRSQM): New macros.
6736         * src/doc.c (Fsubstitute_command_keys):
6737         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
6738         preference for quotes rather than hardcoding the ‘grave’ style.
6739         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
6740         (re_match_2_internal) [DEBUG]: In debugging output, quote C
6741         strings with "...", not `...'.
6743         ChangeLog.2 ignores remote-tracking merges
6744         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
6745         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
6746         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
6748 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
6750         Use kpsewhich in ffap-latex-mode, if available
6751         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
6752         (ffap-latex-mode): Use kpsewhich if available.
6754         ffap: disallow braces in filenames for tex modes
6755         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
6756         braces in tex-related modes.
6758         Remove useless backslashes from ffap-string-at-point-mode-alist
6759         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
6760         misleading backslashes from default value.
6762         Augment docstring of ffap-string-at-point-mode-alist
6763         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
6764         and END are handled.
6766 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6768         Remove no-op calls to substitute-command-keys
6769         * lisp/org/org-src.el (org-edit-src-code)
6770         (org-edit-fixed-width-region):
6771         * lisp/simple.el (completion-setup-function):
6772         Remove calls to substitute-command-keys that always just return
6773         their argument.
6775 2015-08-09  Daiki Ueno  <ueno@gnu.org>
6777         Utilize `quit-window' in epa.el
6778         * epa.el (epa-exit-buffer-function): Set to `quit-window'.
6779         (Bug#21210)
6781 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
6783         Fix link to source code in help window
6784         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
6785         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
6786         'No longer include timestamp in header of .elc files'.  Add code
6787         that will return .el source file in load-path.
6789 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
6791         * isearch.el (isearch-search-fun-default): (Bug#21164)
6792         Respect `isearch-lax-whitespace' when searching through
6793         `isearch-word'.
6795 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
6797         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
6799         * org.el: Fix up some lexical scoping warnings, and use dolist
6800         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
6801         (org-set-regexps-and-options, org-assign-fast-keys)
6802         (org-contextualize-keys, org-contextualize-validate-key)
6803         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
6804         (org-find-olp, org-find-exact-heading-in-directory)
6805         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
6806         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
6807         (org-replace-escapes): Use dolist.
6808         (org-mode): Optimize away XEmacs-only code.
6809         (org-refile-get-targets): Remove unused var `f'.
6810         (org-fast-todo-selection): Remove unused var `e'.
6811         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
6812         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
6813         (org-format-latex): Use dolist.  Remove unused var `e'.
6814         (org-toggle-heading): Access vars lexically rather than dynamically.
6815         (org-backward-sentence, org-forward-sentence, org-meta-return)
6816         (org-kill-line): Mark arg as unused.
6817         (org-submit-bug-report): Silence compiler warning.
6818         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
6819         (org-get-cursor-date): Remove unused var `tm'.
6820         (org-comment-or-uncomment-region): Use standard name `_'.
6821         (reftex-docstruct-symbol, reftex-cite-format): Declare to
6822         silence byte-compiler.
6823         (org-reftex-citation): Add `org--' prefix to dynamically scoped
6824         `rds' var.
6826 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
6828         Electric quote if coding is undecided or no conv
6829         * lisp/electric.el (electric--insertable-p): Also say that a
6830         string is insertable if the buffer file coding system is undecided
6831         or uses no conversion, as curved quotes will work in either case.
6833         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
6835 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
6837         Fix overlay string display regressions introduced in Emacs 24.5
6838         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
6839         buffer position, if we move the iterator to a new position as
6840         result of jumping over text covered by a "replacing" display
6841         property.
6842         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
6844         Support recovery from C stack overflow on MS-Windows
6845         * src/w32fns.c (w32_reset_stack_overflow_guard)
6846         (stack_overflow_handler): New functions for handling C stack
6847         overflow exceptions.
6848         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
6849         specially, and zero out except_addr if we do.
6850         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
6851         mode.
6852         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
6853         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
6854         the MinGW build, but the code guarded by that is for Posix hosts.
6855         * src/keyboard.c (command_loop) [WINDOWSNT]: Call
6856         w32_reset_stack_overflow_guard.
6857         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
6858         (sigsetjmp): New macro.
6859         (w32_reset_stack_overflow_guard): Declare the prototype.
6860         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
6862 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
6864         Improve error signalling for seq-subseq
6865         * lisp/seq.el (seq-subseq): The existing behaviour is to error
6866         when indexes are too large, but to silently ignore numbers which
6867         are too negative for lists.  String and vector handling errors in
6868         both cases.  This has been regularized.  Error signaling behavior
6869         has been explicitly added to the doc string.
6871         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
6872         therefore also impacted by this change.  Update the doc string
6873         to reflect this.
6875         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
6876         added for these exceptional cases, as well as one non exceptional
6877         base case.
6879 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
6881         Improve error checking in tramp-adb.el
6882         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
6883         Improve error checking.  "ls -l" on Android in Enforcing mode can
6884         print "lstat './FILENAME failed: Permission denied".
6886 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
6888         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
6889         non-struct vectors.
6891 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
6893         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
6894         * lisp/window.el: Fix typo that broke build.
6895         (display-buffer--action-function-custom-type): Add
6896         `display-buffer-use-some-frame'.
6897         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
6899         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
6900         * lisp/window.el (display-buffer-use-some-frame): Add support for
6901         'inhibit-same-window in alist.
6902         * doc/windows.texi (display-buffer-use-some-frame): Doc support for
6903         'inhibit-same-window in alist.
6905 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
6907         Avoid infinite loop in display of invisible text in strings
6908         * src/xdisp.c (handle_invisible_prop): If the next change of
6909         invisibility spec does not mean the beginning of a visible text,
6910         update the string position from which to start the search for the
6911         next invisibility change.  This avoids an infinite loop when we
6912         have more than one invisibility spec that are made inactive by
6913         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
6914         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
6915         for the situation that caused bug #21200.
6917 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
6919         * lisp/emacs-lisp/package.el: Simplify describe-package-1
6920         (package-help-section-name-face): New face.
6921         (package--print-help-section): New function.
6922         (describe-package-1): Refactor section printing.
6923         (package-make-button): Use face instead of font-lock-face, which
6924         doesn't work on buttons.
6926         * lisp/emacs-lisp/package.el: Define custom faces
6927         (package-name-face, package-description-face)
6928         (package-status-built-in-face, package-status-external-face)
6929         (package-status-available-face, package-status-new-face)
6930         (package-status-held-face, package-status-disabled-face)
6931         (package-status-installed-face, package-status-dependency-face)
6932         (package-status-unsigned-face, package-status-incompat-face)
6933         (package-status-avail-obso-face): New faces.
6934         (package-menu--print-info-simple): Use them.
6936 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6938         Fix some confusion with ‘format’
6939         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
6940         (allout-graphics-modification-handler):
6941         Protect arbitrary string in a format context with "%s" format.
6942         * lisp/avoid.el:
6943         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
6944         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
6945         * lisp/erc/erc-button.el (erc-button-beats-to-time):
6946         * lisp/gnus/message.el (message-send-form-letter):
6947         * lisp/org/ob-core.el (org-babel-check-evaluate)
6948         (org-babel-confirm-evaluate):
6949         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
6950         * lisp/org/ox-latex.el (org-latex-compile):
6951         * lisp/org/ox-man.el (org-man-compile):
6952         * lisp/org/ox-odt.el (org-odt-template):
6953         * lisp/org/ox-texinfo.el (org-texinfo-compile):
6954         * lisp/progmodes/prolog.el (prolog-help-info)
6955         (prolog-view-predspec):
6956         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
6957         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
6958         * lisp/textmodes/rst.el (rst-replace-lines):
6959         Change (message (format ...)) to (message ...), and likewise
6960         for ‘error’.  This lessens the probability of confusion when the
6961         output of ‘format’ contains ‘%’.
6963 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
6965         * lisp/replace.el (replace-character-fold): Default to nil.
6967         * lisp/character-fold.el: Fix lax whitespace.
6968         (character-fold-table): Don't make space match other whitespace chars.
6969         (character-fold-to-regexp): Simplify lax behavior.
6971 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
6973         Preserve window point in xref-find-definitions-other-window
6974         Fix the problem reported by Ingo Logmar in
6975         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
6976         * lisp/progmodes/xref.el (xref--goto-char): Extract from
6977         xref--goto-location.
6978         (xref--pop-to-location): Use it. Replace xref--goto-location with
6979         a direct xref-location-marker call.
6980         (xref--show-location): Likewise.
6981         (xref--display-position): Use xref--goto-char.
6983         * lisp/progmodes/project.el: Add a paragraph to the front matter.
6985 2015-08-04  David Kastrup  <dak@gnu.org>
6987         Do not overwrite preexisting contents of unread-command-events
6988         * lisp/vc/emerge.el (emerge-show-file-name):
6989         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
6990         (vhdl-comment-insert, vhdl-hooked-abbrev):
6991         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
6992         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
6993         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
6994         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
6995         * lisp/obsolete/vip.el (vip-escape-to-emacs)
6996         (vip-prefix-arg-value, vip-prefix-arg-com):
6997         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
6998         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
6999         (quail-tibkey-update-translation):
7000         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
7001         * lisp/leim/quail/lao.el (quail-lao-update-translation):
7002         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
7003         (quail-japanese-self-insert-and-switch-to-alpha):
7004         * lisp/leim/quail/hangul.el (hangul2-input-method)
7005         (hangul3-input-method, hangul390-input-method):
7006         * lisp/language/hanja-util.el (hangul-to-hanja-char):
7007         * lisp/international/robin.el (robin-input-method):
7008         * lisp/international/quail.el (quail-start-translation)
7009         (quail-start-conversion):
7010         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
7011         (gnus-article-describe-key-briefly):
7012         * lisp/eshell/em-hist.el (eshell-list-history):
7013         * lisp/term.el (term-dynamic-list-input-ring)
7014         (term-dynamic-list-completions):
7015         * lisp/subr.el (momentary-string-display):
7016         * lisp/simple.el (read-quoted-char):
7017         * lisp/pcomplete.el (pcomplete-show-completions):
7018         * lisp/kmacro.el (kmacro-repeat-on-last-key):
7019         * lisp/info.el (Info-summary):
7020         * lisp/ehelp.el (electric-help-command-loop):
7021         * lisp/ebuff-menu.el (electric-buffer-list)
7022         (Electric-buffer-menu-exit):
7023         * lisp/double.el (double-translate-key):
7024         * lisp/comint.el (comint-dynamic-list-input-ring)
7025         (comint-dynamic-list-completions): Do not overwrite preexisting
7026         contents of `unread-command-events' when putting new events into
7027         it.
7029 2015-08-04  Daniel Colascione  <dancol@dancol.org>
7031         Improve ansi-color filtering of unrecognized escape sequences
7032         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
7033         escape sequences.
7034         (ansi-color-filter-apply, ansi-color-apply): Filter out
7035         unrecognized escape sequences.
7037 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
7039         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
7040         definitions to `easy-menu-define', improve a couple to account for
7041         async, and add a couple of new commands.
7043 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
7045         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
7047 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
7049         Add new 'calendar-weekend-days' option
7050         Make the days receiving the 'calendar-weekend-header' face freely
7051         customizable, as they differ by region/culture.
7052         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
7053         new variable.
7054         * lisp/calendar/calendar.el (calendar-generate-month): New variable
7055         calendar-weekend-days to customize day header fontification.
7057 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
7059         Redo text-quoting-style variable
7060         Rename help-quote-translation to text-quoting-style,
7061         and use symbols rather than characters as values.
7062         This follows suggestions along these lines by Alan Mackenzie in:
7063         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
7064         and by Drew Adams in:
7065         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
7066         * doc/lispref/help.texi (Keys in Documentation)
7067         * etc/NEWS:
7068         * lisp/cus-start.el (standard):
7069         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
7070         Document and/or implement the new behavior instead of the old.
7071         (syms_of_doc): New symbols 'grave' and 'straight'.
7073 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
7075         nnimap.el: Use IMAP MOVE extension if available
7076         * lisp/gnus/nnimap.el (nnimap-request-move-article)
7077         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
7078         Use MOVE extension if available.
7080         nnimap.el: Explicitly ask for server capabilities
7081         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
7082         capabilities will be returned in the login-result.
7084 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
7086         Treat help strings like other doc strings
7087         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
7088         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
7089         substitute-command-keys.
7090         * src/keyboard.c (show_help_echo, parse_menu_item): Call
7091         substitute-command-keys on the help string before displaying it.
7093         Also mention "curly quotes"
7094         See Drew Adams's email in:
7095         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
7096         * doc/lispref/help.texi (Keys in Documentation):
7097         Add index entry "curly quotes".
7098         * etc/NEWS: Use the phrase "curly quotes" too.
7100         ede-proj-target-makefile docstring tweaks
7101         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
7102         Consistently use "all:" to describe the all: target,
7103         replacing three different and confusingly-quoted usages.
7105 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
7107         Don't abort emacsclientw when -a was specified
7108         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
7109         out if we are in emacsclientw and -a was specified.
7111 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
7113         Fix handling of 1st keystroke on MS-Windows
7114         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
7115         This is needed to correctly handle the session's first keystroke,
7116         if it has any modifiers.  (Bug#19994)
7118 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
7120         Substitute some customization etc. doc strings
7121         These changes apply substitute-command-keys to some
7122         doc strings that were going through untranslated
7123         when creating customization or other widgets.
7124         * lisp/cus-edit.el (custom-group-value-create):
7125         * lisp/wid-edit.el (widget-default-create):
7126         (widget-push-button-value-create):
7127         Treat the widget tag as a doc string.
7128         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
7129         Treat the :documentation value as a doc string.
7130         * lisp/wid-edit.el (widget-choose):
7131         Treat the choice names as doc strings.
7132         (widget-default-create): Treat the :doc value as a doc string.
7133         (widget-toggle-value-create): Treat the :on and :off values
7134         as doc strings.
7135         (widget-documentation-string-value-create):
7136         Substitute the doc string.
7138 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
7140         Add a second argument to project-ignores
7141         * lisp/progmodes/project.el (project-ignores): Add a second
7142         argument DIR.
7143         * lisp/progmodes/project.el (project-ignores): Only include the VC
7144         ignores if DIR is the VC root.
7145         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
7147 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
7149         Prevent incorrect display when 'line-spacing' variable is set
7150         * src/xdisp.c (try_window_id): Give up this optimization if the
7151         buffer has its 'line-spacing' variable set non-nil.
7153 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
7155         Don't pass NOVISIT to find-file
7156         * lisp/progmodes/etags.el (next-file):
7157         Don't pass NOVISIT to find-file (bug#21175).
7159         Ignore buffer restriction for tags-loop-eval
7160         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
7161         restriction (bug#21167).
7163 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
7165         Fix a thinko in 'ffap-gopher-at-point'
7166         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
7168         Honor 'line-spacing' for empty lines
7169         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
7170         property and 'line-spacing' frame parameter or variable or
7171         property for empty lines, by doing the same processing as in
7172         x_produce_glyph for newline characters.  (Bug#21165)
7174 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
7176         Simplify by assuming C99 integer division
7177         * src/floatfns.c (ceiling2, floor2, truncate2):
7178         Assume C99 (i.e., Fortran) semantics for integer division.
7179         This simplifies the code.
7181 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
7183         Don't overflow if computing approximate percentage
7184         * lisp/align.el (align-region):
7185         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
7186         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
7187         * lisp/cus-edit.el (custom-buffer-create-internal):
7188         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
7189         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
7190         (checkdoc-next-message-error):
7191         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
7192         * lisp/epa.el (epa-progress-callback-function):
7193         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
7194         * lisp/ffap.el (ffap-menu-rescan):
7195         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
7196         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
7197         * lisp/gnus/nneething.el (nneething-retrieve-headers):
7198         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
7199         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
7200         * lisp/gnus/nnml.el (nnml-retrieve-headers):
7201         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
7202         * lisp/gnus/nntp.el (nntp-retrieve-headers)
7203         (nntp-retrieve-articles):
7204         * lisp/imenu.el (imenu--relative-position):
7205         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
7206         (skkdic-convert-okuri-nasi):
7207         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
7208         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
7209         * lisp/org/org-list.el (org-update-checkbox-count):
7210         * lisp/org/org.el (org-table-map-tables)
7211         (org-update-parent-todo-statistics):
7212         * lisp/play/decipher.el (decipher-insert-frequency-counts)
7213         (decipher-analyze-buffer):
7214         * lisp/profiler.el (profiler-format-percent):
7215         * lisp/progmodes/cc-cmds.el (c-progress-update):
7216         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
7217         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
7218         (idlwave-list-load-path-shadows):
7219         * lisp/progmodes/opascal.el (opascal-step-progress):
7220         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
7221         (vhdl-scan-directory-contents):
7222         * lisp/textmodes/bibtex.el (bibtex-progress-message):
7223         * lisp/textmodes/flyspell.el (flyspell-small-region)
7224         (flyspell-external-point-words):
7225         * lisp/textmodes/table.el (table-recognize):
7226         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
7227         progress-report percentages and the like.  This avoids problems
7228         if (* 100 NUMERATOR) would overflow.
7229         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
7230         * lisp/gnus/registry.el (registry-reindex):
7231         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
7232         * lisp/descr-text.el (describe-char):
7233         * lisp/org/org-colview.el (org-nofm-to-completion):
7234         * lisp/ps-print.el (ps-plot):
7235         * lisp/simple.el (what-cursor-position):
7236         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
7237         more-complicated and less-accurate approximation.
7239         Fix some int overflows in profiler.c
7240         * src/profiler.c (make_log): Make args EMACS_INT, not int,
7241         to avoid unwanted behavior on 'int' overflow.
7242         (make_log, evict_lower_half, record_backtrace):
7243         Use ptrdiff_t, not int, for object indexes.
7245         Port to pedantic memcpy
7246         * src/keyboard.c (menu_bar_items, tool_bar_items):
7247         * src/xrdb.c (magic_db):
7248         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
7250         Merge from gnulib
7251         This incorporates:
7252         2015-07-29 time_rz: port to pedantic memcpy
7253         * lib/time_rz.c: Copy from gnulib.
7255 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
7257         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print): Fix bug
7258         When updating the very last entry, tabulated-list-print would
7259         erase it and then try to look at the next one (which obviously
7260         isn't there).
7262 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
7264         Allow to use the old key processing code on MS-Windows
7265         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
7266         New variable.
7267         (w32_wnd_proc): Use it to invoke the old code that processed
7268         character keys, as fallback, when this variable is non-nil.  Fix
7269         typos in comments.  (Bug#19994)
7271 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
7273         Improve handling of Unicode keyboard input on MS-Windows
7274         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
7275         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
7276         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
7277         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
7278         successful, don't call TranslateMessage.  (Bug#19994)
7280 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
7282         Fix default-directory in changeset diffs after vc-print-log
7283         * lisp/vc/log-view.el (log-view-diff-common): Move the
7284         revision-granularity check back into log-view-diff-changeset.
7285         (log-view-diff-changeset): Bind default-directory to the current
7286         VC root.
7288         Rename project-directories to project-roots
7289         * lisp/progmodes/project.el (project-search-path-function)
7290         (project-search-path): Update the docstring.
7291         (project-directories): Rename to `project-roots', update all
7292         callers and implementations accordingly.
7293         (project-root): Remove.
7294         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
7295         as the default file mask.
7297 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
7299         Support long URLs in w32-shell-execute
7300         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
7301         and filename_to_ansi to convert the DOCUMENT argument, as it could
7302         be a URL that is not limited to MAX_PATH characters.  Instead, use
7303         MultiByteToWideChar directly, and allocate heap storage as
7304         required to accommodate the converted string.  Likewise with
7305         non-Unicode operation.  Ensure OPERATION is null-terminated, even
7306         if it is longer than 32K bytes.  (Bug#21158)
7308 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
7310         vc-mtn-find-revision handle null rev.
7311         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): handle null rev
7313 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
7315         Add docs for display-buffer action display-buffer-use-some-frame
7316         * lisp/window.el (display-buffer-use-some-frame): improve doc string
7317         * doc/lispref/windows.texi (Display Action Functions): add
7318           display-buffer-use-some-frame
7319         * etc/NEWS: mention display-buffer-use-some-frame
7321         Add display-buffer action display-buffer-use-some-frame
7322         * lisp/window.el (display-buffer-use-some-frame): new
7324         Handle vc-mtn error more gently
7325         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): return "" when branch is nil
7327 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
7329         Fix Tramp problems with multihops, and nc.
7330         * lisp/net/tramp-cache.el (tramp-get-file-property)
7331         (tramp-set-file-property, tramp-flush-file-property)
7332         (tramp-get-connection-property, tramp-set-connection-property)
7333         (tramp-flush-connection-property): Remove hop from vector.
7334         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
7335         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
7336         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
7337         netstat to 60".
7338         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
7339         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
7340         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
7341         Keep hop in result.
7342         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
7343         Add hop tests.
7345 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
7347         Resurrect highlighting of repeated words by Flyspell Mode
7348         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
7349         characters between point and the doublon candidate, so that
7350         flyspell-word-search-backward finds it.  (Bug#21157)
7352         Fix redisplay of large images on expose events
7353         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
7354         between signed negative values and unsigned values.  This
7355         prevented redisplay on expose events when the window showed a very
7356         large image.
7358 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
7360         Remove unnecessary stack overflow dependency
7361         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
7362         Don't worry about $ac_cv_header_sys_resource_h and
7363         $ac_cv_func_getrlimit, as they're no longer needed for this.
7364         Problem reported by Eli Zaretskii in:
7365         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
7367 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
7369         Pacify compilation -Wincompatible-pointer-types warnings
7370         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
7371         warning.
7372         (CompareStringW_Proc): New typedef.
7373         (w32_compare_strings): Use it, to pacify compiler warnings under
7374         "-Wincompatible-pointer-types".
7375         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
7376         (GetDiskFreeSpaceExA_Proc): New typedefs.
7377         (Ffile_system_info): Use them, to pacify compiler warnings under
7378         "-Wincompatible-pointer-types".
7380 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
7382         Fix subscript error in calculate_direct_scrolling
7383         Use slightly-longer cost vectors.  Without this change,
7384         calculate_direct_scrolling can have a subscript violation when
7385         FRAME_LINES (frame) <= delta.
7386         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
7387         (line_ins_del, do_line_insertion_deletion_costs):
7388         Allocate and use slightly-larger cost vectors, ones based on
7389         FRAME_TOTAL_LINES instead of FRAME_LINES.
7391         Fix uninitalized value in encode_coding_object
7392         * src/coding.c (encode_coding_object): Also initialize
7393         coding->src_pos and coding->src_pos_byte when NILP (src_object).
7394         This avoids later use of uninitialized storage.
7396 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
7398         * doc/lispref/variables.texi (Variable Aliases): Typo fix.  (Bug#21141)
7400 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
7402         Merge from gnulib
7403         This incorporates:
7404         2015-07-27 time_rz: port better to MinGW
7405         2015-07-27 time: port __need_time_t to MinGW
7406         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
7407         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
7408         * lib/time-internal.h: New file, from gnulib.
7410 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
7412         Handle NULL pointers in w32heap.c allocation routines
7413         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
7414         freeable".
7415         (realloc_after_dump, realloc_before_dump, free_before_dump):
7416         Handle NULL pointers gracefully, as Emacs now seems to expect
7417         that.
7419         Fix Cairo build without PNG
7420         * src/image.c: Define PNG function when USE_CAIRO is defined, even
7421         if HAVE_PNG is not.  (Bug#21133)
7423         MS-Windows follow-up for recent TZ-related changes
7424         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
7425         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
7426         picking up 'struct timespec' from pthread.h, if it is installed on
7427         the user's system.  We want either the definitions from MinGW
7428         system headers, if available, or the Gnulib replacements if not.
7429         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
7430         lib/time.h.
7431         * lib/time.in.h: Don't let __need_* symbols affect what happens on
7432         MinGW.  These symbols are defined by MinGW system headers, but we
7433         don't want that to affect whether Gnulib portions of the header
7434         are or aren't used.
7436 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
7438         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
7440         New optional ZONE arg for format-time-string etc.
7441         This simplifies time conversions in other time zones.
7442         It also prevents display-time-world tampering with TZ (Bug#21020).
7443         * admin/admin.el (add-release-logs):
7444         Use improved add-log-time-format API.
7445         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
7446         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
7447         * configure.ac (tzalloc): Remove test for this, since
7448         Emacs no longer uses HAVE_TZALLOC directly.
7449         * doc/lispref/os.texi (Time of Day, Time Conversion)
7450         (Time Parsing):
7451         * etc/NEWS: Document the new behavior.
7452         Merge from gnulib, incorporating:
7453         2015-07-25 strftime: fix newly-introduced bug on Solaris
7454         2015-07-23 fprintftime, strftime: use timezone_t args
7455         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
7456         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
7457         * m4/time_h.m4:
7458         Update from gnulib.
7459         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
7460         New files from gnulib.
7461         * lisp/time-stamp.el (time-stamp-string):
7462         * lisp/time.el (display-time-world-list)
7463         (display-time-world-display):
7464         Use new API, with time zone arg.
7465         * lisp/time.el (display-time-world-display):
7466         Fix race when current-time advances while we're running.
7467         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
7468         (add-log-iso8601-time-string): Accept optional time zone arg.
7469         * lisp/vc/add-log.el (add-change-log-entry):
7470         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
7471         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
7472         Add rules for the time module, since they're now needed
7473         for tzalloc etc.
7474         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
7475         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
7476         * src/editfns.c: Include errno.h.
7477         (set_time_zone_rule): Omit unnecessary forward decl.
7478         (initial_tz): Remove, replacing with ...
7479         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
7480         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
7481         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
7482         (tzlookup): New static functions.
7483         (init_editfns): New arg DUMPING.  All uses changed.
7484         (init_editfns): Omit most initialization if dumping, not if
7485         !initialized.  Initialize wall_clock_tz and local_tz.
7486         (emacs_nmemftime, format_time_string): Time zone argument can now
7487         be any time zone, not just a boolean for UTC or local time.  All
7488         callers changed.
7489         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
7490         (Fcurrent_time_zone): New optional arg ZONE.
7491         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
7492         the same form as with the other new additions.
7493         (decode_time_zone): Remove; no longer needed.
7494         (tzvalbuf): Now file-scope.
7495         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
7496         (syms_of_editfns): Define Qwall.
7497         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
7498         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
7499         [!HAVE_TZALLOC]:
7500         Remove; now supplied by gnulib.
7501         * src/emacs.c (main):
7502         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
7504 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
7506         Fix infinite loop in delete-consecutive-dups
7507         * lisp/subr.el (delete-consecutive-dups): Work even if the last
7508         element is nil (Bug#20588).  Avoid rescan of a circular list in
7509         deletion of last element.
7511 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
7513         Have `x-frame-geometry' return nil for terminal and initial frames (Bug#21132)
7514         * src/nsfns.m (Fx_frame_geometry):
7515         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
7516         terminal frames.
7517         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
7518         (Fx_frame_geometry): Return nil for terminal frames
7520 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
7522         * etc/tutorials/TUTORIAL.ja: Improve translation.
7524 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
7526         Avoid crashes when w32 GUI functions are called in -batch
7527         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
7528         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
7529         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
7531         Fix flyspell-check-previous-highlighted-word
7532         * lisp/textmodes/flyspell.el
7533         (flyspell-check-previous-highlighted-word): Really accept a
7534         numeric argument, as the doc string describes.  Fix an off-by-one
7535         error in looking up overlays, so invocation with point immediately
7536         after a word would check that word.  Clarify the doc string as
7537         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
7539 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
7541         Minor cleanup in tramp-tests.el
7542         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
7543         Implement using the documented interface
7544         `tramp-connection-properties', rather than with internal functions.
7546 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
7548         Pass lambdas to `skeleton-read'
7549         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
7550         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
7551         lambdas to `skeleton-read' (bug#20386).
7553 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
7555         * INSTALL (DETAILED BUILDING AND INSTALLATION): Mention --without-imagemagick.
7557         Don't require GUI frames and mouse for Flyspell menus
7558         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
7559         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
7560         support, since pop-up menus work with text terminals and can be
7561         controlled via the keyboard.
7563         Improve documentation of Flyspell commands
7564         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
7565         can be invoked via the keyboard.  Mention those commands by name
7566         and add them to the fn index.  (Bug#21125)
7568 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
7570         Fix some Tramp problems with HP-UX
7571         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
7572         Add "tab0" to stty call.
7573         * test/automated/tramp-tests.el (tramp-persistency-file-name):
7574         Set to nil.
7575         (tramp--test-hpux-p): New defun.
7576         (tramp--test-utf8): Use it.
7578 2015-07-22  Glenn Morris  <rgm@gnu.org>
7580         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
7582 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
7584         Fix point positioning in ffap-next-guess
7585         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
7586         as our callers expect.  This was clobbered as part of fixing
7587         bug#5673.  (Bug#21107)
7588         (ffap-gopher-at-point): Set ffap-string-at-point-region.
7590 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
7592         Fix customization type of `even-window-sizes'.
7593         * lisp/window.el (even-window-sizes): Fix customization type.
7595         Optionally even widths of `display-buffer' windows.  (Bug#21100)
7596         * lisp/window.el (quit-restore-window): Restore width if
7597         requested.
7598         (display-buffer-record-window): Record width when window is
7599         reused and horizontally combined.
7600         (even-window-sizes): New option to allow evening window widths.
7601         (even-window-heights): Defalias to `even-window-sizes'.
7602         (window--even-window-heights): Rename to
7603         `window--even-window-sizes'.  Handle side-by-side windows.
7604         (display-buffer-use-some-window): Call `window--even-window-sizes'
7605         instead of `window--even-window-heights'.
7606         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
7607         * doc/lispref/windows.texi (Choosing Window Options): Describe
7608         `even-window-sizes'.
7609         (Coordinates and Windows): Fix typo.
7611 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
7613         add file name to autoload error messages.
7614         * lisp/emacs-lisp/autoload.el (autoload-save-buffers): add condition-case
7615           to add file name to error message.
7617 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
7619         Use 0.0.0.1 as test host in Tramp
7620         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
7621         Use 0.0.0.1 as test host.
7623 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
7625         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
7626         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
7627         Fix inf-loop (bug#21083).
7629 2015-07-21  Glenn Morris  <rgm@gnu.org>
7631         * test/automated/package-test.el (package-test-signed):
7632         Update for recent changes.
7634         * test/automated/elisp-mode-tests.el
7635         (elisp-xref-finds-both-function-and-variable)
7636         (elisp-xref-finds-only-function-for-minor-mode):
7637         Update for recent xref name changes.
7639 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
7641         Make eldoc timer non-repeatable
7642         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
7643         non-repeatable.  Since it's on post-command hook, that just wasted
7644         CPU cycles.
7646 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
7648         Mention `tramp-connection-properties' in NEWS
7650         Sync with Tramp repository
7651         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
7652         required prior changing its configuration.
7653         (Connection caching, Predefined connection information)
7654         (Remote shell setup): Fix typos.
7655         (Predefined connection information): Describe, how to overwrite
7656         parameters of `tramp-methods'.
7657         (Remote programs, Remote processes, Traces and Profiles):
7658         Simplify example.
7659         (Remote programs): Remove superfluous comment.
7660         * doc/misc/trampver.texi: Update release number.
7661         * lisp/net/tramp-cache.el (tramp-connection-properties): Adapt docstring.
7662         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
7663         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
7664         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
7665         "gvfs-mkdir -p ..." does not work robust.
7666         (tramp-gvfs-maybe-open-connection): Adapt `tramp-get-method-parameter' call.
7667         * lisp/net/tramp-sh.el (tramp-methods):
7668         Add `tramp-remote-shell-login' parameter where it fits.
7669         (tramp-get-remote-path): Use it.
7670         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
7671         (all): Adapt `tramp-get-method-parameter' calls.
7672         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
7673         (tramp-get-method-parameter): Replace argument METHOD by VEC.
7674         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
7675         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
7676         (all): Adapt `tramp-get-method-parameter' calls.
7677         * lisp/net/trampver.el Update release number.
7678         * test/automated/tramp-tests.el (tramp--instrument-test-case):
7679         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
7680         (tramp-test13-make-directory, tramp--test-adb-p)
7681         (tramp--test-smb-or-windows-nt-p): Simplify.
7682         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
7683         (tramp--test-special-characters): Fix docstring.  Add gvfs and ftp tests.
7684         (tramp--test-utf8): Fix docstring.
7686 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
7688         Add new xref-query-replace command
7689         * lisp/progmodes/xref.el (xref--match-buffer-bounds): New
7690         function, extracted from xref-pulse-momentarily.
7691         (xref-query-replace): New command.
7692         (xref--query-replace-1): New helper function.
7693         (xref--xref-buffer-mode-map): Add `r' binding.
7695 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
7697         Simplify icalendar decoding of Z dates
7698         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
7699         Simplify calculation of time strings with trailing "Z".
7701 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
7703         Do not corrupt grep-find-ignored-files
7704         * lisp/progmodes/project.el (project-ignores): Change the order of
7705         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
7707         Add xref-match-item, and use it
7708         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
7709         (xref-file-location): Add reader for the column slot.
7710         (xref-match-item): New class.
7711         (xref-match-bounds): A method implementation for it.
7712         (xref-make-match): New constructor function.
7713         (xref--current-item): New private variable.
7714         (xref-pulse-momentarily): Use it.
7715         (xref--pop-to-location): Change the first argument to an xref
7716         item, instead of location, bind xref--current-item.
7717         Update all callers.
7718         (xref-next-line, xref-prev-line, xref--next-error-function)
7719         (xref--mouse-2): Look for the property `xref-item',
7720         instead of `xref-location'.
7721         (xref--item-at-point): Likewise.  This function replaces
7722         `xref-location-at-point'.  Update all callers.
7723         (xref--insert-xrefs): Add the `xref-item' text property, instead
7724         of `xref-location'.
7725         (xref--collect-match): Use xref-make-match.
7727         Rename xref--xref to xref-item
7728         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
7729         Update all references.
7731         Rename xref description slot to summary
7732         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
7733         slot to `summary'.
7735         vc-hg: Perform the print-log call asynchronously
7736         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
7737         asynchronously (bug#21067).
7739         Add xref-after-jump-hook and xref-after-return-hook
7740         * lisp/progmodes/xref.el (xref-after-jump-hook)
7741         (xref-after-return-hook): New hooks.
7742         (xref-pulse-on-jump): Remove, in favor of the above.
7743         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
7744         (xref--pop-to-location, xref--display-position)
7745         (xref-pop-marker-stack): Use the new hooks, as requested in
7746         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
7748 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
7750         Correct js-mode's lighter
7751         * lisp/progmodes/js.el (js-mode): Correct the lighter.
7753 2015-07-19  Leo Liu  <sdl.web@gmail.com>
7755         Fix a bug in cfengine3-mode
7756         * progmodes/cfengine.el (cfengine3-mode): Handle nil
7757           eldoc-documentation-function.
7759 2015-07-18  Julien Danjou  <julien@danjou.info>
7761         sieve-mode: support "body" test command
7762         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
7763         Add missing "body" test command.
7765 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
7767         Fix info-apropos when the default encoding is Latin-N
7768         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
7769         'undecided', so that it is set to the encoding of the Info file we
7770         are about to insert.  Otherwise, 'info-apropos' will fail to find
7771         some index nodes in some UTF-8 encoded files, if the buffer's
7772         previous encoding is Latin-N or some such.
7774 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
7776         * epg.el (epg--start): Check that gpgconf can be found before calling it.
7778         Expose more file types to OS X that Emacs understands.
7779         * Cocoa/Emacs.base/Contents/Info.plist: Add editor role for sty, dtx,
7780         json, and org files.  Export UTIs for el, elc, and org files.
7782 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
7784         Fix visual-order cursor movement when lines are truncated
7785         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
7786         simulate display in a window of infinite width, to allow move_it_*
7787         functions reach positions outside of normal window dimensions.
7788         Remove code that tried to handle a subset of these situations by
7789         manual iteration of buffer text.  (Bug#17777)
7791         Fix following Info cross-references to anchors
7792         * lisp/info.el (Info-read-subfile): Add to the returned value the
7793         length of subfile preamble, after converting it to file's byte
7794         offset, as expected by the caller.  Use bufferpos-to-filepos.
7795         (Info-find-node-2): If searching for a node with a
7796         1000-character slop fails, try again with a 10000-character slop,
7797         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
7798         * lisp/international/mule-util.el (bufferpos-to-filepos): New
7799         function.
7800         * etc/NEWS: Mention bufferpos-to-filepos.
7802         Fix scrolling backwards on TTY frames under scroll-conservatively
7803         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
7804         in moving backwards on TTY frames.  (Bug#21080)
7806 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
7808         Consider a jsdoc tag to be a beginning of a paragraph as well
7809         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
7810         consider a jsdoc tag to be a beginning of a paragraph as well.
7812 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
7814         * lisp/emacs-lisp/package.el: Fix warnings
7816         * lisp/emacs-lisp/package.el (package-buffer-info):
7817         Add author and maintainers to `package-buffer-info'.
7819         * lisp/emacs-lisp/package.el: Many small changes
7820         Replace all instances of 'face with 'font-lock-face.
7821         (describe-package-1): Improve some strings and move the summary up the
7822         list.
7823         (package-install-file): Update docstring.
7824         (package-menu-hide-package): Bind to `H'.
7826         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
7827         Fix error handling.
7829 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
7831         Fix hang with large yanks This should fix the bug fixed by Mike
7832         Crowe's patch in:
7833         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
7834         A problem in this area has been reported by several users; see
7835         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
7836         This fix differs from Mike Crowe's patch in that it should avoid a
7837         race condition that could lose SIGIO signals.  ignore_sigio dates
7838         back to the 1980s when some platforms couldn't block signals, and
7839         could only ignore them, which led to races when signals arrived
7840         while being ignored.  We shouldn't have to worry about those old
7841         platforms now.
7842         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
7843         * src/emacs.c (shut_down_emacs):
7844         Don't call ignore_sigio; unrequest_sigio should suffice.
7845         * src/keyboard.c (kbd_buffer_store_buffered_event):
7846         Use unrequest_sigio, not ignore_sigio.
7847         (kbd_buffer_get_event):
7848         Call request_sigio when getting the ball rolling again.
7850 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
7852         * lisp/obsolete/longlines.el (longlines-search-function):
7853         Fallback on `isearch-search-fun-default'.
7855 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
7857         Support @-mentions
7858         * rcirc.el (rcirc-completion-at-point): Support completion of
7859         mentions/messages with @nick instead of just nick.
7861 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
7863         Fix Bug#20943.
7864         * lisp/autorevert.el (auto-revert-handler): Do not check for
7865         `buffer-modified-p'.
7866         * lisp/files.el (buffer-stale--default-function): Check for
7867         `buffer-modified-p'.
7868         * test/automated/auto-revert-tests.el
7869         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
7871 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
7873         Fix delete-dups bug on long lists
7874         * lisp/subr.el (delete-dups):
7875         Don't mistakenly keep some dups when applied to long lists.
7877 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
7879         Better heuristic for C stack overflow
7880         Improve the heuristic for distinguishing stack overflows from
7881         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
7882         the getrlimit method wasn't portable to Cygwin; see:
7883         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
7884         Corinna suggested pthread_getattr_np but this also has problems.
7885         Instead, replace the low-level system stuff with a simple
7886         heuristic based on known good stack addresses.
7887         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
7888         * src/sysdep.c: Don't include <sys/resource.h>.
7889         (stack_direction): Remove.  All uses removed.
7890         (stack_overflow): New function.
7891         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
7892         Make SEGV fatal in non-main threads.
7894 2015-07-16  Daiki Ueno  <ueno@gnu.org>
7896         epg: Automatically start pinentry server
7897         * epg-config.el (epg-gpgconf-program): New variable.
7898         * epg.el (epg--start): Call `pinentry-start' if
7899         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
7901 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
7903         * lisp/gnus/nnimap.el: Fix my last bogus change
7904         Reinstall Stefan Monnier's change that was made in
7905         <83d824bc4041332f338ad7e5e830f443535aa300>.
7907 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
7909         Merge from gnulib
7910         This incorporates:
7911         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
7912         2015-07-05 acl-permissions: Fix on FreeBSD
7913         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
7914         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
7915         * lib/set-permissions.c: Copy from gnulib.
7917         Port to stricter C99
7918         * src/keyboard.h (kbd_buffer_store_event_hold):
7919         Don't return a void expression.
7921 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
7923         * doc/emacs/frames.texi (Creating Frames): Fix the command `C-x 5 m' runs.
7925 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
7927         New autorevert tests.
7928         * test/automated/auto-revert-tests.el: New file.
7930 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
7932         Clear gcprolist etc. after stack overflow
7933         After stack overflow, command_loop calls init_eval, and this needs to
7934         clear gcprolist and byte_stack_list (Bug#20996).
7935         * src/alloc.c (init_alloc):
7936         Move gcprolist and byte_stack_list initialization from here ...
7937         * src/eval.c (init_eval): ... to here.
7939 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
7941         * doc/emacs/windows.texi (Pop Up Window): Fix the description of `C-x 4 m'.
7943 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7945         Avoid deprecated enums in mac-ct font backend driver
7946         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
7947         (mac_ctfont_get_advance_width_for_glyph)
7948         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
7950         Cache font family in mac-ct font backend driver
7951         * src/macfont.m (macfont_family_cache): New variable.
7952         (syms_of_macfont): Initialize it.
7953         (macfont_available_families_cache): New variable.
7954         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
7955         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
7956         (macfont_handle_font_change_notification)
7957         (macfont_init_font_change_handler)
7958         (macfont_copy_available_families_cache): New functions.
7959         (macfont_create_family_with_symbol): Use font family caches.
7960         (macfont_list, macfont_list_family): Use
7961         macfont_copy_available_families_cache instead of
7962         mac_font_create_available_families.
7964 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
7966         Show the default value in the prompt
7967         * lisp/progmodes/xref.el: Add `M-?' binding for
7968         xref-find-references.  Declare functions `grep-read-files' and
7969         `grep-expand-template'.
7970         (xref--read-identifier): Show the default value in the prompt.
7972         When called with prefix argument, ask for file patterns to search as well
7973         * lisp/progmodes/xref.el (xref-find-regexp): When called with
7974         prefix argument, ask for file patterns to search as well.  When
7975         prompting for the directory, require an existing one.
7976         (xref-collect-matches): Add a new argument, FILES.  Use it in the
7977         above function.
7979         Add `project-ignores'
7980         * lisp/progmodes/project.el (project-ignores): New generic
7981         function, and an implementation for the VC project type.
7982         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
7983         variant of rgrep-default-command that handles a generic list of
7984         ignores.
7985         (xref-collect-matches): Use it, and pass through to it the value
7986         of the newly added argument.
7987         (xref-find-regexp): Handle ignored paths within the project.
7988         Remove outdated comment.
7989         * lisp/vc/vc.el (vc-default-ignore-completion-table):
7990         Skip the comments and the empty lines.
7992 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
7994         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
7996 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
7998         gnus-registry.el: Correct function argument order
7999         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
8000         Reverse the order of function arguments.
8002 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
8004         Bind grep-highlight-matches to nil
8005         * lisp/progmodes/xref.el (xref-collect-matches):
8006         Bind grep-highlight-matches to nil (bug#20728).
8008 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
8010         nnimap.el: Fix IMAP message size parsing
8011         * lisp/gnus/nnimap.el (nnimap-transform-headers):
8012         Don't assume that UID comes before RFC822.SIZE.
8014 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
8016         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
8017         (auth-source-creation-prompts): Declare.
8018         (nnimap-retrieve-headers, nnimap-status-message)
8019         (nnimap-request-create-group, nnimap-request-delete-group)
8020         (nnimap-close-group, nnimap-request-move-article)
8021         (nnimap-request-accept-article, nnimap-request-newgroups)
8022         (nnimap-request-post, nnimap-dummy-active-number)
8023         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
8024         (nnimap-parse-flags): Remove unused var `p'.
8025         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
8026         (nnimap-flags-to-marks): Remove unused var `totalp'.
8028 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
8030         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
8032 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8034         * src/macfont.m (macfont_list): Ignore font families lacking font descriptors.
8036 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
8038         Don't check the exit status, it can be misleading
8039         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
8040         exit status, it can be misleading.
8042         Introduce a Project API
8043         * lisp/progmodes/project.el: New file.
8044         * lisp/cedet/ede.el: (project-try-ede): New function.
8045         (project-root): New implementation.
8046         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
8047         Set project-search-path-function.
8048         (elisp--xref-find-references): Delegate some logic to
8049         project-search-path.
8050         (elisp-search-path): New function.
8051         (elisp-xref-find): Don't implement `matches' anymore.
8052         * lisp/progmodes/etags.el: Don't implement `matches'.
8053         Delegate some logic to project-search-path.
8054         (etags-search-path): New function.
8055         * lisp/progmodes/xref.el (xref-find-function):
8056         Remove `matches' from the API.
8057         (xref-find-regexp): Move whatever common logic was in elisp and
8058         etags implementations, and search the directories returned by
8059         project-directories and project-search-path.
8061 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
8063         * test/automated/map-tests.el (test-map-delete-return-value): Uncomment test.
8065         Add support for gv.el in map.el
8066         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
8067         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
8068         * test/automated/map-tests.el: Update tests to work with the new
8069         implementations of map-elt and map-put.
8071 2015-07-09  Glenn Morris  <rgm@gnu.org>
8073         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
8075 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
8077         Syntax-propertize until the end of the line first
8078         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
8079         until the end of the line first.
8081 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
8083         * doc/emacs/files.texi (File Archives): Add a cross reference.
8085 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
8087         nnimap.el: Handle plain value for nnimap-stream
8088         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
8089         capabilities, so that a 'plain value for the `nnimap-stream' server
8090         variable is handled correctly.
8091         * doc/misc/gnus.texi (Customizing the IMAP Connection):
8092         Document the 'plain option.
8094 2015-07-08  Leo Liu  <sdl.web@gmail.com>
8096         Fix bug in thing-at-point--bounds-of-well-formed-url
8097         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
8098           sure boundary contains current point.
8100 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
8102         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse' in the end.
8104         Declare whitespace-line-column a safe file-local
8105         * lisp/whitespace.el (whitespace-line-column): Declare to be a
8106         safe file-local when the value is an integer.
8108 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
8110         gnus-group.el: Check if group names are already strings
8111         * lisp/gnus/gnus-group.el (gnus-group-group-name):
8112         The group name may already be a string.
8113         Specifically, in the group list reached from the *Server* buffer,
8114         the 'gnus-group text property returns a string.  Everywhere else
8115         it returns a symbol.
8117         nnimap.el: Remove unused let variables
8118         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
8120 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
8122         Support "maximized" property of runemacs's shortcut
8123         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
8124         the '--maximized' switch to Emacs.
8126         Support "minimized" property of runemacs's shortcut
8127         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
8128         pass the '--iconic' switch to Emacs.  (Bug#20991)
8130 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
8132         Doc fixes
8133         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
8134         C-w' in Diff mode.
8135         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
8136         Add a cross reference.
8138 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
8140         * lisp/obsolete/landmark.el: Add Obsolete-since header
8142 2015-07-07  Glenn Morris  <rgm@gnu.org>
8144         * test/automated/ert-tests.el (ert-test-deftest):
8145         Update for recent changes.
8147 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
8149         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
8150         * lisp/emacs-lisp/gv.el (gv-setter): New function.
8151         (gv-invalid-place): New error.
8152         (gv-get): Use them.
8153         (gv-synthetic-place, gv-delay-error): New places.
8154         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
8155         (cl-defgeneric, cl-defmethod): Use gv-setter.
8157 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
8159         Make vc-tests work with MSYS svn program
8160         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
8161         svn is an MSYS program.
8163 2015-07-07  Ken Brown  <kbrown@cornell.edu>
8165         Improve recent change to emacsclient on Cygwin
8166         * lisp/server.el (server-process-filter): Remove redundant check
8167         that 'cygwin-convert-file-name-from-windows' is defined as a
8168         function on Cygwin.  Don't call that function unless its argument
8169         starts with a drive letter.
8171 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
8173         * lisp/emacs-lisp/package.el (package-compute-transaction): Bug fix
8174         Fix void variable due to `found-something' being in the wrong `let'.
8176 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
8178         * lisp/play/landmark.el: Move to lisp/obsolete/
8180 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
8182         Have `x-show-tip' handle `right' and `bottom' frame parameters.
8183         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
8184         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
8185         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
8186         tooltips also via `right' and `bottom' frame parameters.
8188 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
8190         Add online-help support to describe types
8191         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
8192         (describe-symbol): Improve the selection of default.
8193         * lisp/help-mode.el: Require cl-lib.
8194         (describe-symbol-backends): Move from help-fns.el.
8195         (help-make-xrefs): Use it.
8196         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
8197         for types.
8198         (cl--typedef-regexp): New const.
8199         (find-function-regexp-alist): Add entry for types.
8200         (cl-help-type, cl-type-definition): New buttons.
8201         (cl-find-class): New function.
8202         (cl-describe-type): New command.
8203         (cl--describe-class, cl--describe-class-slot)
8204         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
8205         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
8206         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
8207         New functions.  Moved from eieio-opt.el.
8208         (cl--generic-class-parents): New function, extracted from
8209         cl--generic-struct-specializers.
8210         (cl--generic-struct-specializers): Use it.
8211         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
8212         Improve constructor's docstrings.
8213         (cl-struct-unknown-slot): New error.
8214         (cl-struct-slot-offset): Use it.
8215         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
8216         definition in current-load-list.
8217         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
8218         (eieio--add-new-slot): Set it.
8219         (eieio-defclass-internal): Use new name for current-load-list.
8220         (eieio-oref): Add compiler-macro to warn about unknown slots.
8221         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
8222         as compile-time as well.  Improve constructor docstrings.
8223         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
8224         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
8225         (eieio-class-def): Remove button.
8226         (eieio-help-constructor): Use new name for load-history element.
8227         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
8228         (eieio-method-documentation): Move to cl-generic.el.
8229         (eieio-display-method-list): Use new names.
8230         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
8231         Add "define-linline".
8232         (lisp-fdefs): Remove "defsubst".
8233         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
8234         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
8235         (macroexp--warn-and-return): Use it to avoid inf-loops.
8236         Add `compile-only' argument.
8238 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8240         python.el: Fix local/remote shell environment setup
8241         * lisp/progmodes/python.el (python-shell-with-environment): Fix
8242         remote/local environment setup.
8243         * test/automated/python-tests.el (python-shell-with-environment-1)
8244         (python-shell-with-environment-2): New tests.
8246 2015-07-06  Glenn Morris  <rgm@gnu.org>
8248         * lisp/simple.el (set-variable): Tweak recent doc fix.
8250 2015-07-06  Ken Brown  <kbrown@cornell.edu>
8252         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE
8254 2015-07-06  Glenn Morris  <rgm@gnu.org>
8256         * lisp/simple.el (set-variable): Use user-error for type mismatch.
8258 2015-07-06  Ken Brown  <kbrown@cornell.edu>
8260         * src/emacs.c (main): Don't increase the stack size on Cygwin
8262 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
8264         (describe-symbol): Rewrite describe-function-or-variable
8265         * lisp/help-fns.el (describe-symbol-backends): New var.
8266         (help-xref-stack-item): Declare.
8267         (describe-symbol): Rename from describe-function-or-variable.
8268         Rewrite using describe-symbol-backends instead of help-xref-interned.
8269         * lisp/help.el (help-map): Use it.
8270         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
8271         (help-xref-interned): Make it into an obsolete alias.
8273         (eieio-persistent-save): Don't ignore `file' arg (bug#20972)
8274         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
8275         `file' arg.  Always use utf-8-emacs.  Use with-temp-buffer and cl-letf.
8277 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
8279         Fix parsing glitches in dired-mark-sexp (bug#13575)
8280         * lisp/dired-x.el (dired-x--string-to-number): New function.
8281         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
8282         of directory-listing-before-filename-regexp.  Consider
8283         forward-word harmful and replace it.  Add more verbiage in
8284         comments and doc string.
8286 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8288         python.el: Respect process environment for remote shells
8289         * lisp/progmodes/python.el
8290         (python-shell-calculate-process-environment): Calculate
8291         process-environment or tramp-remote-process-environment depending
8292         whether current file is remote.
8293         (python-shell-calculate-exec-path): Calculate exec-path or
8294         tramp-remote-path depending whether current file is remote.
8295         (python-shell-with-environment): New macro.
8296         (python-shell-prompt-detect, python-shell-calculate-command)
8297         (python-shell-make-comint, python-check): Use it.
8299         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
8300         * lisp/progmodes/python.el (python-shell--interpreter)
8301         (python-shell--interpreter-args): New vars.
8302         (inferior-python-mode, python-shell-make-comint): Use them.
8304         python.el: Fixes for IPython 3.x  (Bug#20580)
8305         * lisp/progmodes/python.el:
8306         (python-shell-completion-native-setup): Fix IPython 3.x setup.
8307         (python-shell-completion-native-get-completions): Fix timeout
8308         logic.
8310         python.el: Fix mark-defun behavior  (Bug#19665)
8311         * lisp/progmodes/python.el: (python-mark-defun): New function.
8312         * test/automated/python-tests.el (python-mark-defun-1)
8313         (python-mark-defun-2, python-mark-defun-3): New tests.
8315 2015-07-05  Glenn Morris  <rgm@gnu.org>
8317         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
8318         such as "extends(parent), private".  (Bug#20969)
8319         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
8320         New tests.
8322 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
8324         Avoid duplicate calls to current_timespec
8325         * src/process.c (wait_reading_process_output):
8326         Cache current_timespec results as long as we're not waiting.
8328 2015-07-05  Ian Kelling  <ian@iankelling.org>
8330         Avoid returning early reading process output due to SIGIO
8331         * src/process.c (wait_reading_process_output): Extend the behavior of
8332         not breaking due to not finding output when a timer has lowered the
8333         timeout to include when SIGIO lowers the timeout.
8335         Don't return as fast reading any process output
8336         * src/process.c (wait_reading_process_output):
8337         The patch for Bug#17647 returns too fast sometimes when reading
8338         from any processes. Revert part of it, and limit the timeout more
8339         sensibly (Bug#20978).
8341         Refactor timeouts in wait_reading_process_output
8342         * src/process.c (wait_reading_process_output):
8343         Simplify timeouts with an enum.  Remove a redundant condition.
8344         (Bug#20978)
8346         Remove ADAPTIVE_READ_BUFFERING ifdef
8347         * src/process.c (make-process, make-pipe-process, deactivate_process)
8348         (wait_reading_process_output, read_process_output, send_process)
8349         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
8350         added in case there was an operating system in which it was not
8351         useful.  That was 11 years ago and it hasn't happened.  Make
8352         development easier by not considering the effect of changes on a
8353         theoretical OS where this is disabled (Bug#20978).
8355 2015-07-05  Glenn Morris  <rgm@gnu.org>
8357         * lisp/simple.el (set-variable): Doc fix.
8359         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
8361 2015-07-05  Ian Kelling  <ian@iankelling.org>
8363         accept-process-output fix
8364         This is a followon to the fix for Bug#17647 (Bug#20976).
8365         * src/process.c (status_notify): Fix too high return in some cases.
8367 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
8369         * lisp/character-fold.el (character-fold-table):
8370         Only fold decompositions if at least one character is non-spacing.
8371         (Bug#20975)
8373 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
8375         Merge from gnulib
8376         This incorporates:
8377         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
8378         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
8379         2015-07-02 update-copyright: fix test failure with perl >= 5.22
8380         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
8381         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
8382         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
8383         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
8385 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
8387         Respect `prog-indentation-context' in python.el
8388         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
8389         (python-indent-context, python-indent--calculate-indentation)
8390         (python-info-current-defun)
8391         (python-info-dedenter-opening-block-message)
8392         (python-info-line-ends-backslash-p)
8393         (python-info-beginning-of-backslash)
8394         (python-info-continuation-line-p): Use `prog-widen'.
8395         (python-indent--calculate-indentation)
8396         (python-indent--calculate-levels)
8397         (python-indent-calculate-indentation): Use `prog-first-column'.
8398         (python-indent--calculate-levels): Simplify.
8399         Ignore also initial empty lines for syntax calculation.
8400         * lisp/progmodes/python.el (python-indent-context): Return
8401         :no-indent for first non-empty line, not just in line 1.
8402         * test/automated/python-tests.el (python-indent-base-case)
8403         (python-indent-inside-paren-1, python-indent-inside-paren-2)
8404         (python-indent-inside-paren-3, python-indent-inside-paren-4)
8405         (python-indent-inside-paren-5, python-indent-inside-paren-6)
8406         (python-indent-after-backslash-1)
8407         (python-indent-after-backslash-2)
8408         (python-indent-after-backslash-3)
8409         (python-indent-after-backslash-4, python-indent-inside-string-1):
8410         Expect :no-indent for first non-empty line.
8412 2015-07-04  Daniel Colascione  <dancol@dancol.org>
8414         Factor isearch word description into new function
8415         * lisp/isearch.el (isearch--describe-word-mode): New function.
8416         (isearch-message-prefix, isearch-query-replace): Use it.
8418 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
8420         Fix mouse pointer on w32 when a menu is active
8421         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
8422         shape while a menu is in use.  This started happening since we now
8423         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
8425 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
8427         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
8428         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
8429         parameter.  (Bug#17344)
8431         Have `compilation-set-window' use right window for getting fringes (Bug#20829)
8432         * lisp/progmodes/compile.el (compilation-set-window): Take
8433         `window-fringes' from argument window.  (Bug#20829)
8435 2015-07-03  Glenn Morris  <rgm@gnu.org>
8437         Update eieio tests for recent eieio-core change.
8438         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
8439         * test/automated/eieio-tests.el
8440         (eieio-test-32-slot-attribute-override-2):
8441         Replace the deleted eieio--class-v with cl--find-class.
8443 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
8445         Fix some issues with `window-divider-mode'
8446         * lisp/frame.el (window-divider-default-places): New option.
8447         (window-divider-mode): Remove option.
8448         (window-divider-mode): Make it a "regular" minor mode.
8449         (window-divider-width-valid-p): Drop frame- prefix.
8450         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
8451         prefix.  Handle `window-divider-default-places'.
8452         (frame--window-divider-mode-set-and-apply): Remove.
8453         (window-divider-default-bottom-width)
8454         (window-divider-default-right-width): Drop :group entries.
8455         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
8456         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
8457         (menu-bar-no-window-divider): Set `window-divider-default-places'
8458         and call `window-divider-mode'.
8459         * doc/emacs/frames.texi (Window Dividers): Document
8460         `window-divider-default-places'.
8462 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
8464         Add cross references in documentation
8465         * doc/emacs/display.texi (Displaying Boundaries):
8466         * doc/emacs/search.texi (Word Search): Add cross references.
8468 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
8470         -batch should not affect ‘’ -> `' display
8471         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
8472         -batch (Bug#20926).
8474 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
8476         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
8477         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el,
8478           lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
8479         Use cl--find-class instead.
8481         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
8483 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
8485         Some further fixes in Change Window node.  (Bug#20183)
8486         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
8487         by "resizing" in section title.  Add some concept indices.
8488         Suggested by N. Jackson (Bug#20183).
8490         Reference window dividers in Change Window section.
8491         * doc/emacs/windows.texi (Change Window): Reference window
8492         dividers.
8494         Document new `window-divider-mode'.
8495         * lisp/frame.el (window-divider-mode): Fix doc-string.
8496         * doc/emacs/frames.texi (Window Dividers): New section.
8498         Improve accessibility of window dividers.  (Bug#20183)
8499         * lisp/faces.el (window-divider)
8500         (window-divider-first-pixel, window-divider-last-pixel): Change
8501         membership from `frames' to `window-divider' customization group.
8502         * lisp/frame.el (window-divider): New customization group.
8503         (window-divider-mode): New minor mode.
8504         (window-divider-default-bottom-width)
8505         (window-divider-default-right-width): New options.
8506         (frame--window-divider-previous-mode): New variable.
8507         (frame-window-divider-width-valid-p)
8508         (frame--window-divider-mode-apply)
8509         (frame--window-divider-mode-set-and-apply): New functions.
8510         * lisp/menu-bar.el (menu-bar-options-save): Save
8511         window-divider-mode settings.
8512         (menu-bar-window-divider-customize)
8513         (menu-bar-bottom-and-right-window-divider)
8514         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
8515         (menu-bar-no-window-divider): New functions.
8516         (menu-bar-showhide-window-divider-menu): New variable.
8517         (menu-bar-showhide-menu): Show/hide window divider menu.
8518         * lisp/mouse.el (mouse-split-window-vertically)
8519         (mouse-split-window-horizontally): Replace `error' by
8520         `user-error'.  Bind `window-combination-resize' to nil.
8521         (top-level): Add/reorder mouse key bindings on mode- and
8522         vertical-line.
8524 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
8526         Don't display ‘’ as `' under X in en_GB
8527         The curved quote setup code invokes (char-displayable-p ?‘),
8528         but this isn’t reliable until after the X frame replaces the
8529         terminal frame (Bug#20926).
8530         * lisp/international/mule-cmds.el (set-locale-environment):
8531         Move curved quote setup code from here ...
8532         * lisp/startup.el (command-line): ... to here, after creating
8533         the X frame.
8535 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
8537         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring
8539         Add argument to reverse the meaning of ido-restrict-to-matches
8540         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
8541         to reverse the meaning (Bug#15631).
8543 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
8545         Be more tolerant to fonts named "Foobar-12"
8546         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
8547         don't barf; instead, request a new fontset to be generated.  This
8548         avoids unnecessarily rejecting fonts named against XLFD rules.  See
8549         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
8550         for the description of the original problem.
8551         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
8552         by a hyphen in a font's name.
8554         Fix value of posn-at-pont in R2L lines
8555         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
8556         coordinate of -1, for a newline in a right-to-left line that
8557         overflowed into the left fringe.
8559 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
8561         (cl--copy-slot-descriptor): Copy the `props' alist as well
8562         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
8563         Rename from cl--copy-slot-descriptor.
8564         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
8566 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
8568         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
8569         (xterm-query-timeout): New var.
8570         (xterm--query): Use it.  Fallback on async method if we timeout before
8571         getting the first byte of the reply (bug#12354).
8573 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
8575         Spelling fixes
8577 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
8579         * doc/emacs/frames.texi (Frame Commands): Typo fix. (Bug#20946)
8581 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
8583         In strings, prefer plain ` and ' to \` and \'
8584         * lisp/allout.el (allout-insert-listified):
8585         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
8586         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
8587         (ls-lisp-string-lessp):
8588         * lisp/menu-bar.el (menu-bar-open):
8589         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
8590         * lisp/progmodes/compile.el (compile):
8591         * lisp/progmodes/etags.el (tags-loop-scan):
8592         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
8593         * lisp/subr.el (posn-actual-col-row):
8594         * lisp/term/pc-win.el (x-list-fonts):
8595         * lisp/textmodes/texinfmt.el (texinfmt-version):
8596         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
8597         * lisp/time.el (display-time-world-list):
8598         * lisp/tmm.el (tmm-menubar):
8599         * src/buffer.c (syms_of_buffer):
8600         * src/fileio.c (syms_of_fileio):
8601         Omit unnecessary and confusing backslash before quote.
8602         * lisp/erc/erc.el (erc-cmd-LASTLOG):
8603         * lisp/progmodes/flymake.el (flymake-fix-file-name):
8604         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
8605         Fix string that was intended to escape a backslash and not a quote.
8607 2015-06-30  Glenn Morris  <rgm@gnu.org>
8609         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
8611         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
8612         Replace hard-coded lists with wildcard + filter-out.
8614         * configure.ac (system-configuration-features): Add X11, NS.
8616         Improve reproducibility of generated loaddefs file.
8617         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
8618         Make the return value the modtime of the input file (if no autoloads).
8619         (update-directory-autoloads): In the "no autoloads" section,
8620         use "most recent modtime" rather than "current time".
8622 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
8624         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic
8625         (Bug#20930)
8627 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
8629         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
8631         Add seq-min and seq-max
8632         Bump version number.
8633         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
8634         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
8636 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
8638         Make sure sleep-for always delays for as long as it's told
8639         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
8640         a loop, to ensure we always wait exactly the required amount of
8641         time.  (Bug#15990)
8643 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
8645         Fix pointer signedness glitch
8646         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
8648 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
8650         Don't block changes in mouse pointer inside 'track-mouse'
8651         * etc/NEWS:
8652         * doc/lispref/frames.texi (Mouse Tracking): Document the special
8653         effect of setting 'track-mouse' to 'dragging'.
8654         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
8655         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
8656         * lisp/mouse-drag.el (mouse-drag-throw):
8657         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
8658         to avoid changes in the shape of the mouse pointer.
8659         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
8660         pointer shape when do_mouse_tracking has the value of 'dragging',
8661         not just any non-nil value.  (Bug#20934)
8662         (syms_of_xdisp): DEFSYM 'dragging'.
8664 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
8666         * lisp/isearch.el (isearch-toggle-word): Fix toggle
8668         * lisp/emacs-lisp/package.el (package-compute-transaction):
8669         Don't assume version sorting.
8671         * lisp/emacs-lisp/package.el (package--save-selected-packages):
8672         Don't save before init time, to avoid overwriting configurations.
8673         (Bug#20855)
8675 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
8677         Add cross references.
8678         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
8679         references.
8681 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
8683         cfengine.el: update for the upcoming CFEngine 3.7 release
8684         Update for the upcoming CFEngine 3.7 release: support macros and
8685         quoted context strings; reformat JSON; indent promise attributes 2
8686         units by default; give function parameter descriptions in the eldoc
8687         glue.
8688         * cfengine.el: Update version and docs and fix name.  Autoload
8689         `json-pretty-print'.  Support new features in 3.7.
8690         (cfengine-parameters-indent): Set default promise attribute indent to
8691         2 more than the promise itself.
8692         (cfengine3-macro-regex): New variable to match the new macro syntax.
8693         (cfengine3-font-lock-keywords): Use it to highlight macros.
8694         (cfengine3-indent-line): Use it to indent macros to column 0.
8695         (cfengine3-class-selector-regex): Update for the new quoted strings
8696         format.
8697         (cfengine3-reformat-json-string): New function to reformat a JSON
8698         string using `json-pretty-print'.
8699         (cfengine3-format-function-docstring): Use function parameter
8700         description if it's provided by the cf-promises syntax dump.
8702 2015-06-29  Michael R. Mauger  <michael@mauger.com>
8704         Cygwin emacsclient handles w32 file names
8706 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
8708         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice (bug#20925).
8710 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
8712         * doc/lispref/text.texi (Sticky Properties): Improve wording.
8713         (Bug#20924)
8715         Allow font names that end in "-NN", where NN is a number
8716         * src/font.c (font_load_for_lface): If the font-spec didn't match
8717         any available fonts, try again without interpreting trailing "-NN"
8718         as the font size.  For the description of the original problem, see
8719         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
8721         .gdbinit followup to changes in !USE_LSB_TAG
8722         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
8723         !USE_LSB_TAG, as Emacs no longer does.
8725 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
8727         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
8728         Otherwise `s p' of f and F will stomp on each other's value.  (Bug#20916)
8730 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
8732         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
8733         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
8735 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
8737         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point as additional guess
8739         * lisp/emacs-lisp/package.el (describe-package): Convert the guess to a string
8741 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
8743         apropos-library quoting fix
8744         * lisp/apropos.el (apropos-library): Quote library consistently
8745         with the rest of the quoting used by apropos.
8747         Clarify interpreter-mode-alist doc
8748         * lisp/files.el (interpreter-mode-alist):
8749         Reword to avoid confusing quoting that wasn't working anyway.
8751 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
8753         Sync with Tramp 2.2.12
8754         * doc/misc/trampver.texi:
8755         * lisp/net/trampver.el: Update release number.
8756         * test/automated/tramp-tests.el (tramp-test13-make-directory):
8757         Fix cleanup.
8759 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
8761         * lisp/isearch.el (isearch-mode): Don't char-fold regexps
8762         (bug#20913)
8764 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
8766         Bind grep-highlight-matches around the rgrep call
8767         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
8768         around the rgrep call (bug#20728).
8770         Put "--color" before the other options in grep-command
8771         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
8772         before the other options in grep-command (bug#20912).
8774         Add --color Grep option to the command dynamically
8775         * lisp/progmodes/grep.el (grep-template, grep-find-template):
8776         Update the description for <C>.  (Bug#20728)
8777         (grep-compute-defaults): Don't add the --color option to
8778         grep-options.  Only add it to grep-command.
8779         (grep-expand-keywords): Expand the env value opts into <C>.
8780         (grep-expand-template): Replace cf in the env with the opts list,
8781         that can include -i and --color.
8782         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
8783         "--color=always" from the template, because we don't have to.
8785 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
8787         cl-extra fixes for most-negative-fixnum
8788         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
8789         Don't mishandle an argument equal to most-negative-fixnum,
8790         whose absolute value equals itself.
8791         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
8793         Initialize cl--gensym-counter to 0
8794         Previously it was initialized to a random value, which made it
8795         harder to reproduce earlier Emacs runs.  The need for a random
8796         value went away when Emacs introduced and used the #: syntax for
8797         uninterned symbols (Bug#20862).
8798         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
8799         Document that cl--gensym-counter now starts with 0.
8800         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
8801         (cl--random-time): Move to near only remaining use.
8802         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
8804         Improve docstring for macroexp-let2
8805         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
8806         Improve as per suggestion by RMS in:
8807         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
8808         Also, rename args to match new doc string.
8810 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
8812         Fix VC test suite on MS-Windows
8813         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
8814         always starts with 3 slashes after the colon.
8815         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
8816         'w32-application-type' to invoke CVS on MS-Windows with properly
8817         formatted CVSROOT directory name.
8819         Add a new function w32-application-type
8820         * src/w32proc.c (Fw32_application_type): New function.
8822         Avoid error in TLS connections due to incorrect format
8823         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
8824         the call to 'error', instead of the unsupported %u.  Reported by
8825         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
8827 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
8829         * lisp/replace.el (replace-search): Fix regexp case (bug#20901)
8831 2015-06-26  Leo Liu  <sdl.web@gmail.com>
8833         Fix indentation for with-output-to-string
8834         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
8835           `with-output-to-string' in elisp.
8836           Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string"
8837           This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
8839 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
8841         Minor corrections in ELisp manual
8842         * doc/lispref/nonascii.texi (Character Properties): Correct
8843         inaccuracies in description of values of the Unicode properties.
8845         Fix invisible mouse pointers on Windows.
8846         * src/w32fns.c: Include windowsx.h.
8847         (w32_wnd_proc): If the mouse moved and the mouse pointer is
8848         invisible, make it visible again even when the main (Lisp)
8849         thread is busy.
8850         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
8851         garbaging the frame have the input thread call SetCursor.
8853 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
8855         Provide invisible mouse pointers on Windows.  (Bug#6105) (Bug#12922)
8856         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
8857         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
8858         * src/w32term.c (w32_hide_hourglass): Handle
8859         f->pointer_invisible.
8860         (w32_toggle_invisible_pointer): New function.
8861         (w32_create_terminal): Add w32_toggle_invisible_pointer as
8862         toggle_invisible_pointer_hook for this terminal.
8864 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
8866         Doc fix for deletion commands
8867         'delete-char' does not respect the value of 'delete-active-region'.
8868         * doc/emacs/killing.texi (Deletion):
8869         Fix documentation for some single-char deletion commands.
8871         * doc/emacs/help.texi (Apropos):
8872         Improve documentation of 'apropos-do-all'.
8874         * doc/emacs/help.texi (Help Summary):
8875         Improve documentation of 'describe-mode'.
8877 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
8879         Fix submake dependency bug with .h files
8880         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
8881         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
8882         before the submake in $(libsrc) would spin off a subsubmake
8883         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
8885 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
8887         * lisp/character-fold.el (character-fold-table): Reuse `table'
8889 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
8891         Translate undisplayable ‘ to `
8892         * doc/lispref/help.texi (Keys in Documentation):
8893         * lisp/international/mule-cmds.el (set-locale-environment):
8894         * lisp/term/w32console.el (terminal-init-w32console):
8895         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
8896         If ‘ is not displayable, transliterate it to `, not to '.  See:
8897         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
8899         Fix C99 incompatibilities in Cairo code
8900         * src/image.c (xpm_load) [USE_CAIRO]:
8901         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
8902         Fix pointer signedness problem.
8904 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
8906         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
8907         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
8908           `with-output-to-string' should have the same indent as `progn'.
8909           This is in line with the declaration of `with-output-to-string'.
8911 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
8913         Get ‘./configure; make -C src emacs’ to work
8914         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
8915         * lib-src/Makefile.in (../lib/libgnu.a):
8916         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
8918 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
8920         Fix GC bugs --with-wide-int and Qnil == 0
8921         Use the same alignment for the !USE_LSB_TAG case as for the
8922         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
8923         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
8924         once we changed the representation of symbols so that Qnil == 0.
8925         Problem reported by Eli Zaretskii (Bug#20862).
8926         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
8927         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
8928         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
8929         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
8930         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
8931         This optimization in the !USE_LSB_TAG case is no longer valid when
8932         symbols are represented via offsets.  Change the only use to
8933         assume that pointers might hide in objects.
8934         * src/lisp.h (alignas) [!USE_LSB_TAG]:
8935         Require support in this case, too.
8936         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
8937         This is OK, because the !USE_LSB_TAG case now applies only when
8938         Lisp_Object is wider than void *, so there's no longer any need
8939         to shift the offset.  Not shifting the offset means that
8940         symbol representations have the same alignment as pointers,
8941         which the GC assumes.
8943 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
8945         * doc/lispintro/emacs-lisp-intro.texi (Data types):
8946         Improve documentation of 'substring'.
8948 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
8950         * lisp/character-fold.el (character-fold-table): Fix table generation
8952 2015-06-24  Glenn Morris  <rgm@gnu.org>
8954         * nextstep/Makefile.in (all): Make it the first target.
8955         (../src/emacs${EXEEXT}): Add rule for making it.
8957 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
8959         * etc/NEWS: Fix mention to old function name
8961         * lisp/character-fold.el: New file (Bug#20887)
8962         (character-fold-to-regexp): New function.
8963         * lisp/replace.el (replace-search): Check value of
8964         `character-fold-search'.
8965         * lisp/isearch.el: Move character-folding code to
8966         character-fold.el
8967         (isearch-toggle-character-fold): New command.
8968         (isearch-mode-map): Bind it to "\M-sf".
8969         (isearch-mode): Check value of `character-fold-search'.
8971 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
8973         * lisp/subr.el (remove-from-invisibility-spec): Handle the t case
8974         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
8975         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
8977         * lisp/progmodes/xref.el: Avoid init-args in oref.
8978         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
8979         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
8981 2015-06-24  Glenn Morris  <rgm@gnu.org>
8983         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
8985 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
8987         * lisp/gnus/nnmaildir.el: Silence lexical warnings
8988         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
8989         functional style.
8990         (nnmaildir--update-nov): Remove unused var `numdir'.
8991         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
8992         (nnmaildir-request-group, nnmaildir-request-create-group)
8993         (nnmaildir-request-post, nnmaildir-request-move-article)
8994         (nnmaildir-request-accept-article, nnmaildir-active-number): Mark unused args.
8995         (nnmaildir-get-new-mail, nnmaildir-group-alist)
8996         (nnmaildir-active-file): Declare.
8997         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
8998         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
8999         `mark', `end', `new-mark', and `mark-sym'.
9000         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
9001         `nlist2'.
9002         (nnmaildir-request-expire-articles):
9003         Remove unused vars `article', `stop' and `nlist2'.
9004         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
9005         `end'.  Use nnmaildir--article when dyn-binding is needed.
9006         Give the value directly in the `let' for `del-mark', `del-action',
9007         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
9008         (nnmaildir-close-server): Declare those local vars that need to be
9009         dyn-bound.
9011 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
9013         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
9015         Port selection info fix to clang
9016         * src/keyboard.h (kbd_buffer_store_event_hold):
9017         Don't assume C11 semantics for alignof (Bug#20756).
9019         Fix bug that munged selection info
9020         On some optimizing C compilers, copying a structure did not
9021         copy the padding bytes between elements, and the type punning
9022         between struct input_data and struct selection_input_data did
9023         not work.  Change the C code to use a proper union type instead.
9024         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
9025         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
9026         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
9027         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
9028         (mark_kboards):
9029         Use union buffered_input_event, not struct input_event.
9030         (clear_event, deliver_input_available_signal, process_special_events):
9031         Remove unnecessary forward decls.
9032         (kbd_buffer_store_buffered_event): New function, mostly just the
9033         old kbd_buffer_store_event_hold, except its argument is of type
9034         union buffered_input_event, not struct input_event.
9035         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
9036         not needed otherwise.  Argument is now of type
9037         struct selection_input_event *, not struct input_event *.
9038         All callers changed.
9039         (clear_event): Arg is now of type union buffered_input_event *,
9040         not struct input_event *.  All callers changed.
9041         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
9042         (union buffered_input_event): New type.
9043         (kbd_buffer_store_event_hold): Now an inline function,
9044         defined here.
9045         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
9046         (struct input_event): Use it.
9047         * src/xselect.c (struct selection_event_queue):
9048         Make elements be of type struct selection_input_event,
9049         not struct input_event.
9050         (selection_input_event_equal): New static function.
9051         (x_queue_event): Use it.
9052         (x_queue_event, x_decline_selection_request)
9053         (x_selection_current_request, x_reply_selection_request)
9054         (x_handle_selection_request, x_handle_selection_clear)
9055         (x_handle_selection_event): Use struct selection_input_event,
9056         not struct input_event.  All callers changed.
9057         (x_convert_selection): Omit unused first arg.  All callers changed.
9058         (Fx_disown_selection_internal): Omit unnecessary union.
9059         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
9060         rather than rolling our own equivalent.  Prefer sie.kind when
9061         setting up that kind of structure.
9062         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
9063         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
9064         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
9065         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
9066         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
9067         (SELECTION_EVENT_TIME, x_handle_selection_event):
9068         Arg is now of type struct selection_input_event *)
9069         not struct input_event *.  All callers changed.
9071 2015-06-23  Glenn Morris  <rgm@gnu.org>
9073         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
9075 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
9077         * lisp/isearch.el: Fold many unicode characters to ASCII
9078         (isearch-character-fold-search, isearch--character-fold-extras)
9079         (isearch--character-fold-table): New variable.
9080         (isearch--character-folded-regexp): New function.
9081         (isearch-search-fun-default): Use them.
9082         * lisp/replace.el (replace-character-fold): New variable.
9083         (replace-search): Use it.
9084         * etc/NEWS: Document it.
9086 2015-06-23  Glenn Morris  <rgm@gnu.org>
9088         Check for an input event before showing a dialog box.  (Bug#20813)
9089         * lisp/subr.el (y-or-n-p):
9090         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
9091         as last-nonmenu-event.
9093 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
9095         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
9096         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
9097         (switch-to-prev-buffer, switch-to-next-buffer): Respect
9098         switch-to-visible-buffer independent of the windows history.
9100 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
9102         * src/keyboard.c (last_timer_event): Remove unused var.
9104 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
9106         * test/automated/package-test.el (package-test-update-listing):
9107         Fix test.
9109 2015-06-23  Glenn Morris  <rgm@gnu.org>
9111         Revert 2014-06-25 nextstep/Makefile change.
9112         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
9113         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
9114         not as an order-only prerequisite.
9116         * configure.ac (--with-ns): Enable by default on OS X.
9118 2015-06-23  Leo Liu  <sdl.web@gmail.com>
9120         Fix shell-for/backward-command to exclude spaces
9121         * lisp/shell.el (shell-forward-command, shell-backward-command):
9122           Handle the 'move case from re-search-forward/backward.
9123           fixes debbugs:20873
9125 2015-06-22  Juri Linkov  <juri@linkov.net>
9127         * lisp/replace.el (query-replace-read-from): Add separator to
9128         the local binding of text-property-default-nonsticky.  (Bug#20690)
9130         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
9131         (Bug#20785)
9133 2015-06-22  Ken Brown  <kbrown@cornell.edu>
9135         Enable CPU profiling on Cygwin
9136         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
9137         change that undefined this.
9138         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
9139         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
9140           Cygwin.
9142         Improve diagnostics of profiler-cpu-start
9143         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
9144         return -1 if the sampling interval is invalid.
9145         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
9146         fails.  (Bug#20843)
9148 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
9150         * lisp/emacs-lisp/package.el: Exclude packages by name
9151         (package-hidden-regexps): New variable.
9152         (package-menu--refresh): Use it.
9153         (package-menu-hide-package): New command.
9155         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding
9157 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
9159         Fix debug-timer-check on systems without HAVE_TIMERFD
9160         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
9161         the expired timers, since wait_reading_process_output doesn't.
9162         (debug_timer_callback): Enlarge the tolerance to 20 msec.
9164         Fix RCS crashes in vc-test
9165         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
9166         ports of 'ci' on MS-Windows by always passing the -t- switch.
9168 2015-06-22  Glenn Morris  <rgm@gnu.org>
9170         * doc/emacs/package.texi (Packages):
9171         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
9173         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
9175 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
9177         Port tests to help-quote-translation
9178         * test/automated/ert-x-tests.el (ert-test-describe-test):
9179         * test/automated/package-test.el (package-test-describe-package)
9180         (package-test-signed): Allow straight quotes, too.
9182 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
9184         Make find-function-on-key use the current window
9185         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
9186         Extract from `find-function-on-key', add a second argument.
9187         (find-function-on-key): Use it (bug#19679).
9188         (find-function-on-key-other-window)
9189         (find-function-on-key-other-frame): New commands.
9191 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
9193         Revert "Define `map-elt' as a generalized variable"
9194         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
9196 2015-06-21  Ken Brown  <kbrown@cornell.edu>
9198         Drop support for CPU profiling on Cygwin
9199         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
9200         (Bug#20843)
9202 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
9204         Fix some “nested” quoting confusion in doc strings
9205         * lisp/emacs-lisp/advice.el (ad-map-arglists):
9206         * lisp/kermit.el (kermit-clean-on):
9207         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
9208         * src/keyboard.c (Frecursive_edit):
9209         Use curved quotes when quoting text containing apostrophe,
9210         so that the apostrophe isn't curved in the output.
9212 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
9214         Define `map-elt' as a generalized variable
9215         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
9216         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
9217         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
9218         `setf' with `map-elt'.
9219         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
9221 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
9223         Improve error handling in tramp-adb.el
9224         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
9225         Improve error handling.
9227 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
9229         Reuse `alist-get' in map.el
9230         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
9231         elements.
9233 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
9235         Fix bytecomp-tests--warnings when $TMPDIR has a long name
9236         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
9237         Allow the warning to begin on the 3rd, not only 2nd line, which
9238         happens if temporary-file-directory has a very long name.
9240         Expect 2 icalendar tests to fail on MS-Windows
9241         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
9242         (icalendar-real-world): Make them expected failures on MS-Windows.
9244 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
9246         Improve port of settings UI to older displays
9247         * lisp/cus-start.el (standard): Don't assume curved quotes are
9248         easily distinguishable when users are tinkering with a setting
9249         that affects how curved quotes are generated.
9251         Fix quoting in electric-quote-mode doc string
9252         * lisp/electric.el (electric-quote-mode): Fix quoting.
9253         This is a fallout from the recent change introducing
9254         ‘help-quote-translation’.
9256         Spelling fix
9258         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
9260         * src/doc.c (syms_of_doc): Remove unused symbols.
9262 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
9264         In ‘window-state-put’ undedicate target window.  (Bug#20848)
9265         * lisp/window.el (window-state-put): Undedicate target window
9266         before putting STATE into it.  (Bug#20848)
9268 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
9270         Merge from origin/emacs-24
9271         a5e6f33 Fixes: debbugs:20832
9272         b9f02cf Fixes: debbugs:20832
9274 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
9276         Fix file-in-directory-p when the directory is UNC
9277         * lisp/files.el (file-in-directory-p): Support files and
9278         directories that begin with "//".  (Bug#20844)
9280 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
9282         (Bug#20832)
9283         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
9284         in the minibuffer.
9286 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
9288         (Bug#20832)
9289         * lisp/calendar/todo-mode.el (todo-show): Signal an error
9290         if buffer for adding new todo file is empty but modified.
9292 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
9294         (filepos-to-bufferpos): Further tweaks to the utf-16 code
9295         * lisp/international/mule-util.el (filepos-to-bufferpos):
9296         Fix typo.  Move non-exact check to the utf-16 branch (the only one
9297         affected).  Don't use byte-to-position for the utf-16 case.
9299 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
9301         Minor fixes in filepos-to-bufferpos
9302         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
9303         test for utf-8-emacs.  Exempt single-byte encodings from the
9304         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
9305         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
9306         UTF-16 encoded files for CR-LF EOLs.
9308 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
9310         Improve the optional translation of quotes
9311         Fix several problems with the recently-added custom variable
9312         help-quote-translation where the code would quote inconsistently
9313         in help buffers.  Add support for quoting 'like this', which
9314         is common in other GNU programs in ASCII environments.  Change
9315         help-quote-translation to use more mnemonic values: values are now the
9316         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
9317         traditional Emacs help-buffer quoting style `like this'.  Change the
9318         default behavior of substitute-command-keys to match what's done in
9319         set-locale-environment, i.e., quote ‘like this’ if displayable,
9320         'like this' otherwise.
9321         * doc/lispref/help.texi (Keys in Documentation): Document
9322         new behavior of substitute-command-keys, and document
9323         help-quote-translation.
9324         * doc/lispref/tips.texi (Documentation Tips):
9325         Mention the effect of help-quote-translation.
9326         * etc/NEWS: Mention new behavior of substitute-command-keys,
9327         and merge help-quote-translation news into it.
9328         When talking about doc strings, mention new ways to type quotes.
9329         * lisp/cedet/mode-local.el (overload-docstring-extension):
9330         Revert my recent change to this function, which shouldn't be
9331         needed as the result is a doc string.
9332         * lisp/cedet/mode-local.el (mode-local-print-binding)
9333         (mode-local-describe-bindings-2):
9334         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
9335         * lisp/cus-theme.el (describe-theme-1):
9336         * lisp/descr-text.el (describe-text-properties-1, describe-char):
9337         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
9338         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
9339         (eieio-help-constructor):
9340         * lisp/emacs-lisp/package.el (describe-package-1):
9341         * lisp/faces.el (describe-face):
9342         * lisp/help-fns.el (help-fns--key-bindings)
9343         (help-fns--compiler-macro, help-fns--parent-mode)
9344         (help-fns--obsolete, help-fns--interactive-only)
9345         (describe-function-1, describe-variable):
9346         * lisp/help.el (describe-mode):
9347         Use substitute-command-keys to ensure a more-consistent quoting
9348         style in help buffers.
9349         * lisp/cus-start.el (standard):
9350         Document new help-quote-translation behavior.
9351         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
9352         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
9353         (help-xref-url-regexp):
9354         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
9355         * lisp/wid-edit.el (widget-documentation-link-regexp):
9356         Also match 'foo', in case we're in a help buffer generated when
9357         help-quote-translation is ?'.
9358         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
9359         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
9360         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
9361         (Fsubstitute_command_keys): Document and implement new behavior.
9362         (Vhelp_quote_translation): Document new behavior.
9364 2015-06-18  Glenn Morris  <rgm@gnu.org>
9366         * lisp/cus-start.el (help-quote-translation): Add :version.
9368         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
9370 2015-06-18  Alan Mackenzie  <acm@muc.de>
9372         Make translation of quotes to curly in doc strings optional.
9373         src/doc.c (traditional, prefer-unicode): new symbols.
9374         (help-quote-translation): new variable.
9375         (Fsubstitute_command_keys): make translation of quotes dependent on
9376         `help-quote-translation'; also translate curly quotes back to ASCII
9377         ones.
9378         lisp/cus-start.el (top-level): Add a customization entry for
9379         `help-quote-translation'.
9381 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
9383         * lisp/emacs-lisp/package.el: Don't always propagate async errors
9384         (package--with-work-buffer-async): Only propagate the error if the
9385         callback returns non-nil.
9386         (package--download-one-archive): Return nil on the signature
9387         checking callback if we accept unsigned.
9388         (package--download-and-read-archives): Return non-nil on the
9389         archive download callback.
9391 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
9393         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
9394         * src/nsfns.m (Fx_create_frame):
9395         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
9396         image_cache_refcount before first x_default_parameter call.
9398 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
9400         Improve and extend filepos-to-bufferpos
9401         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
9402         Don't barf if F returns nil for some argument.
9403         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
9404         that every encoding of type 'charset' is single-byte.
9406 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
9408         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
9409         Properly delete packages.  (Bug#20836)
9411 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
9413         Update data files from just-released Unicode 8.0
9414         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
9415         status.
9416         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
9417         * admin/unidata/BidiMirroring.txt:
9418         * admin/unidata/BidiBrackets.txt:
9419         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
9421 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9423         Document curved quotes a bit better
9424         * doc/emacs/basic.texi (Inserting Text):
9425         Mention C-x 8.  Change example to use curved quote rather
9426         than infinity, as this lets us give more ways to do it.
9427         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
9428         and quotation marks.
9429         * doc/emacs/text.texi (Quotation Marks):
9430         * doc/lispref/tips.texi (Documentation Tips):
9431         Add "curly quotes" and "curved quotes" to the index.
9432         * doc/emacs/text.texi (Quotation Marks):
9433         Give the C-x 8 shorthands for curved quotes.
9434         Cross-reference to "Quotation Marks".
9436 2015-06-17  Daiki Ueno  <ueno@gnu.org>
9438         Add pinentry.el for better GnuPG integration
9439         * lisp/pinentry.el: New file.
9440         * etc/NEWS: Add entry about pinentry.el.
9441         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
9442         (Bug#20550)
9444 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
9446         * lisp/emacs-lisp/package.el: Slightly better error reporting.
9448 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
9450         (define-minor-mode): Use setq-default for :global minor modes
9451         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
9452         Use setq-default for :global minor modes (bug#20712).
9454 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
9456         Avoid infloop in redisplay with tall images
9457         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
9458         down near ZV.  (Bug#20808)
9459         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
9460         instead of CHARPOS.
9462 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
9464         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
9465         Fix error reporting.
9467         * lisp/let-alist.el: move to lisp/emacs-lisp/let-alist.el
9469         * lisp/emacs-lisp/package.el: Revert buffer after any operation
9470         Call `package-menu--post-refresh' after any operation that changes
9471         the package database (`package-install' and `package-delete').  To
9472         avoid performance issues in large transactions, these functions
9473         add `post-refresh' to `post-command-hook' instead of calling it
9474         immediately.
9475         (package-menu--mark-or-notify-upgrades): New function.
9476         (list-packages): Add it to `package--post-download-archives-hook'.
9477         (package-menu--post-refresh): Lose the upgrade-checking code, add
9478         code to remove itself from `post-command-hook'.
9479         (package-install, package-delete): Add it to `post-command-hook'.
9480         (package-menu-execute): Don't call `package-menu--post-refresh'.
9482 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
9484         Add missing function xref-location-group for elisp-mode.
9485         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
9487 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
9489         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
9490         The behavior now matches the description in the manual.  (Bug#20783)
9492 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
9494         Update tutorials/TUTORIAL.cn
9495         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
9497 2015-06-17  Glenn Morris  <rgm@gnu.org>
9499         Generate char-script-table from Unicode source.  (Bug#20789)
9500         * admin/unidata/Makefile.in (AWK): New, set by configure.
9501         (all): Add charscript.el.
9502         (blocks): New variable.
9503         (charscript.el, ${unidir}/charscript.el): New targets.
9504         (extraclean): Also remove generated charscript.el.
9505         * admin/unidata/blocks.awk: New script.
9506         * admin/unidata/Blocks.txt: New data file, from unicode.org.
9507         * lisp/international/characters.el: Load charscript.
9508         * src/Makefile.in (charscript): New variable.
9509         (${charscript}): New target.
9510         (${lispintdir}/characters.elc): Depend on charscript.elc.
9511         (temacs$(EXEEXT)): Depend on charscript.
9513         * lisp/international/characters.el (char-script-table): Tweak
9514         some ranges to better match the source.  (Bug#20789#17)
9516         Remove "no-byte-compile: t" from a few files.
9517         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
9518         * lisp/obsolete/patcomp.el: No reason not to compile these.
9520 2015-06-16  Glenn Morris  <rgm@gnu.org>
9522         Fix some typos in copied Unicode data.  (Bug#20789)
9523         * lisp/international/characters.el (char-script-table):
9524         * lisp/international/fontset.el (script-representative-chars)
9525         (setup-default-fontset): Fix typos.
9527         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
9528         Don't print filename twice (it's in the prefix now).
9530         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
9531         No longer needed.
9533         Address a compilation warning.
9534         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
9535         Replace 't' with '_' in pcase.
9537         Address some check-declare warnings.
9538         * lisp/simple.el (tabulated-list-print):
9539         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
9540         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
9541         (ns-get-selection): Update declarations.
9543         Address some compilation warnings.
9544         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
9545         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
9546         Replace 't' with '_' in pcase.
9548         Address some compilation warnings.
9549         * lisp/face-remap.el (text-scale-adjust):
9550         * lisp/menu-bar.el (popup-menu-normalize-position):
9551         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
9552         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
9553         * lisp/emacs-lisp/generator.el (cps--transform-1):
9554         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
9555         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
9556         * lisp/progmodes/octave.el (octave-goto-function-definition)
9557         (octave-find-definition-default-filename):
9558         Replace 't' with '_' in pcase.
9560         * lisp/emacs-lisp/pcase.el (pcase--u1):
9561         Paper-over today's bootstrap failure.
9563 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
9565         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
9567         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
9569         Better confirmation message in `find-alternate-file' (Bug#20830)
9570         * lisp/files.el (find-alternate-file'): Improve the confirmation
9571         message to show the buffer name.
9573         Better docstring for null. (Bug#20815)
9574         * src/data.c (null): Improves the docstring, saying what null returns
9575         when OBJECT is non-nil.
9577 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
9579         * lisp/net/newst-treeview.el: Use lexical-binding.
9581         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
9582         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
9583         New auxiliary function, extracted from filepos-to-bufferpos.
9584         Make sure it terminates.
9585         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
9586         Add support for the `exact' quality.
9588 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
9590         Identify feeds in newsticker treeview with :nt-feed property
9591         * lisp/net/newst-treeview.el:
9592         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
9594 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
9596         * lisp/emacs-lisp/pcase.el: Improve docs and error handling
9597         (pcase--self-quoting-p): Floats aren't self-quoting.
9598         (pcase): Tweak docstring.
9599         (pcase--u1): Deprecate the t pattern.  Improve error detection for
9600         the nil pattern.
9601         (\`): Tweak docstring.  Signal an error for unrecognized cases.
9602         (bug#20784)
9604 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
9606         Fix infloop in filepos-to-bufferpos
9607         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
9608         offset calculation, and make it conditional on the eol-type of the
9609         file's encoding.  (Bug#20825)
9611 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
9613         Fix handling of image cache refcounts.  (Bug#20802)
9614         This backports Eli Zaretskii's solution of this problem for W32
9615         to X and NS.
9616         * src/nsfns.m (image_cache_refcount): Define unconditionally.
9617         (unwind_create_frame): If the image cache's reference count
9618         hasn't been updated yet, do that now.
9619         (Fx_create_frame): Set image_cache_refcount unconditionally.
9620         * src/xfns.c (image_cache_refcount): Define unconditionally.
9621         (unwind_create_frame): If the image cache's reference count
9622         hasn't been updated yet, do that now.
9623         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
9624         unconditionally.
9625         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
9626         X and NS.
9628 2015-06-16  Nils Ackermann  <nils@ackermath.info>
9630         Improve reftex-label-regexps default value
9631         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
9632         keyvals label regexp more strict to better cope with unbalanced
9633         brackets common in math documents.
9635 2015-06-16  Glenn Morris  <rgm@gnu.org>
9637         * doc/emacs/calendar.texi (Format of Diary File):
9638         Move "nonmarking" from here...
9639         (Displaying the Diary): ... to here.
9641         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
9642         Swap the order of these nodes.
9643         * doc/emacs/emacs.texi: Update detailed menu for the above change.
9645         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
9646         Update date of examples.
9647         (Diary, Format of Diary File): Move example from former to latter.
9648         Reduce duplication.
9650         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
9651         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
9652         Don't set no-byte-compile in the outputs.
9653         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
9655 2015-06-15  Glenn Morris  <rgm@gnu.org>
9657         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
9658         * doc/emacs/calendar.texi (Diary, Format of Diary File):
9659         Update for above diary-file change.
9660         : * etc/NEWS: Mention this.
9662         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
9663         (apply-macro-to-region-lines): Use user-error.
9665         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
9666         (pages-directory-for-addresses): Doc fixes.
9668 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
9670         * lisp/info.el: Cleanup bytepos/charpos issues
9671         * lisp/international/mule-util.el: Use lexical-binding.
9672         (filepos-to-bufferpos): New function.
9673         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
9674         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
9675         (Info-read-subfile, Info-search): Use 0-based file positions.
9677         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
9678         (perl--syntax-exp-intro-keywords): New var.
9679         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
9680         (bug#20800).
9682 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
9684         Fix quoting when making derived mode docstring
9685         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
9686         Nest regexp-quote inside format, not the reverse.
9687         Problem reported by Artur Malabarba in:
9688         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
9690 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
9692         Fix current-iso639-language on MS-Windows
9693         * lisp/international/mule-cmds.el (set-locale-environment):
9694         Downcase the locale name before interning it.  This is so the
9695         'current-iso639-language' on MS-Windows matches the ':lang'
9696         property of font-spec objects.
9698         Limit Symbola usage some more
9699         * lisp/international/fontset.el (setup-default-fontset): Limit
9700         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
9701         (Bug#20727)
9703 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
9705         * lisp/emacs-lisp/map.el (map-let): Better docstring.
9707 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
9709         Spelling fixes
9711 2015-06-14  Glenn Morris  <rgm@gnu.org>
9713         * lisp/version.el (emacs-repository-version-git): Demote errors.
9714         Check result is a hash.
9716 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
9718         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
9719         Catch errors that happen before going async.  (Bug#20809)
9721 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
9723         Another improvement of documentation of set-fontset-font
9724         * doc/lispref/display.texi (Fontsets): Say explicitly that
9725         CHARACTER can be a single codepoint.
9726         * src/fontset.c (Fset_fontset_font): Doc fix.
9728         Another improvement for symbol and punctuation characters
9729         * lisp/international/fontset.el (setup-default-fontset): Exclude
9730         from Symbola character ranges for symbols and punctuation covered
9731         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
9732         installed and where its coverage of symbols and punctuation is
9733         known to be good.  (Bug#20727)
9735 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
9737         Some generic support for multi-mode indentation.
9738                 * lisp/progmodes/prog-mode.el (prog-indentation-context): New
9739                 variable.
9740                 (prog-first-column, prog-widen): New convenience functions.
9742 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
9744         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
9745         Don't assume that `tabulated-list-printer' will leave point at the
9746         end of the buffer.  (Bug#20810)
9748 2015-06-13  Glenn Morris  <rgm@gnu.org>
9750         Tweaks for getting repository version; a bit more like it was for bzr.
9751         * lisp/version.el (emacs-repository-version-git)
9752         (emacs-repository--version-git-1): New functions,
9753         split from emacs-repository-get-version.
9754         (emacs-repository-get-version): Make the second argument meaningful.
9756         * lisp/startup.el (command-line-1): Inform if skipping relative
9757         file names due to deleted PWD.
9759         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
9760         when starup directory is missing.  (Bug#18851)
9761         (errno.h): Include it.
9763 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
9765         Better fix for documenting `X as "`X"
9766         Fix suggested by Stefan Monnier.
9767         * lisp/help-fns.el (help-fns--signature):
9768         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
9769         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
9770         Don't treat `X specially, as help-fns--signature now handles this.
9772 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
9774         Improve the default fontset when Symbola is not installed
9775         * lisp/international/fontset.el (setup-default-fontset): Only
9776         prepend Symbola and FreeMono font specs for symbols and
9777         punctuation; do not replace the default spec for them.  This
9778         should have better results when Symbola/FreeMono are not
9779         installed.  (Bug#20727)
9781         Improve documentation of ':lang' in font specs
9782         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
9783         use of the ':lang' property of the font spec.
9784         * doc/emacs/frames.texi (Fonts): Document the language names that
9785         can be in the STYLE part of XLFD.
9786         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
9787         property.
9789         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
9791         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
9793         Revert last change in fontset.el
9794         * lisp/international/fontset.el (setup-default-fontset): Revert
9795         the change "Configure Symbola font only if installed", since font
9796         search is evidently not yet set up when this function is called.
9797         (Bug#20727)
9799 2015-06-12  Glenn Morris  <rgm@gnu.org>
9801         Ensure early startup warnings are visible at the end.  (Bug#20792)
9802         * lisp/emacs-lisp/warnings.el (display-warning):
9803         If startup isn't complete, delay the warning.
9804         * lisp/startup.el (normal-top-level, command-line):
9805         Let display-warning automatically handle the needed delays.
9806         Run delayed-warnings-hook.
9808         * lisp/version.el (emacs-repository-get-version):
9809         Avoid calling external executable if possible.  (Bug#20799)
9811 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
9813         Document `X as "`X", not as "(` X)"
9814         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
9815         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
9817         * src/print.c (print_object): Minor simplification.
9819 2015-06-12  Glenn Morris  <rgm@gnu.org>
9821         * src/buffer.c (init_buffer): Add final newline to message.
9823 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
9825         Configure Symbola font only if installed
9826         * lisp/international/fontset.el (setup-default-fontset):
9827         Don't specify the Symbola font if it's not installed.
9828         Likewise for FreeMono.  (Bug#20727)
9830 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
9832         Configure Symbola font only for symbols and punctuation
9833         * lisp/international/fontset.el (setup-default-fontset): Leave
9834         only symbols and punctuation in the fontset setup for Symbola
9835         font; remove "Greek and Coptic" and "Cyrillic Supplement".
9836         (Bug#20798)
9838 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
9840         Fix crash in fontset-info
9841         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
9842         non-nil.
9844 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
9846         Port to Solaris 10 sparc + Sun C 5.13
9847         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
9848         Adjust to process.c change.
9849         * src/process.c (create_process): Declare volatile variables at
9850         top level of this function, so that they're less likely to be
9851         reused later in the function in the code executed by the vforked
9852         child.  Do not declare locals used only in the vforked child, as
9853         they might share memory with locals still live in the parent.
9854         Instead, use the same variables in the child as in the parent.
9855         This works around a subtle bug that causes a garbage collector
9856         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
9858 2015-06-12  Glenn Morris  <rgm@gnu.org>
9860         * lisp/startup.el (normal-top-level): Don't let *Messages* get
9861         a nil default-directory.
9863 2015-06-11  Glenn Morris  <rgm@gnu.org>
9865         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
9867         Some progress towards starting with PWD deleted.  (Bug#18851)
9868         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
9869         * lisp/startup.el (normal-top-level, command-line-1):
9870         * lisp/minibuffer.el (read-file-name-default):
9871         Handle default-directory being nil.
9873 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
9875         Fix "not a tty" bug on Solaris 10
9876         * configure.ac (PTY_OPEN): Define to plain 'open'
9877         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
9878         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
9879         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
9880         hosts that call grantpt which does its work via a setuid subcommand
9881         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
9882         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
9883         seems relevant in that case too.
9885 2015-06-11  Juri Linkov  <juri@linkov.net>
9887         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
9888         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
9889         (Bug#20785)
9891 2015-06-11  Glenn Morris  <rgm@gnu.org>
9893         * lisp/international/characters.el (char-script-table): Fix typo.
9895 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
9897         Fix quoting of help for functions with odd names
9898         While investigating Bug#20759, I discovered other quoting problems:
9899         C-h f mishandled characters like backslash and quote in function names.
9900         This fix changes the behavior so that 'C-h f pcase RET' now
9901         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
9902         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
9903         in src/lread.c's read1 function says that the backslash will be
9904         needed starting in Emacs 25, which implies that 'format' is
9905         correct and the old pcase documention was wrong to omit the backslash.
9906         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
9907         * lisp/help-fns.el (help-fns--signature):
9908         * lisp/help.el (help-add-fundoc-usage):
9909         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
9910         Use help--make-usage-docstring rather than formatting
9911         help-make-usage.
9912         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
9913         Return raw docstring.
9914         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
9915         raw docstring.  Take more care to distinguish raw from cooked dstrings.
9916         (describe-function-1): Let help-fns--signature substitute
9917         command keys.
9918         * lisp/help.el (help--docstring-quote): New function.
9919         (help-split-fundoc): Use it, to quote funny characters more
9920         systematically.
9921         (help--make-usage): Rename from help-make-usage, since this
9922         should be private.  Leave an obsolete alias for the old name.
9923         (help--make-usage-docstring): New function.
9924         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
9926 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
9928         * lisp/thingatpt.el (in-string-p): Revert last change,
9929         since in-string-p is not used in thingatpt.el but only from outside.
9930         Also, use lexical binding.
9932 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
9934         * lisp/let-alist.el (let-alist--deep-dot-search): Fix cons
9935         * test/automated/let-alist.el (let-alist-cons): Test it.
9937 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
9939         * src/syntax.c (Fbackward_prefix_chars): Reword docstring
9941 2015-06-10  Glenn Morris  <rgm@gnu.org>
9943         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
9945         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
9946         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
9947         * admin/gitmerge.el (gitmerge-commit-message):
9948         Exclude "skipped" messages from ChangeLog once again.
9950         Slight namespace cleanup for thingatpt.el.
9951         * lisp/thingatpt.el (thing-at-point--in-string-p)
9952         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
9953         (thing-at-point--read-from-whole-string): Rename from
9954         old versions without "thing-at-point--" prefix.
9955         Keep old versions as obsolete aliases.  Update all uses.
9957         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
9958         Move requiring of finder from here...
9959         (checkdoc-package-keywords): ... to here.
9961         Use 'user-error' in a few calendar files.
9962         * lisp/calendar/appt.el (appt-add):
9963         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
9964         (calendar-generate):
9965         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
9966         Replace 'error' with 'user-error'.
9968         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
9970         * lisp/files-x.el (add-file-local-variable):
9971         Special-case 'lexical-binding'.  (Bug#20641)
9973         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
9974         No longer autoload.
9975         * doc/misc/autotype.texi (Executables):
9976         Undocument executable-self-display.
9978         * lisp/progmodes/executable.el (executable-self-display):
9979         Use non-obsolete tail syntax.  (Bug#20779)
9980         (executable-self-display): Doc update.
9982 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
9984         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
9985         (finder-known-keywords): Silence byte-compiler.
9987 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
9989         * lisp/simple.el (eval-expression): Macroexpand before evaluating (bug#20730)
9991         * lisp/progmodes/sh-script.el: Better handle nested quotes
9992         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
9993         (sh-font-lock-quoted-subshell): Make sure double quotes within single
9994         quotes don't mistakenly end prematurely the surrounding string.
9996         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
9998 2015-06-09  Glenn Morris  <rgm@gnu.org>
10000         * test/automated/Makefile.in (ELFILES): Sort.
10002         * Makefile.in (SUBDIR_MAKEFILES):
10003         * lwlib/Makefile.in (WARN_CFLAGS):
10004         Use built-in Make functions rather than echo+sed.
10006 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
10008         Update char-script-table
10009         * lisp/international/characters.el (char-script-table): Update
10010         from Unicode 8.0 Draft.
10012         Improve font selection for punctuation and other symbols
10013         * src/fontset.c (face_for_char): If the character's script is
10014         'symbol', and the font used for ASCII face has a glyph for it, use
10015         the font for the ASCII face instead of searching the fontsets.
10016         This comes instead of NS-specific code that used the current
10017         face's font instead, which is now disabled due to undesirable
10018         consequences.  (Bug#20727)
10020 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
10022         Skip past `#' to find BEG
10023         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Skip
10024         past `#' to find BEG (bug#20771).
10025         * test/automated/elisp-mode-tests.el
10026         (elisp-completes-functions-after-hash-quote): New test.
10028 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
10030         Fix compilation warning/error in --without-x builds
10031         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
10032         code on HAVE_WINDOW_SYSTEM.
10034         Improve the default fontset wrt symbols
10035         * lisp/international/fontset.el (setup-default-fontset): Better
10036         setup of fontset-default for symbols: use Symbola and FreeMono.
10037         (Bug#20727)
10039 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
10041         Add new command checkdoc-package-keywords
10042         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag): New
10043           defcustom.
10044         (checkdoc-list-of-strings-p): Add doc.
10045         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
10046         non-nil, call `checkdoc-package-keywords'.
10047         (checkdoc-get-keywords): New defun.
10048         (checkdoc-package-keywords): New command. Warns if the current file
10049         has package.el-style keywords that aren't in `finder-known-keywords'.
10050         * etc/NEWS: Add entry.
10052 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
10054         Avoid crashes when key-binding is called from a timer
10055         * src/keymap.c (Fkey_binding): Don't segfault if called with an
10056         empty vector as KEY.  (Bug#20705)
10058         Fix a thinko in arc-mode.el
10059         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
10060         non-Zip64 case.  (Bug#20769)
10062 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
10064         * lisp/emacs-lisp/package.el (package-delete): Make interactive
10066 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
10068         checkdoc.el (checkdoc-file): New function
10069         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When
10070           `checkdoc-diagnostic-buffer' is set to "*warn*", print the warning
10071           to the standard output.
10072         (bug#20754)
10074 2015-06-07  Glenn Morris  <rgm@gnu.org>
10076         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
10078         * src/font.c (syms_of_font) <font-log>: Doc fix.
10080         Remove the obsolete leading "*" from some C doc strings.
10081         * src/coding.c (syms_of_coding):
10082         * src/font.c (syms_of_font): Remove leading "*" from docs.
10083         * lisp/cus-start.el (enable-character-translation): Add it.
10085 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
10087         Move gen_origin from program to data
10088         That way, 'make change-history' needs to change only ChangeLog.2,
10089         instead of having to change two files.
10090         * ChangeLog.2: Add commit info for range that this file covers.
10091         * Makefile.in (new_commit_regexp): New macro.
10092         (change-history-nocommit): Simplify, by putting what used to be
10093         the gen_origin value into the data (ChangeLog.2) rather than
10094         into the program (gitlog-to-emacslog).
10095         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
10096         the input file (e.g., ChangeLog.2) rather than by having a
10097         constant in the program.  Substitute it into the output.
10099 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
10101         Escape any quotes in the function name
10102         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
10103         function name (bug#20759).
10105 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
10107         Adapt 'struct timespec' to next release of MinGW runtime
10108         * nt/inc/ms-w32.h (struct timespec): Don't declare if
10109         __struct_timespec_defined is defined.
10111 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
10113         Merge from gnulib
10114         This incorporates:
10115         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
10116         2015-06-05 stdio: Don't redefine gets when using C++
10117         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
10118         2015-06-02 file-has-acl: fix build on Mac OS X 10
10119         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
10120         2015-06-01 pthread_sigmask: discount system version if a simple macro
10121         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
10122         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
10123         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
10124         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
10125         * lib/gnulib.mk: Regenerate.
10127 2015-06-06  Juri Linkov  <juri@linkov.net>
10129         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
10130         before calling grep-compute-defaults because now it affects the
10131         command lines computed in grep-compute-defaults. (Bug#20728)
10133 2015-06-06  Glenn Morris  <rgm@gnu.org>
10135         Address some compilation warnings.
10136         * lisp/international/mule-cmds.el (w32-get-console-codepage)
10137         (w32-get-console-output-codepage):
10138         * lisp/progmodes/elisp-mode.el (xref-collect-references):
10139         * lisp/version.el (cairo-version-string): Declare.
10140         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
10142 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
10144         Fix display when a font claims large values of ascent and descent
10145         This fixes bug#20628.
10146         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
10147         coordinate of a hollow cursor glyph when the original glyph's
10148         ascent is too small.
10149         (get_font_ascent_descent, normal_char_ascent_descent)
10150         (normal_char_height): New functions.
10151         (handle_single_display_spec, append_space_for_newline)
10152         (calc_pixel_width_or_height, produce_stretch_glyph)
10153         (calc_line_height_property): Use normal_char_ascent_descent and
10154         normal_char_height.
10155         (x_produce_glyphs): When font-global values of ascent and descent
10156         are too large, use per-character glyph metrics instead, if
10157         possible.  But don't allow the glyph row's ascent and descent
10158         values become smaller than the values from the metrics of the
10159         font's "normal" character.
10160         * src/xftfont.c (xftfont_draw):
10161         * src/w32font.c (w32font_draw): Correct the values of ascent and
10162         descent used to draw glyphless characters' hex code in a box.
10163         * src/xterm.c (x_draw_glyph_string_background):
10164         * src/xdisp.c (x_produce_glyphs):
10165         * src/w32term.c (x_draw_glyph_string_background):
10166         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
10167         to detect fonts whose global ascent and descent values are too
10168         large to be used in layout decision, and redraw the background
10169         when that happens.
10170         * src/dispextern.h (FONT_TOO_HIGH): New macro.
10171         (get_font_ascent_descent): Add prototype.
10172         * src/xterm.c (x_new_font):
10173         * src/w32term.c (x_new_font):
10174         * src/nsterm.m (x_new_font):
10175         * src/font.c (font_open_entity):
10176         * src/composite.c (composition_gstring_width): Use
10177         get_font_ascent_descent to obtain reasonable values for ascent and
10178         descent of a font.
10180 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
10182         Add assertion in adjust_point_for_property
10183         * src/keyboard.c (adjust_point_for_property): Add eassert for
10184         current buffer being shown in selected window.
10186 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
10188         Replace uses of in-string-p; make it obsolete
10189         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
10190         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
10192 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
10194         Fix Dired display of an explicit list of files by ls-lisp.el
10195         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
10196         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
10197         correct for when displaying individual files separately, not as
10198         part of listing a directory, in which case these values are not
10199         recomputed by 'ls-lisp-insert-directory', but used verbatim.
10201         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
10203 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
10205         Do not adjust point in a non-selected window
10206         * src/keyboard.c (command_loop_1): Do not adjust point when
10207         current buffer is not shown in selected window (Bug#20590).
10209         * etc/DEBUG: Mention 'maybe_call_debugger'
10211 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
10213         Fix a unit test for map.el
10214         * test/automated/map-tests.el (test-map-let): Fix the test to work
10215         with the new syntax of `map-let'.
10217         * lisp/emacs-lisp/map.el (map-let): Better docstring.
10219         Better syntax for the map pcase pattern
10220         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
10221         bindings of the form (KEY PAT) or SYMBOL. KEY is not quoted.
10223         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
10225         Fix a byte-compiler error in map-put and map-delete
10226         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
10227         called with a symbol.
10229 2015-06-05  Glenn Morris  <rgm@gnu.org>
10231         * admin/gitmerge.el (gitmerge-commit-message):
10232         Revert to including "skipped" messages in ChangeLog once again.
10234 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
10236         Use string> instead of equiv lambda with string<
10237         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
10238         lambda with string<.
10240 2015-06-05  Glenn Morris  <rgm@gnu.org>
10242         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
10243         (map--delete-array): Fix typo.
10245         * test/automated/map-tests.el: Replace "assert" with "should".
10247         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
10248         (SUBDIRS_REL): Derive from SUBDIRS.
10250         Tweak some build messages.
10251         * lisp/Makefile.in ($(lisp)/loaddefs.el):
10252         * lisp/cus-dep.el (custom-make-dependencies):
10253         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
10254         * lisp/international/titdic-cnv.el (batch-titdic-convert):
10255         Don't say how to compile.
10257 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
10259         Omit U+0332 COMBINING LOW LINE in previous change
10260         It turns out that it does not work on Ubuntu 15.04.
10262         Fix transliteration of Bahá'í months
10263         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
10264         Improve quality of Latin transliteration of Bahá'í month names.
10266         Fix curved quotes in a few places
10267         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
10268         The strings in question are not doc strings, so this partially
10269         undoes the recent change that assumed they were doc strings.
10270         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
10271         * lisp/info.el (Info-finder-find-node):
10272         Use curved quotes.
10273         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
10274         Also allow curved quotes in doc strings.
10276 2015-06-04  Glenn Morris  <rgm@gnu.org>
10278         * lisp/Makefile.in (AM_V_at): Add missing definition.
10280         * lisp/Makefile.in: Quieten output a bit.
10281         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
10282         Don't echo directories, since the commands we invoke print them.
10284         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
10285         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
10286         (SUBDIRS_SUBDIRS): New variables.
10287         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
10288         Remove.
10289         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
10290         (update-subdirs, compile-main, compile-clean):
10291         Replace "setwins" usage with new "SUBDIRS" variables.
10293         * lisp/vc/compare-w.el (compare-windows-get-window-function):
10294         Fix :version tag.
10296 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10298         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
10300         Undo removal of x_clear_area call on expose for GTK3 or cairo.
10301         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]: Clear
10302         exposed area.  (Bug#20677)
10304 2015-06-04  Glenn Morris  <rgm@gnu.org>
10306         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
10308         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
10310         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
10311         Rename from quail-lao-update-translation, since lao.el defines that.
10313 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
10315         Handle new-style advice in find-funct
10316         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
10317         Handle new-style advice.  Return the symbol's function definition.
10318         (Bug#20718)
10319         (find-function-library): Update accordingly.
10321 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
10323         Merge branch 'map'
10325         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
10327         Add new function string-greaterp
10328         * lisp/subr.el (string-greaterp): New function.  Also aliased to
10329         `string>'.
10330         * test/automated/subr-tests.el (string-comparison-test): Add unit
10331         tests for `string>'and `string<'.
10332         * src/fns.c (string-lessp): Better docstring.
10334 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
10336         Fix timezone-related functions on MS-Windows
10337         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
10338         'xputenv', even if no reallocation of tzvalbuf was necessary.
10339         This fixes a bug in timezone-related functions on MS-Windows.
10340         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
10342 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
10344         Don't pass raw directory name to 'error'
10345         * lisp/files.el (basic-save-buffer-2): Avoid format error if
10346         a directory name contains a string like "%s".
10348 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
10350         Override 'grep --color=always'
10351         * lisp/progmodes/xref.el (xref-collect-matches):
10352         Override --color=always in grep-find-template.
10354 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
10356         Fix error introduced recently in file-notify-tests.el
10357         * test/automated/file-notify-tests.el
10358         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
10359         (file-notify--deftest-remote): Revert previous patch, not
10360         necessary anymore.
10362 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
10364         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
10365         Starting from a display string after a newline, point went to the
10366         previous line.  Also, fix an inadvertent use of a buffer position
10367         with FETCH_BYTE.  (Bug#20701)
10369 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
10371         Instrument file-notify-test.el in order to catch hydra error.
10372         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
10373         Wrap body by `ignore-case', in order to trap non-local errors.
10375 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10377         Undo previous changes in non-toolkit scroll bar drawing.
10378         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
10379         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
10381 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
10383         * .gitignore: Also ignore doc/*/*/*.html and .ps.
10385         Support quotes 'like this' in info files
10386         This is possible when 'makeinfo --disable-encoding' is used
10387         in Texinfo 5.
10388         * lisp/calc/calc-help.el (calc-describe-thing):
10389         * lisp/gnus/gnus-art.el (gnus-button-alist):
10390         * lisp/info.el (Info-find-index-name):
10391         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
10392         Also support quotes 'like this'.
10393         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
10394         * lisp/finder.el (finder-font-lock-keywords): Remove var that
10395         hasn't been used in years, instead of bothering to fix its quoting.
10397 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
10399         * .gitignore: Remove !test/etags/html-src/*.html.
10400         It's no longer needed, since *.html was removed.  Sort.
10402 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
10404         Restore <D> instead of '.' in grep-find-template
10405         * lisp/cedet/semantic/symref/grep.el
10406         (semantic-symref-grep-use-template): Update a comment.
10407         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
10408         instead of '.' in grep-find-template (bug#20719).
10409         (rgrep): Pass nil as the directory to rgrep-default-command.
10410         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
10411         default value for DIR.
10412         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
10413         workaround.
10415 2015-06-02  Glenn Morris  <rgm@gnu.org>
10417         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
10419         * configure.ac (emacs_config_features): Add Cairo.
10421         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
10423 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
10425         Ensure, that autorevert works for remote files in file-notify-tests.el
10426         * test/automated/file-notify-tests.el (file-notify--test-desc):
10427         New defvar.
10428         (file-notify--test-remote-enabled)
10429         (file-notify-test00-availability, file-notify-test01-add-watch)
10430         (file-notify-test02-events): Use it.
10431         (file-notify--test-event-test): Check proper descriptor.
10432         (file-notify-test03-autorevert): Ensure, that
10433         `visited-file-modtime' has changed.
10434         (Bug#20392)
10436 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
10438         Add a pcase pattern for maps and `map-let' based on it
10439         * lisp/emacs-lisp/map.el (map-let): New macro.
10440         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
10441         * test/automated/map-tests.el: New test for `map-let'.
10443 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
10445         Reuse rgrep mechanics in xref-find-regexp
10446         * lisp/progmodes/grep.el (rgrep-default-command):
10447         Extract from `rgrep'.
10448         * lisp/progmodes/xref.el (xref-collect-references): Split from
10449         `xref-collect-matches'.  Only handle the case of symbol search.
10450         (xref-collect-matches): Instead of Semantic Symref, use
10451         `rgrep-default-command', to take advantage of its directory and
10452         file ignore settings.
10453         (xref--collect-match): Remove the last argument, leaving the
10454         regexp construction up to the caller.
10455         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
10456         Change to take the xref-collect- function to use as an argument.
10457         (elisp-xref-find): Update accordingly.
10458         * lisp/progmodes/etags.el (etags--xref-find-matches)
10459         (etags-xref-find): Same.
10461         Move xref-elisp-location to elisp-mode.el
10462         * lisp/progmodes/xref.el (xref-elisp-location)
10463         (xref-make-elisp-location, xref-location-marker): Remove here.
10464         (xref--xref): Don't limit the type of the location slot.
10465         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
10466         Define as a cl-struct here.
10467         (xref-location-marker): Move here.
10469 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
10471         Minor tweaks for .gitignore
10472         * .gitignore: Don't ignore versioned *.html and *.ps files.  Don't
10473         ignore admin/notes/tags that might be ignored as TAGS on
10474         case-insensitive filesystems.  (Bug#20710)
10476 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
10478         Generate curved quotes in ert doc
10479         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
10480         (ert-results-mode-menu)
10481         (ert-results-pop-to-backtrace-for-test-at-point)
10482         (ert-results-pop-to-messages-for-test-at-point)
10483         (ert-results-pop-to-should-forms-for-test-at-point)
10484         (ert-describe-test):
10485         Quote ‘like this’, not `like this', when generating doc strings
10486         and the like.
10487         * test/automated/ert-x-tests.el (ert-test-describe-test):
10488         Allow quoting ‘like this’.
10490 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
10492         Add test for previous commit
10493         * test/automated/replace-tests.el: New file.
10494         (query-replace--split-string-tests): Add test for previous commit.
10496         Avoid confusion in query-replace history when replacing NUL chars
10497         * lisp/replace.el (query-replace--split-string): New function.
10498         (query-replace-read-from): Rely on the 'separator' property
10499         instead of searching for the NUL character (Bug#20690).
10501 2015-06-02  Glenn Morris  <rgm@gnu.org>
10503         Merge from origin/emacs-24
10504         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
10506         * admin/gitmerge.el (gitmerge-commit-message):
10507         Exclude "skipped" messages from ChangeLog.
10509 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
10511         Sync with Tramp repository
10512         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
10513         messages.
10514         (tramp-handle-make-auto-save-file-name): When calling
10515         `make-auto-save-file-name' internally, make sure it uses Unix-like
10516         behavior, not Windows-like behavior.
10517         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
10518         the local case, because "chown" might fail on w32.
10519         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
10520         for XEmacs.
10522 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
10524         MS-Windows followup for batch stdout/stderr output changes
10525         * lisp/international/mule-cmds.el (set-locale-environment): In
10526         batch mode, use console codepages for keyboard and terminal
10527         encoding.  (Bug#20545)
10529         Update .gitattributes for DOS EOL files
10530         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
10531         CRLF end-of-line format.
10533         NS equivalents of xterm.c and w32term.c changes
10534         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
10535         glyph string background also when the font in use claims
10536         preposterously large global height value.  Helps to remove
10537         artifacts left from previous displays when glyphless characters
10538         are displayed as hex code in a box.
10539         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
10540         value for FRAME_LINE_HEIGHT, even when a font claims very large
10541         value for its height.
10543 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
10545         Avoid grave accent quoting in stderr diagnostics
10546         A few Emacs diagnostics go directly to stderr, and so can't easily
10547         contain curved quotes (as non-UTF-8 locales might mishandle them).
10548         Instead of bothering to add support for this rarity, reword the
10549         diagnostics so that they don't use grave accent to quote.
10550         * src/alloc.c (mark_memory): Fix comment.
10551         * src/buffer.c (init_buffer):
10552         * src/dispnew.c (init_display):
10553         * src/emacs.c (main, sort_args):
10554         * src/lread.c (dir_warning):
10555         * src/term.c (init_tty):
10556         * src/unexmacosx.c (unexec):
10557         * src/xfns.c (select_visual):
10558         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
10559         Reword stderr diagnostics to avoid quoting `like this'.
10560         * src/unexmacosx.c: Include errno.h.
10561         * src/xfns.c (select_visual): Encode value for locale.
10563 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
10565         Treat batch stdout/stderr like standard display
10566         Calls like (print FOO) could generate improperly encoded or
10567         hard-to-read output if FOO contains characters outside the system
10568         locale.  Fix this by treating batch stdout and stderr like
10569         interactive standard display, when it comes to transliterating and
10570         encoding characters (Bug#20545).
10571         * doc/emacs/mule.texi (Communication Coding):
10572         * doc/lispref/display.texi (Active Display Table):
10573         * doc/lispref/nonascii.texi (Locales):
10574         * etc/NEWS:
10575         * src/coding.c (syms_of_coding):
10576         * src/dispnew.c (syms_of_display):
10577         Document this.
10578         * src/print.c: Include disptab.h.
10579         (printchar_to_stream): New function, with much of the guts of the
10580         old Fexternal_debugging_output, except this one also uses the
10581         standard display table.
10582         (printchar, strout, Fexternal_debugging_output): Use it.
10584 2015-05-31  Glenn Morris  <rgm@gnu.org>
10586         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
10588 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
10590         Remove unused DEFSYMs
10591         Remove DEFSYMs that aren't used at the C level.  Also:
10592         * src/decompress.c (Qzlib_dll):
10593         * src/font.c (Qunicode_sip):
10594         * src/frame.c (Qtip_frame):
10595         * src/ftfont.c (Qserif):
10596         * src/gnutls.c (Qgnutls_dll):
10597         * src/xml.c (Qlibxml2_dll):
10598         Move from here ...
10599         * src/w32fns.c (syms_of_w32fns): ... to here,
10600         as these are used only on MS-Windows.
10602 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
10604         Use another default value for tramp-histfile-override
10605         * lisp/net/tramp-sh.el (tramp-histfile-override):
10606         Use ".tramp_history" as default.
10607         Fixes: debbugs:#20446
10609 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
10611         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
10613 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
10615         * etc/NEWS: Add an entry about map.el
10617         Improve the docstring of functions in map.el
10618         Since a map is not a data structure but a concept, adding information
10619         about the possible types of maps can be useful information.
10620         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
10621         each public function.
10623 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
10625         Faster implementation of map-empty-p
10626         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
10627         specific tests depending on the type of the map.
10629         * lisp/emacs-lisp/map.el: Better docstrings.
10631 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
10633         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda
10635 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
10637         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
10639         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
10641         Fix a false negative in `map-elt' with alists and values being nil
10642         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
10643         found but its associated value is nil, do not return the default
10644         value.
10645         * test/automated/map-tests.el: Add a regression test.
10647 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
10649         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
10651         Do not signal an error when trying to delete a key from an array
10652         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
10653         the key is present to avoid signaling an error.
10654         * test/automated/map-tests.el: Add a test for deleting non-existing
10655         keys from maps.
10657         * lisp/emacs-lisp/map.el: Better docstring.
10659         Minor improvement in map-elt.
10660         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
10661         doing a lookup in arrays, but check the boundaries of the array
10662         instead.
10663         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
10664         and a negative integer as key.
10666 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
10668         * test/automated/map-tests.el: Refactoring of test methods.
10670         * test/automated/map-tests.el: Renamed from map-test.el.
10672 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
10674         * lisp/emacs-lisp/map.el (map-into): Better error message.
10676         * lisp/emacs-lisp/map.el: Removes byte-compilation warnings.
10678         Throw an error when converting a map into an unknown map type
10679         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is not valid.
10680         * test/automated/map-test.el: Add a regression test.
10682         New library map.el similar to seq.el but for mapping data structures.
10683         * test/automated/map-test.el: New file.
10684         * lisp/emacs-lisp/map.el: New file.
10686 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
10688         Make sure there's no explicit tag name
10689         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
10690         there's no explicit tag name (bug#20629).
10692 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
10694         Remove format2
10695         * src/editfns.c, src/lisp.h (format2): Remove.
10696         It is more trouble than it's worth, now that we have CALLN.
10697         This is just a minor refactoring.
10698         * src/buffer.c (Fkill_buffer):
10699         * src/dbusbind.c (XD_OBJECT_TO_STRING):
10700         * src/fileio.c (barf_or_query_if_file_exists):
10701         Adjust to format2 going away.
10703         Don't misencode C-generated messages
10704         Also, be more consistent about calls to 'Fmessage' vs 'message'.
10705         * src/alloc.c (Fgc_status):
10706         Prefer AUTO_STRING to build_string for Fmessage call.
10707         * src/data.c (Fmake_variable_buffer_local)
10708         (Fmake_local_variable, Fmake_variable_frame_local):
10709         * src/doc.c (store_function_docstring):
10710         Use Fmessage, not message, since the argument can contain
10711         non-ASCII characters, and this can cause the resulting message
10712         to be incorrectly encoded for the current environment.
10713         * src/fns.c (maybe_resize_hash_table):
10714         * src/xselect.c (x_clipboard_manager_save_all):
10715         Use message, not Fmessage, since Fmessage's power isn't needed here.
10716         * src/process.c (Fmake_network_process): Reword message to avoid %s.
10717         * src/xdisp.c (vmessage): Document restrictions on message contents.
10718         (message_nolog) [false]: Remove unused code.
10720         Use \r rather than ^M in string literals
10721         This is less likely to cause problems on platforms that
10722         use CRLF (or CR!) termination for lines.
10724         Update .gitattributes to match current sources
10725         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
10726         * .gitattributes: Accommodate tests that insist on DOS format.
10727         Remove test/automated/data/decompress/foo-gzipped.
10728         Add etc/e/eterm-color.
10730 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
10732         Document 'face-ignored-fonts'
10733         * doc/emacs/mule.texi (Modifying Fontsets): Document
10734         face-ignored-fonts.  (Bug#20628)
10736         Add etags test for the new -Q option
10737         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
10738         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
10739         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
10740         test-case changes below.
10741         * test/etags/ETAGS.good_6: New file.
10742         * test/etags/cp-src/x.cc: New file.
10743         * test/etags/Makefile (CPSRC): Add x.cc.
10744         (check): Add one more test, for -Q.
10746 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
10748         Use list for the tags completion table, not obarray
10749         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
10750         list instead of an obarray
10751         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
10752         (tags-completion-table): Combine those lists.
10753         (tags-completion-table): Update the docstring.
10755 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
10757         Restore EOL format testing in etags
10758         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
10759         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
10760         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
10761         test-case changes below.
10762         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
10763         * test/etags/cp-src/c.C (B): Add back stray CR character.
10764         * test/etags/c-src/dostorture.c: Add back.
10765         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
10767 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
10769         Declare Emacs on MS-Windows to be DPI-aware
10770         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
10771         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
10772         This avoids Windows entering compatibility mode for Emacs,
10773         which causes fonts to look less nice.
10775 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
10777         Improve Tramp traces.
10778         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
10779         * lisp/net/tramp.el (tramp-debug-message): Use it.
10781 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
10783         backup-buffer minor reworking of internals
10784         * lisp/files.el (backup-buffer): Rework to avoid a couple of
10785         unused locals inadvertently introduced in the previous change.
10787         backup-buffer now reports .emacs.d/%backup% ills
10788         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
10789         fails due to disk space exhaustion or whatever, do not pretend
10790         that it succeeded.  More generally, do a better job of checking
10791         for I/O failures, and limit the scope of the condition-case to
10792         just the operations where file errors should be caught and ignored
10793         (Bug#20595).  Also, don't bother trying to delete later backups if
10794         an earlier deletion fails, as this is a sign of trouble and it's
10795         better to stop when there's trouble.
10797         copy-file now truncates output after writing
10798         * src/fileio.c (Fcopy_file): Truncate output after writing rather
10799         than before.  This is more likely to work than truncation before
10800         writing, if the file system is out of space or the user is over
10801         disk quota (Bug#20595).  Also, check for read errors.
10803 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
10805         * lisp/emacs-lisp/package.el: Don't load from parent dir
10806         (package-load-all-descriptors): Don't load descriptors from
10807         directories above the package directories.
10809 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
10811         Merge from gnulib
10812         This incorporates the following (Bug#20681):
10813         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
10814         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
10815         * lib/set-permissions.c: Copy from gnulib.
10817 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
10819         Improve Tramp traces.
10820         * lisp/net/tramp.el (tramp-call-process-region): New defun.
10821         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
10823 2015-05-29  Glenn Morris  <rgm@gnu.org>
10825         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
10827 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
10829         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
10830         The signature was changed in the cairo branch, merged on 2015-05-23.
10831         This oversight broke compiling only the non-toolkit X version.
10833 2015-05-29  Samer Masterson  <samer@samertm.com>
10835         * doc/lispref/os.texi: Update initial-buffer-choice docs.
10837 2015-05-29  Glenn Morris  <rgm@gnu.org>
10839         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
10840         Mark as an expected failure.
10842 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
10844         Change package test to look for curved quotes
10845         * test/automated/package-test.el (package-test-describe-package)
10846         (package-test-signed): Search for curved single quotes as well as
10847         for grave accent and apostrophe.
10849 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
10851         gnus-art.el: Re-revert last change
10852         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
10853         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
10855 2015-05-28  Samer Masterson  <samer@samertm.com>
10857         Show files when `initial-buffer-choice' is non-nil
10858         * startup.el (command-line-1): When Emacs is given a file as an
10859         argument and `initial-buffer-choice' is non-nil, display both the file
10860         and `initial-buffer-choice'.  For more than one file, show
10861         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
10862         commands out of the command line arg parser.
10863         (initial-buffer-choice): Clarify docstring.
10865 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
10867         Fix last commit
10868         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
10869         (gnulib module qcopy-acl): Add back, as it is harmless.  This
10870         minimizes differences wrt lib/gnulib.mk.
10872         Fix the MS-Windows build as followup to gnulib update
10873         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
10874         set-permissions.c, as they don't compile on MinGW.
10875         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
10877 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
10879         Revert my change to gnus-art.el
10880         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
10881         It wasn't that important, and it caused a Gnus build to fail.  See:
10882         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
10884         New minor mode Electric Quote
10885         This lets you easily insert quotes ‘like this’ by typing
10886         quotes `like this', and similarly you can easily insert
10887         quotes “like this” by typing quotes ``like this'' (Bug#20545).
10888         * doc/emacs/basic.texi (Inserting Text):
10889         * doc/emacs/modes.texi (Minor Modes):
10890         * etc/NEWS: Document it.
10891         * doc/emacs/text.texi (Quotation Marks): New section.
10892         * lisp/electric.el (electric-quote-comment)
10893         (electric-quote-string, electric-quote-paragraph):
10894         New custom vars.
10895         (electric--insertable-p)
10896         (electric-quote-post-self-insert-function): New functions.
10897         (electric-quote-mode, electric-quote-local-mode): New minor modes.
10898         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
10899         Add curved single quotes to electric-pair-text-pairs.
10900         Set electric-quote-string in this buffer.
10902         A few more doc string fixes (Bug#20385)
10904         Accept curved quotes in doc strings
10905         * lisp/info-look.el (info-lookup-guess-custom-symbol):
10906         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
10908         Generate curved quotes in pseudo-info nodes
10909         * lisp/info.el (Info-virtual-index-find-node)
10910         (Info-virtual-index, Info-apropos-find-node, info-apropos):
10911         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
10913         Fix minor quoting problems in doc strings
10914         Most of these fixes involve escaping grave accents that are
10915         actually intended to be grave accents, not left quotes.
10916         (Bug#20385)
10918         Support curved quotes in doc strings
10919         Emacs's traditional doc string style has been to quote symbols
10920         `like this'.  This worked well on now-obsolete terminals where
10921         ` and ' were symmetric quotes, but nowadays curved quotes
10922         ‘like this’ look better.  Support quoting the new way too.
10923         (Bug#20385)
10924         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
10925         ‘like-this’ as well as `like-this'.
10926         * etc/NEWS: Mention this.
10927         * lisp/cedet/mode-local.el (overload-docstring-extension)
10928         (mode-local-print-binding, mode-local-describe-bindings-2):
10929         * lisp/cus-theme.el (describe-theme-1):
10930         * lisp/descr-text.el (describe-text-properties-1, describe-char):
10931         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
10932         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
10933         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
10934         (eieio-help-constructor):
10935         * lisp/emacs-lisp/package.el (describe-package-1):
10936         * lisp/faces.el (describe-face):
10937         * lisp/help-fns.el (help-fns--key-bindings)
10938         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
10939         (help-fns--interactive-only, describe-function-1):
10940         (describe-variable):
10941         * lisp/help.el (describe-mode):
10942         * lisp/international/mule-cmds.el (describe-input-method)
10943         (describe-language-environment):
10944         * lisp/international/mule-diag.el (describe-character-set)
10945         (print-coding-system-briefly, list-input-methods)
10946         (list-input-methods-1):
10947         Insert curved quotes rather than grave accent and apostrophe.
10948         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
10949         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
10950         (checkdoc-proper-noun-region-engine):
10951         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
10952         (lisp-cl-font-lock-keywords-2):
10953         * lisp/finder.el (finder-font-lock-keywords):
10954         * lisp/gnus/gnus-art.el (gnus-button-alist):
10955         * lisp/help-fns.el (help-do-arg-highlight)
10956         (describe-function-1, describe-variable):
10957         * lisp/help-mode.el (help-xref-symbol-regexp)
10958         (help-xref-info-regexp, help-xref-url-regexp):
10959         * lisp/help.el (describe-mode):
10960         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
10961         * lisp/wid-edit.el (widget-documentation-link-regexp):
10962         Parse symbols quoted ‘like-this’ as well as `like-this'.
10963         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
10964         Add "‘" and "’" to electric-pair-text-pairs.
10965         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
10966         (elisp-completion-at-point, elisp--preceding-sexp):
10967         Also treat "‘" and "’" as quoting chars.
10969         substitute-command-keys now curves quotes
10970         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
10971         * doc/lispref/help.texi (Keys in Documentation):
10972         * etc/NEWS: Document this.
10973         * src/doc.c (Fsubstitute_command_keys): Implement it.
10975 2015-05-28  Glenn Morris  <rgm@gnu.org>
10977         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
10978         (rmail-summary-by-topic, rmail-summary-by-senders):
10979         No longer strip leading/trailing whitespace.
10981         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
10982         (f90-no-block-limit): Add "enum".  (Bug#20680)
10983         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
10984         New tests.
10986 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
10988         * lisp/isearch.el (isearch--current-buffer): Give a default value.
10990         Un-revert changes mistakenly dropped by f9fabb2b
10992 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10994         Merge from gnulib
10995         This incorporates:
10996         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
10997         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
10998         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
10999         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
11000         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
11001         2015-05-26 stdio: fix probe on mingw under gcc 5.1
11002         * admin/merge-gnulib (GNULIB_MODULES):
11003         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
11004         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
11005         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
11006         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
11007         Get latest versions from gnulib.
11008         * lib/get-permissions.c, lib/set-permissions.c: New files.
11009         * lib/gnulib.mk, m4/gnulib-comp.m4:
11010         Regenerate.
11011         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
11013 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
11015         Delete the old process in vc-setup-buffer
11016         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
11017         process here.
11018         (vc-do-command): Rather than here (bug#20608).
11020 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
11022         Avoid gratuitous delete-dups in face-at-point.
11023         * lisp/faces.el (face-at-point): Do not compute the properly
11024         ordered, duplicate-free list if only a single value is
11025         requested anyway.  (Bug#20519)
11027         Show the exact C-x 8 RET invocation in describe-char.
11028         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
11029         invocation instead of a template.  (Bug#20522)
11031 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
11033         * lisp/emacs-lisp/package.el: Don't erase tags on refresh
11034         (package-menu--post-refresh): Call `tabulated-list-print' with the
11035         UPDATE argument.  This only affects the refresh action, the revert
11036         action still erases tags.
11037         (package-menu-get-status): Change `assq' to `assoc'.
11038         (package-menu--mark-upgrades-1): New function.
11039         (package-menu--mark-upgrades-pending): New variable.
11040         (package-menu-mark-upgrades): Use them to delay marking until
11041         after refresh is done.
11042         (package-menu--post-refresh): Call mark-upgrades-1 if
11043         mark-upgrades-pending is non-nil.
11045 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
11047         Fix typo in commit 3953c4be2816537be95520605d45b866dc731f4b
11049 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11051         * lisp/isearch.el (isearch--current-buffer): New var
11052         (isearch-update): Set cursor-sensor-inhibit here.
11053         (isearch-done): Unset cursor-sensor-inhibit in the right buffer (bug#20532).
11055         Change inhibit-point-motion-hooks to t
11056         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
11057         to t and document it as obsolete.
11059 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
11061         Support ZIP files that use Zip64 extensions
11062         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
11063         format of central directory offsets used by Zip64 extensions.
11064         (Bug#20665)
11066 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
11068         New test tramp-test30-make-auto-save-file-name
11069         * tramp-tests.el (tramp-test30-make-auto-save-file-name): New test.
11070         (tramp-test31-special-characters)
11071         (tramp-test31-special-characters-with-stat)
11072         (tramp-test31-special-characters-with-perl)
11073         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
11074         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
11075         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
11076         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
11078         Improve tramp-handle-make-auto-save-file-name
11079         * tramp.el (tramp-auto-save-directory): Add :tags.
11080         (tramp-handle-make-auto-save-file-name): Let native
11081         `make-auto-save-file-name' use `auto-save-file-name-transforms',
11082         if `tramp-auto-save-directory' is not set.
11084 2015-05-27  Glenn Morris  <rgm@gnu.org>
11086         No longer set dired-directory in eshell.  (Bug#16477)
11087         * lisp/eshell/esh-mode.el (eshell-mode):
11088         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
11090         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
11092         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
11093         * lisp/progmodes/cc-mode.el (c-mode-help-address):
11094         Change to submit@debbugs.
11095         (c-mode-bug-package): New constant.
11096         (mail-position-on-field): Declare.
11097         (c-submit-bug-report): Insert X-Debbugs-Package header.
11098         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
11099         Mention debbugs.gnu.org.
11101 2015-05-26  Glenn Morris  <rgm@gnu.org>
11103         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
11104         (rmail-summary-by-recipients, rmail-summary-by-topic)
11105         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
11106         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
11108 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
11110         Handle curved quotes in info files
11111         * lisp/calc/calc-help.el (calc-describe-thing):
11112         * lisp/info.el (Info-find-index-name)
11113         (Info-try-follow-nearest-node, Info-fontify-node):
11114         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
11115         In info files, process quotes ‘like this’ the same way we process
11116         quotes `like this'.  This catches a few places we missed earlier.
11118 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
11120         xref-prompt-for-identifier: Use a list value
11121         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
11122         value, to be interpreted as a list of commands.
11123         (xref--prompt-p): New function.
11124         (xref--read-identifier): Use it.
11126 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
11128         Teach MS-Windows font back-end return per-glyph ascent/descent
11129         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
11130         values.
11131         * src/w32font.c (w32font_text_extents): Compute, cache, and
11132         accumulate per-glyph ascent and descent values, instead of copying
11133         global values from the font.  If the values are not available from
11134         the font data, i.e., non-TTF fonts, fall back on font-global values.
11135         (compute_metrics): Compute and return per-glyph ascent and descent
11136         values, if returned by GetGlyphOutlineW, falling back on
11137         font-global values.  (Bug#20628)
11138         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
11139         height of rectangle to be drawn, to be compatible with
11140         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
11141         box, when per-glyph ascent/descent values are used.
11143 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
11145         * lisp/emacs-lisp/tabulated-list.el: Don't sort without sorter
11146         (tabulated-list-print): Don't sort if sorter is nil
11148 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
11150         Fix Bug#20621
11151         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
11152         are major modes which set `auto-save-mode' on their own rules;
11153         Tramp shall not overwrite such settings.
11154         (Bug#20621)
11156 2015-05-26  Glenn Morris  <rgm@gnu.org>
11158         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
11159         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
11160         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
11161         Doc updates.
11162         (vc-dir-mode): Remove unnecessary autoload.
11164 2015-05-25  Philipp Stephani  <phst@google.com>
11166         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52
11167         (xterm--extra-capabilities-type): Add `getSelection'.
11168         (xterm--query): Add `no-async' argument.
11169         (xterm--init-activate-get-selection): New function.
11170         (terminal-init-xterm): Use it.
11171         (xterm--init-modify-other-keys): Rename from
11172         terminal-init-xterm-modify-other-keys.
11173         (xterm--init-bracketed-paste-mode): Rename from
11174         terminal-init-xterm-bracketed-paste-mode.
11175         (xterm--init-activate-set-selection): Rename from
11176         terminal-init-xterm-activate-set-selection.
11177         (xterm--selection-char): New function.
11178         (gui-backend-set-selection): Use it.  Use the &context to only apply
11179         this method in terminals where we enabled the feature.
11180         (gui-backend-get-selection): New method.
11182 2015-05-25  Daniel Colascione  <dancol@dancol.org>
11184         Add C-language keyword constants to C++
11185         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
11186         keyword constants to C++.
11188 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
11190         Make TAGS files more portable to MS-Windows
11191         * etc/NEWS: Document this.
11192         * lib-src/etags.c (readline_internal) [DOS_NT]:
11193         Don't treat CRs differently from GNUish hosts.
11194         * lisp/progmodes/etags.el (etags-goto-tag-location):
11195         Adjust STARTPOS to account for the skipped CRs in dos-style files.
11197 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
11199         Improve fix of debbugs:20634 in tramp-sh.el
11201 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
11203         Fix a typo in last commit
11204         * lib-src/etags.c (C_entries): Fix a typo.
11205         * test/etags/ETAGS.good_1:
11206         * test/etags/ETAGS.good_2:
11207         * test/etags/ETAGS.good_3:
11208         * test/etags/ETAGS.good_4:
11209         * test/etags/ETAGS.good_5:
11210         * test/etags/CTAGS.good: Update due to the change in etags.c.
11212         Fix tagging of class members in C-like OO languages
11213         * lib-src/etags.c (longopts): Add new option --class-qualify and
11214         its shorthand -Q.
11215         (print_help): Add help text for --class-qualify.
11216         (main): Add handling of -Q.
11217         (consider_token, C_entries) <omethodparm>: Append argument types
11218         to Objective C methods only if --class-qualify was specified.
11219         Qualify C++, Objective C, and Java class members with their class
11220         names only if --class-qualify was specified.
11221         (C_entries): If --class-qualify was not specified, remove the
11222         namespace and class qualifiers from tag names of C++ methods.
11223         This allows to use etags.el as xref back-end without the
11224         tag-symbol-match-p method, which greatly increases the number of
11225         potentially false positives.  (Bug#20629)
11226         * doc/man/etags.1: Update to document the new --class-qualify
11227         option.
11228         * test/etags/ETAGS.good_1:
11229         * test/etags/ETAGS.good_2:
11230         * test/etags/ETAGS.good_3:
11231         * test/etags/ETAGS.good_4:
11232         * test/etags/ETAGS.good_5:
11233         * test/etags/CTAGS.good: Update due to changes in etags.c.
11235 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
11237         (cl-generic-define-method): Side effects are evil (bug#20644)
11238         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
11239         cons-cells that might be used as keys in an `equal' hash-table.
11241 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11243         Make erc timestamps visible again
11244         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec): Make
11245         timestamps visible again (if requested).
11247 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
11249         Fix last change in etags.c that broke tagging compresed files
11250         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
11251         quoting of decompression shell command for MS-Windows/MS-DOS.
11253 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
11255         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist
11256         (Bug#20639)
11258 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
11260         Fix typo in 89035e247591c8d688fce922b7079881aa110f33
11262 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
11264         Fix IPv6 addresses in Tramp
11265         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
11266         Add sqare brackets around host name.
11268 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
11270         Inhibit `epa-file-handler' in Tramp
11271         (Bug#20634)
11272         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
11273         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
11274         `epa-file-handler'.
11276 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
11278         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring
11279         (pcase-let): Document the behavior in case the pattern doesn't match.
11281 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11283         * lisp/emacs-lisp/tabulated-list.el: New optional print method
11284         (tabulated-list-print): New optional argument, UPDATE.  If
11285         non-nil, the list is printed by only adding and deleting the
11286         changed entries, instead of erasing the whole buffer.  This method
11287         is much faster when few or no entries have changed.
11288         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
11289         * etc/NEWS: Document it.
11291         * lisp/emacs-lisp/tabulated-list.el: Improve printing
11292         (tabulated-list--get-sorter): New function.
11293         (tabulated-list-print): Restore window-line when remember-pos is
11294         passed and optimize away the `nreverse'.
11296 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
11298         Simpilify etags TEX mode scanning
11299         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
11300         Remove static vars.
11301         (TeX_commands): Deduce escapes here instead.
11302         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
11303         This removes the need for a reset_input call.
11305         Improve etags I/O error reporting
11306         * lib-src/etags.c:
11307         Don't include sys/types.h and sys/stat.h; no longer needed.
11308         (infilename): New static var.
11309         (process_file_name): Don't call 'stat'.  Instead, just open the
11310         file for reading and report any errors.  Don't bother making
11311         a copy of the file argument; it's not needed.  Be more careful to
11312         use the failing errno when reporting an error.
11313         Quote the real name better (though no perfectly)
11314         when passing it to the shell.
11315         (reset_input): New function, which reports I/O errors.
11316         All uses of 'rewind' changed to use this function.
11317         (perhaps_more_input): New function, which also checks for
11318         I/O errors.  All uses of 'feof' changed to use this function.
11319         (analyze_regex): Report an error if fclose fails.
11320         (readline_internal): Report an error if getc fails.
11321         (etags_mktmp): Return an error if close fails.
11323         etags.c: avoid side effects in 'if'
11324         * lib-src/etags.c (process_file_name, Perl_functions)
11325         (TEX_decode_env): Hoist side effects into previous statement.
11327         .gitignore tweaks
11328         * .gitignore: Ignore all *.stamp files.  Sort.
11329         Ignore [0-9]*.txt (commonly used name for git patches)
11330         and /vc-dwim-log-* (vc-dwim temporary).
11332 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
11334         Fix last change in etags.c, which failed the test suite
11335         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
11336         before the last change.
11338 2015-05-23  Glenn Morris  <rgm@gnu.org>
11340         Remove charset map files from repository, generate in first bootstrap
11341         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
11342         (all): Create the stamp file.
11343         (extraclean): Delete the stamp file.
11344         * src/Makefile.in (lispintdir, charsets): New variables.
11345         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
11346         New rules.
11347         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
11348         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
11349         * etc/charsets/*.map: Remove from repository.
11351 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
11353         Cleanup etags.c to use locale-independent code
11354         Although this doesn't alter behavior (as etags doesn't use
11355         setlocale), the new version is more clearly locale-independent and
11356         the executable is a bit smaller on my platform.
11357         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
11358         Include <c-ctype.h> instead of <ctype.h>.
11359         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
11360         (begtk, midtk):
11361         Remove; no longer needed.
11362         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
11363         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
11364         c_islower, c_tolower, respectively.
11365         (notinname, begtoken, intoken, endtoken): Rewrite as functions
11366         instead of macros, and initialize the tables at compile-time
11367         rather than at run-time.
11369         Put default action first in src/Makefile
11370         * src/Makefile.in (all): Put this rule before lisp.mk.
11371         That way, plain 'make' works in the src directory again.
11373 2015-05-23  Glenn Morris  <rgm@gnu.org>
11375         * Makefile.in: Fix extraclean rule.
11376         (extraclean_dirs): New.
11377         (extraclean): Use it.
11379 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
11381         Avoid compiler warning in image.c on MS-Windows
11382         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
11383         warning in image.c.
11385 2015-05-23  Glenn Morris  <rgm@gnu.org>
11387         Fix --without-toolkit-scroll-bars builds.
11388         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
11389         Add new argument to x_clear_area1.
11390         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
11391         Update x_clear_area arguments.
11393         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
11394         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
11395         Change to included version.
11396         (LOCAL, local, totalclean): Remove.
11397         (extraclean): Delete all generated files.
11399 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
11401         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume CVS/Entries exists.
11403         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
11405         tags-completion-at-point-function: Don't trust the find-tag function
11406         * lisp/progmodes/etags.el (tags-completion-at-point-function):
11407         Don't trust the find-tag function.
11409 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
11411         Pacify --enable-gcc-warnings
11412         * src/frame.h (x_query_color): Remove redundant extern decl.
11413         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
11414         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
11415         (ftcrfont_text_extents, ftcrfont_draw):
11416         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
11417         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
11418         (x_ins_del_lines, frame_highlight, frame_unhighlight)
11419         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
11420         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
11421         (x_update_window_begin, x_connection_closed)
11422         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
11423         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
11424         (*x_gc_get_ext_data, x_extension_initialize)
11425         (x_cr_accumulate_data):
11426         Remove redundant static decl.  Many of these GCC doesn't complain
11427         about, but we might as well clean out the duplication while we're
11428         in the neighborhood.
11429         * src/xterm.c (x_fill_trapezoid_for_relief):
11430         Remove decl of nonexistent function.
11432 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
11434         Replace gui-method macros with cl-generic with &context
11435         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
11436         (gui-method-declare, gui-call): Remove.
11437         (frame-creation-function): Use cl-defgeneric.
11438         (make-frame): Adjust callers.
11439         * lisp/menu-bar.el (menu-bar-edit-menu):
11440         Use gui-backend-selection-exists-p.
11441         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
11442         (gui-backend-get-selection): New cl-generic to replace
11443         gui-get-selection method.
11444         (gui-backend-set-selection): New cl-generic to replace
11445         gui-set-selection method.
11446         (gui-selection-owner-p): New cl-generic to replace
11447         gui-selection-owner-p method.
11448         (gui-backend-selection-exists-p): New cl-generic to replace
11449         gui-selection-exists-p method.  Adjust all callers.
11450         * lisp/server.el (server-create-window-system-frame): Don't ignore
11451         window-system spec even when unsupported.
11452         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
11453         * lisp/startup.el (handle-args-function, window-system-initialization):
11454         Use cl-defgeneric.
11455         (command-line): Adjust calls accordingly.
11456         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
11457         a window-system-initialization method.
11458         (handle-args-function, frame-creation-function): Use cl-defmethod.
11459         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
11460         (gui-get-selection): Use cl-defmethod on the new functions instead.
11461         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
11462         a gui-backend-get-selection method.
11463         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
11464         Use cl-defmethod on the new functions instead.
11465         (msdos-window-system-initialization): Turn into
11466         a window-system-initialization method.
11467         (frame-creation-function, handle-args-function): Use cl-defmethod.
11468         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
11469         a window-system-initialization method.
11470         (handle-args-function, frame-creation-function): Use cl-defmethod.
11471         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
11472         (gui-get-selection): Use cl-defmethod on the new functions instead.
11473         * lisp/term/x-win.el (x-window-system-initialization): Turn into
11474         a window-system-initialization method.
11475         (handle-args-function, frame-creation-function): Use cl-defmethod.
11476         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
11477         (gui-get-selection): Use cl-defmethod on the new functions instead.
11478         * lisp/term/xterm.el (xterm--set-selection): Turn into
11479         a gui-backend-set-selection method.
11480         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
11481         (Fns_selection_owner_p): Remove unused arg `terminal'.
11482         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
11484 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
11486         Revert "Fix etags Bug#20629 that broke C++ support."
11487         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
11489 2015-05-23  Jan D  <jan.h.d@swipnet.se>
11491         Fix etags Bug#20629 that broke C++ support.
11492         * etags.el (etags-xref-find-definitions-tag-order): Revert commit
11493         from Sun May 10 (Bug#20629).
11495         Merge branch 'cairo'.
11496         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
11497         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
11499         Merge branch 'master' into cairo
11501         Fixes to compile cairo branch without cairo.
11502         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
11503         first argument.
11504         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
11505         USE_CAIRO.
11507 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
11509         * lisp/emacs-lisp/package.el: Always update selected-packages
11510         (package--update-selected-packages): New function.
11511         (package-menu-execute): Use it before starting the transaction,
11512         this way the list of selected packages is updated even when the
11513         transaction fails.
11514         (package-menu--perform-transaction): Don't edit selected-packages.
11516 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
11518         Fix etags reading of compressed files
11519         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
11520         Include fcntl.h, for O_CLOEXEC.
11521         (process_file_name): Don't use 'popen', whose streams cannot be
11522         rewound.  Instead, uncompress the file to a temporary file,
11523         created by 'etags_mktmp', and read from that as usual.
11524         (etags_mktmp): New function.
11525         * test/etags/ETAGS.good_1:
11526         * test/etags/ETAGS.good_2:
11527         * test/etags/ETAGS.good_3:
11528         * test/etags/ETAGS.good_4:
11529         * test/etags/ETAGS.good_5: Update to be consistent with latest
11530         changes in etags.c regarding reading compressed files.
11532         Improve documentation of 'set-fontset-font'
11533         * doc/lispref/display.texi (Fontsets): Document the value of nil
11534         for the 3rd argument of 'set-fontset-font'.
11536         Fix documentation of forward-line
11537         * src/cmds.c (Fforward_line): Clarify the return value if the line
11538         at end of accessible portion of the buffer has no newline.
11539         * doc/lispref/positions.texi (Text Lines): Document what happens
11540         if the line at end of accessible portion of buffer has no newline.
11541         (Bug#20587)
11543 2015-05-22  Glenn Morris  <rgm@gnu.org>
11545         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
11547         * admin/charsets/mapconv (LC_ALL): Set to C.
11549         * Makefile.in: Add admin/charsets into top-level clean rules.
11550         (clean): Add admin/charsets.
11551         (maybeclean_dirs): New variable.
11552         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
11554         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
11556 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
11558         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc
11560 2015-05-22  Glenn Morris  <rgm@gnu.org>
11562         Generate admin/charsets Makefile via configure, and make more portable.
11563         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
11564         (admin/charsets/Makefile): Generate it.
11565         * admin/charsets/Makefile.in: Rename from Makefile.
11566         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
11567         New variables, set by configure.
11568         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
11569         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
11570         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
11571         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
11572         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
11573         (all): Declare PHONY.
11574         (local): New PHONY target.
11575         (map_template): New template.  Use to define short PHONY aliases.
11576         (*.map): Add directory prefixes to targets and prerequisites.
11577         Respect make verbosity.
11578         (JISC6226.map): Replace non-portable sed append without newline.
11579         (install): Remove rule.
11580         (clean): Only delete temporary sedscript.
11581         (bootstrap-clean, distclean, maintainer-clean, extraclean)
11582         (totalclean): New PHONY rules.
11583         * admin/charsets/mapconv (BASE): Replace basename with expr.
11584         (FILE): Add "mapfiles" subdirectory.
11585         (AWK): New variable.  Use throughout in place of "awk".
11586         (main): Use "gunzip -c" in place of "zcat".
11587         Don't leave whitespace before "p", for older sed.
11588         * admin/charsets/mapfiles/PTCP154: Add final newline,
11589         to make older sed versions happy.
11591 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
11593         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
11594         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
11595         (auto-revert-notify-watch-descriptor): Use defvar-local.
11596         (find-file-hook, auto-revert-tail-mode, )
11597         (auto-revert-notify-add-watch): Use setq-local.
11598         (auto-revert-notify-add-watch): Don't call make-local-variable on
11599         kill-buffer-hook (bug#20601).
11601 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
11603         Change defgeneric so it doesn't completely redefine the function
11604         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
11605         previously defined methods.
11606         (cl-generic-define-method): Let-bind purify-flag instead of using `fset'.
11607         (cl--generic-prefill-dispatchers): Only define during compilation.
11608         (cl-method-qualifiers): Remove redundant alias.
11609         (help-fns-short-filename): Silence byte-compiler.
11610         * test/automated/cl-generic-tests.el: Adjust to new defgeneric semantics.
11612 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
11614         (package-menu-execute): Remove reference to remove-dups
11616 2015-05-21  kwhite  <kwhite@gnu.org>
11618         * lisp/erc/erc.el: Hide network/channel messages
11619         (erc-network-hide-list, etc-channel-hide-list): New lists to define
11620         message types per network/channel.
11621         (erc-add-targets): New function to parse list of targets
11622         (erc-hide-current-message-p): Modified to check for new targets
11624 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
11626         Don't quote nil and t in doc strings
11627         This is as per "Tips for Documentation Strings" in the elisp manual.
11628         For consistency, do the same in diagnostics and comments.
11630 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
11632         Fix a minor problem with mouse-face on mode line
11633         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
11634         mouse face also if the mouse pointer hovers above mode-line glyphs
11635         that don't come from any Lisp string.  (Bug#20620)
11637 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
11639         * lisp/emacs-lisp/package.el: Fix selected-package logic
11640         (package-menu-execute): Mark as selected all non-upgrade packages
11641         being installed.
11642         (package-menu--perform-transaction): Don't mark anything.
11644         * lisp/emacs-lisp/package.el: Mode-line progress report
11645         (package-menu--transaction-status): New variable.
11646         (package-menu-mode, package-menu--perform-transaction): Use it.
11648         * lisp/emacs-lisp/package.el: Better transaction messages
11649         (package-menu--partition-transaction): New function.
11650         (package-menu--prompt-transaction-p, package-menu-execute): Use
11651         it.
11652         (package-menu--perform-transaction): Don't do any messaging.
11654         * lisp/emacs-lisp/package.el: Revert async package transactions
11655         (package-menu-async): Update doc.
11656         (package-install-from-archive, package-download-transaction)
11657         (package-install, package-menu--perform-transaction)
11658         (package-menu-execute): Remove asynchronous functionality.
11660 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
11662         Revert doc string changes to f90.el
11663         Problem reported by Glenn Morris in:
11664         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
11665         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
11666         Revert recent changes to doc strings, as it's intended that they
11667         use grave accent, not quote.
11669 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
11671         Improve parameter name
11673         Add new inline function `hash-table-empty-p'
11675 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
11677         Don't require help-fns when not needed
11678         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
11679         * lisp/emacs-lisp/elint.el:
11680         Don't require help-fns at the top level.
11681         * lisp/emacs-lisp/advice.el (ad-arglist):
11682         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
11683         Don't require help-fns.  (Bug#17001)
11685 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
11687         Fix slash collapsing in etags on MS-Windows
11688         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
11689         MS-Windows code from the Posix code, and support collapsing both
11690         forward- and back-slashes on MS-Windows.  Fixes a regression found
11691         by the test suite.
11693         Improve documentation of glyphless-char-display
11694         * doc/lispref/display.texi (Glyphless Chars): Improve
11695         documentation of glyphless character display.
11697         Fix "acronym" display of glyphless characters on w32
11698         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
11699         ignore "acronym" substitutes of 1 character for glyphless characters.
11701 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
11703         Add an automated test for let-when-compile
11704         * test/automated/subr-tests.el (let-when-compile): New test.
11706         Add let-when-compile macro instead of using pcase-let
11707         * lisp/subr.el (let-when-compile): New let-like macro that makes its
11708         bindings known to macros like `eval-when-compile' in the body.
11709         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to a
11710           `let-when-compile'. Also comment out the unused lexical var
11711           `el-kws-re'.
11712         The change greatly improves readability, while providing almost the
11713         same (even shorter) byte code: instead of pre-evaluating 10 variables,
11714         tossing them into a list, and destructuring that list a full screen
11715         page later, the variables are simply bound as they are evaluated,
11716         wrapped individually in `eval-when-compile'.
11718 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
11720         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer
11721         (package-delete-button-action): New function.
11722         (describe-package-1): Add Delete button.
11724         * lisp/emacs-lisp/package.el: Better dependency description
11725         (package--used-elsewhere-p): New optional arg, ALL, and return
11726         package-desc objects instead of names.
11727         (package-delete): Update accordingly.
11728         (describe-package-1): Describe which packages require the package.
11730 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
11732         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
11733         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
11734         Fix doc-string (Bug#20533).
11736         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
11737         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
11738         (switch-to-buffer): If the selected window is strongly dedicated
11739         to its buffer, signal error before prompting for buffer name.  Handle
11740         `switch-to-buffer-in-dedicated-window'.  (Bug#20472)
11741         * doc/lispref/windows.texi (Switching Buffers): Document
11742         `switch-to-buffer-in-dedicated-window'.
11744 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
11746         Prefer "this" to “this” in doc strings
11747         This mostly just straightens quotes introduced in my previous patch.
11748         Suggested by Dmitry Gutov in:
11749         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
11750         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
11751         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
11752         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
11753         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
11754         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
11755         Prefer straight double quotes to curved double quotes in doc strings.
11757         Fix minor quoting problems in doc strings
11758         These were glitches regardless of how or whether we tackle the
11759         problem of grave accent in doc strings.
11760         * lisp/calc/calc-aent.el (math-restore-placeholders):
11761         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
11762         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
11763         * lisp/leim/quail/hebrew.el ("hebrew-new")
11764         ("hebrew-biblical-sil"):
11765         * lisp/leim/quail/thai.el ("thai-kesmanee"):
11766         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
11767         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
11768         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
11769         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
11770         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
11771         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
11772         (semantic-tag-components):
11773         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
11774         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
11775         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
11776         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
11777         * lisp/emacs-lisp/generator.el (iter-next):
11778         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
11779         (gnus-article-mode-syntax-table):
11780         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
11781         * lisp/net/soap-client.el (soap-wsdl-get):
11782         * lisp/net/telnet.el (telnet-mode):
11783         * lisp/org/org-compat.el (org-number-sequence):
11784         * lisp/org/org.el (org-remove-highlights-with-change)
11785         (org-structure-template-alist):
11786         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
11787         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
11788         (handwrite-12pt, handwrite-13pt):
11789         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
11790         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
11791         * lisp/progmodes/verilog-mode.el (verilog-tool)
11792         (verilog-string-replace-matches, verilog-preprocess)
11793         (verilog-auto-insert-lisp, verilog-auto-insert-last):
11794         * lisp/textmodes/makeinfo.el (makeinfo-options):
11795         * src/font.c (Ffont_spec):
11796         Fix minor quoting problems in doc strings, e.g., missing quote,
11797         ``x'' where `x' was meant, etc.
11798         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
11799         Fix minor quoting problem in other string.
11800         * lisp/leim/quail/ethiopic.el ("ethiopic"):
11801         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
11802         Omit unnecessary quotes.
11803         * lisp/faces.el (set-face-attribute, set-face-underline)
11804         (set-face-inverse-video, x-create-frame-with-faces):
11805         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
11806         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
11807         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
11808         * lisp/net/tramp.el (tramp-methods):
11809         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
11810         * lisp/textmodes/artist.el (artist-ellipse-right-char)
11811         (artist-ellipse-left-char, artist-vaporize-fuzziness)
11812         (artist-spray-chars, artist-mode, artist-replace-string)
11813         (artist-put-pixel, artist-text-see-thru):
11814         * lisp/vc/ediff-util.el (ediff-submit-report):
11815         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
11816         Use double-quotes rather than TeX markup in doc strings.
11817         * lisp/skeleton.el (skeleton-pair-insert-maybe):
11818         Reword to avoid the need for grave accent and apostrophe.
11819         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
11820         Don't use grave and acute accents to quote.
11822 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
11824         * emacs-lisp/generator.el (cps--gensym, cps--transform-1): Silence compiler
11826 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
11828         Try to port new etags tests to MS-Windows
11829         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
11830         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
11831         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
11832         Adjust to test-case changes below.
11833         * test/etags/Makefile (CSRC): Remove dostorture.c.
11834         Whatever it was trying to test, wasn't working portably.
11835         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
11836         just a line-ending problem.
11837         * test/etags/c-src/dostorture.c: Remove.
11838         * test/etags/cp-src/c.C: Remove stray CR.
11839         * test/etags/html-src/algrthms.html: Remove trailing CRs.
11840         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
11841         but if someone edits it later it should stay UTF-8-compatible.
11843 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
11845         Fix display of overlapping window-specific overlays
11846         * src/keyboard.c (adjust_point_for_property): When adjusting point
11847         due to display strings, ignore overlays that are specific to
11848         windows other than the currently selected one.
11849         * src/xdisp.c (handle_single_display_spec): If the display
11850         property comes from an overlay, arrange for buffer iteration to
11851         resume only after the end of that overlay.  (Bug#20607)
11853 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
11855         New command icomplete-force-complete-and-exit
11856         * lisp/icomplete.el (icomplete-force-complete-and-exit):
11857         New command
11858         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
11859         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
11860         (icomplete-minibuffer-map): Bind C-j to it.
11861         (icomplete-forward-completions, icomplete-backward-completions):
11862         Mention the new command in the docstring.
11863         * lisp/minibuffer.el (minibuffer-force-complete-and-exit): Revert
11864         the previous fix for bug#17545.
11866 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
11868         Fix last commit
11870         In Elisp manual explain how to override window manager positioning (Bug#20552)
11871         * doc/lispref/frames.texi (Position Parameters): Give example of
11872         how to override a window manager positioning decision.
11874         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
11875         * src/frame.c (Fdelete_frame): In doc-string mention that frame
11876         can't be deleted if it has a surrogate minibuffer.
11877         * doc/lispref/frames.texi (Minibuffers and Frames)
11878         (Deleting Frames): Explain "surrogate minibuffer frames".
11880         In w32heap.c bump DUMPED_HEAP_SIZE to 19/12 MB
11881         * emacs-git/quick/src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
11883 2015-05-18  Glenn Morris  <rgm@gnu.org>
11885         Add option to ignore commit lines matching a pattern in ChangeLog.
11886         * build-aux/gitlog-to-changelog: Add --ignore-line option.
11887         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
11889 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11891         Don't skip new etags tests on non-UTF-8 hosts
11892         Problem reported by Eli Zaretskii for MS-Windows.
11893         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
11894         (LC_ALL): Set to C if the current locale isn't UTF-8.
11895         (.PHONY): Remove ediff_1 thru ediff_5.
11896         (check): Always run.
11898 2015-05-18  Glenn Morris  <rgm@gnu.org>
11900         * lisp/calculator.el (calculator-funcall):
11901         * lisp/textmodes/artist.el (artist-spray-random-points):
11902         Use standard degree/radian conversion utilities.
11904         Further lisp-complete-symbol related cleanup.
11905         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
11906         Unadvertise non-functional argument.  Replace obsolete alias.
11908 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
11910         Add a test case for Maven warning ouput
11911         * test/automated/compile-tests.el
11912         (compile-tests--test-regexps-data): Add a case for Maven warning
11913         ouput.
11914         (compile--test-error-line): Check the compilation message type, if
11915         it's specified in the test data.
11917 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
11919         Update Maven compilation-mode entry to distinguish warnings
11920         * lisp/progmodes/compile.el
11921         (compilation-error-regexp-alist-alist): Update Maven entry to
11922         distinguish warnings (bug#20556).
11924 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
11926         * test/automated/sgml-mode-tests.el: New file.
11928 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
11930         Improve handling of the first Git revision
11931         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
11932         there's no next entry, delete until the end of the buffer.
11933         (log-view-end-of-defun-1): Stop at eob.
11934         * lisp/vc/vc-annotate.el
11935         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
11936         when previous-revision is nil.
11937         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
11938         with `--' to avoid ambiguity.
11939         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
11940         returned revision string.
11941         (vc-git-annotate-time): Expect `^' before the first revision.
11942         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
11943         REV1 is nil, and REV2 is not.
11944         * lisp/vc/vc.el: Update the description of the `diff' function.
11946 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
11948         Allow checkdoc to be called in batch
11949         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
11950           is non-nil, echo the error with `warn'.
11951         How it can be used in -batch:
11952         (with-current-buffer (find-file "checkdoc.el")
11953           (checkdoc-current-buffer t))
11955 2015-05-18  Glenn Morris  <rgm@gnu.org>
11957         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
11959 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
11961         * admin/notes/unicode: New section "binary files".
11963         Change new etags test to use UTF-8 encoding
11964         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
11965         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
11966         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
11967         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
11968         * test/etags/html-src/softwarelibero.html:
11969         Switch to UTF-8 encoding.
11970         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
11971         Remove Makefile, as it's too incestuous to have the test input
11972         include the build procedure.
11973         (UTF8_LOCALE, UTF_ENCODING): New macros.
11974         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
11975         (check): Skip if not UTF-8.
11976         (.PHONY): New rule.
11977         (FRC): Remove, as superseded by .PHONY.  All uses removed.
11978         (regexfile): Prefer printf to echo when outputting oddball chars.
11979         (.PRECIOUS): Remove, as these files are not built.
11981         Rename 'foo-gzipped' to 'foo.gz'
11982         * test/automated/data/decompress/foo.gz:
11983         Rename from test/automated/data/decompress/foo-gzipped,
11984         to make it easier for other tools to tell that it's compressed.
11985         * test/automated/zlib-tests.el (zlib--decompress):
11986         Adjust to renamed file.
11988 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
11990         Set up default-directory
11991         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
11992         binding for `v'.
11993         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
11994         appropriate value for default-directory.
11996 2015-05-17  Samer Masterson  <samer@samertm.com>
11998         * lisp/eshell/em-term.el (eshell-term-sentinel):
11999         No-op by default, only kills term buffer if
12000         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
12001         (eshell-destroy-buffer-when-process-dies): New custom to preserve
12002         previous behavior.
12004         eshell: Introduce new buffer syntax
12005         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
12006         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
12007         needed (Bug#19319).
12008         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
12009         (eshell-get-target): Remove shorthand-specific code.
12010         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
12011         '#<buffer-name>'.
12013 2015-05-17  Jan D  <jan.h.d@swipnet.se>
12015         Merge branch 'master' into cairo
12017 2015-04-26  Jan D  <jan.h.d@swipnet.se>
12019         Merge branch 'master' into cairo
12021         Add PBM support for cairo.
12022         * src/image.c (xcolor_to_argb32): New function.
12023         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
12024         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
12025         XImagePtr if ! USE_CAIRO.
12026         (pbm_load): Add cairo support.
12028 2015-04-12  Jan D  <jan.h.d@swipnet.se>
12030         x_free_cr_resources: Renamed from x_prepare_for_xlibdraw.
12031         * src/xterm.c (x_free_cr_resources): Renamed from x_prepare_for_xlibdraw.
12032         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
12033         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
12034         x_free_cr_resources.
12036         Handle specified bg in images.  Use generic libpng code for PNG:s.
12037         * src/image.c (get_spec_bg_or_alpha_as_argb)
12038         (create_cairo_image_surface): New functions when USE_CAIRO.
12039         (xpm_load): Call the above functions.  Handle XPM without mask
12040         when USE_CAIRO.
12041         (png_load_body): Handle USE_CAIRO case.
12042         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
12043         instead.
12044         (jpeg_load_body): Call create_cairo_image_surface.
12045         (gif_load, svg_load_image): Handle specified background, call
12046         create_cairo_image_surface.
12047         * src/xterm.c (x_draw_image_glyph_string): Added missing USE_CAIRO.
12049 2015-04-11  Jan D  <jan.h.d@swipnet.se>
12051         Support GIF and Tiff with cairo.
12052         * configure.ac: Allow jpeg with cairo.
12053         Allow tiff and gif with cairo.
12054         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
12055         (tiff_load): Create cairo image surface if USE_CAIRO.
12056         (gif_load): Ditto.
12058         Support JPEG with USE_CAIRO.
12059         * configure.ac: Allow jpeg with cairo.
12060         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
12062 2015-04-05  Jan D  <jan.h.d@swipnet.se>
12064         Support RSVG and cairo.
12065         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
12066         * src/dispextern.h (struct image): add cr_data2 if cairo.
12067         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
12068         (x_clear_image): Free cr_data and cr_data2 if set.
12069         (xpm_load): Assign data to cr_data2.
12070         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
12072 2015-04-03  Jan D  <jan.h.d@swipnet.se>
12074         Introduce limited Xpm support (32 bit ZPixmap) for Cairo.
12075         * configure.ac (HAVE_RSVG): Move after cairo.
12076         (USE_CAIRO): Disable rsvg, don't disable Xpm.
12077         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
12078         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
12079         don't return early.
12080         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
12081         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
12082         and create a surface.
12084         Tool tips for menus did not show any text.
12085         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
12086         tip frames, the geometry may be wrong.
12088         Merge branch 'master' into cairo, fixes tooltips not shown.
12090         Merge branch 'master' into cairo
12092         Add CAIRO_CFLAGS to lwlib/Makefile.in
12093         * Makefile.in (CAIRO_CFLAGS): Add.
12095 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12097         * ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
12099 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12101         Draw outermost line using black relief and erase corners also for cairo.
12102         * xterm.c [USE_CAIRO]: Include math.h.
12103         (enum corners) [USE_CAIRO]: New enum.
12104         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
12105         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
12106         than 1, draw the outermost line using the black relief.
12108         * xterm.c (x_fill_trapezoid_for_relief): Remove unnecessary cairo_close_path.
12110 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12112         * xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
12114         * xterm.c (x_draw_stretch_glyph_string): Call x_reset_clip_rectangles instead of XSetClipMask.
12116         Use int instead of unsigned int for width and height args.
12117         * xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
12118         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
12119         width and height args.
12121         Modernize k&r cairo-related function declarations.
12122         * gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
12123         (xg_print_frames_dialog): Modernize k&r declarations.
12124         * xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
12125         (Fx_print_frames_dialog): Modernize k&r declarations.
12126         * xterm.c (x_gc_get_ext_data, x_extension_initialize, x_begin_cr_clip)
12127         (x_end_cr_clip, x_set_cr_source_with_gc_foreground)
12128         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
12129         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
12130         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
12131         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
12132         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
12133         (x_clear_area): Modernize k&r declarations.
12135         Implement wave-style variant of underlining for cairo.
12136         * xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
12137         (x_draw_underwave) [USE_CAIRO]: Use it.
12139         * xterm.c (x_draw_window_divider): Use x_fill_rectangle instead of XFillRectangle.
12141 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12143         Fix fringe bitmap initialization for cairo.
12144         * fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap data for
12145         cairo image surface.
12146         * xterm.c (x_cr_define_fringe_bitmap): Call cairo_surface_mark_dirty.
12148 2015-02-11  Jan D  <jan.h.d@swipnet.se>
12150         Add cairo drawing.
12151         * configure.ac (with-cairo): New option.
12152         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
12153         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
12154         Output "Does Emacs use cairo?".
12155         * lisp/version.el (emacs-version): Add cairo version.
12156         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
12157         (FONT_OBJ): Add comment about ftcrfont.
12158         (ALL_CFLAGS): Add CAIRO_CFLAGS.
12159         (LIBES): Add CAIRO_LIBS.
12160         * src/dispextern.h (struct image): Add cr_data for cairo.
12161         (x_cr_init_fringe): Declare.
12162         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
12163         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
12164         * src/fringe.c (x_cr_init_fringe): New function name that shares code
12165         with w32_init_fringe.
12166         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
12167         * src/ftfont.c (ftfont_info_size); New global variable.
12168         (ftfont_open2): New extern function almost the same as old ftfont_open,
12169         but takes the font_object as argument.
12170         (ftfont_open): Build font object and call ftfont_open2.
12171         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
12172         * src/gtkutil.c (xg_clear_under_internal_border)
12173         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos): Only
12174         queue_draw if not cairo.  Change args to x_clear_area.
12175         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
12176         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
12177         (xg_print_frames_dialog): New functions for printing.
12178         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
12179         (xg_print_frames_dialog): Declare.
12180         * src/image.c: Add defined (USE_CAIRO) for PNG.
12181         Add !defined USE_CAIRO for W32 PNG code.
12182         (x_clear_image): If cairo, destroy the surface in cr_data.
12183         (png_load): Add new cairo compatible implementation.
12184         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
12185         * src/xfns.c: New section Printing.
12186         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
12187         (x-print-frames-dialog): New printing functions.
12188         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if
12189         cairo.
12190         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
12191         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
12192         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
12193         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
12194         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
12195         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
12196         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
12197         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
12198         Declare.
12199         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
12200         (max_fringe_bmp, fringe_bmp): New variables.
12201         (x_gc_get_ext_data, x_extension_initialize)
12202         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
12203         (x_set_cr_source_with_gc_foreground)
12204         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
12205         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
12206         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
12207         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
12208         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
12209         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
12210         (x_update_begin): Create cairo surface if needed.
12211         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
12212         (x_update_end): Paint cairo drawing surface to xlib surface.
12213         (x_clear_under_internal_border, x_after_update_window_line): Adjust
12214         arguments to x_clear_area.
12215         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
12216         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
12217         of XSetClipMask.
12218         (x_set_glyph_string_clipping)
12219         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
12220         instead of XSetClipRectangles.
12221         (x_clear_glyph_string_rect, x_draw_glyph_string_background): Use
12222         x_fill_rectangle instead of XFillRectangle.
12223         (x_draw_glyph_string_foreground)
12224         (x_draw_composite_glyph_string_foreground)
12225         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle instead
12226         of XDrawRectangle.
12227         (x_draw_relief_rect): Add code for USE_CAIRO.
12228         Call x_reset_clip_rectangles instead of XSetClipMask.
12229         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
12230         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
12231         instead of XSetClipMask.
12232         (x_draw_image_foreground, x_draw_image_foreground_1):
12233         x_draw_rectangle instead of XDrawRectangle.
12234         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
12235         XFillRectangle.
12236         (x_draw_image_glyph_string): If img has cr_data, use it as
12237         a cairo surface.
12238         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
12239         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
12240         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
12241         x_reset_clip_rectangles instead of XSetClipMask.
12242         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
12243         (x_clear_area1): New function that calls XClearArea.
12244         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
12245         non-cairo.
12246         (x_clear_frame): x_clear_window instead of XClearWindow.
12247         (x_scroll_run): Set frame garbaged if cairo.
12248         (XTmouse_position): Initialize *part to 0.
12249         (x_scroll_bar_create): Adjust arguments to x_clear_area.
12250         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
12251         x_fill_rectangle instead of XFillRectangle.
12252         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
12253         arguments to x_clear_area.
12254         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
12255         (handle_one_xevent): Adjust arguments to x_clear_area.
12256         Destroy cairo surface for frame if ConfigureNotify.
12257         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
12258         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
12259         x_reset_clip_rectangles instead of XSetClipMask.
12260         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
12261         x_reset_clip_rectangles instead of XSetClipMask.
12262         (x_clear_frame_area): Adjust arguments to x_clear_area.
12263         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
12264         (x_term_init): Call x_extension_initialize if cairo.
12265         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
12266         x_cr_destroy_fringe_bitmap for cairo.
12267         (x_initialize): Call x_cr_init_fringe for cairo.
12268         * src/xterm.h: Add include of cairo header files.
12269         (x_bitmap_record): Add img if cairo.
12270         (x_gc_ext_data): New struct for cairo.
12271         (x_display_info): Add ext_codes for cairo.
12272         (x_output): Add cr_context and cr_surface for cairo.
12273         (x_clear_area): Change arguments from Display*/Window to frame pointer.
12274         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
12275         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
12276         (x_cr_draw_frame, x_cr_export_frames): Declare.
12278 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
12280         Fix integer-valued `mouse-highlight' (Bug#20590)
12281         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
12283 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
12285         MS-Windows followup for ASCIIfication of curved quotes
12286         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
12287         test for curved quotes being displayable, after switching the
12288         terminal encoding.  (Bug#20545)
12290 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
12292         Spelling fixes
12294 2015-05-17  Jan D  <jan.h.d@swipnet.se>
12296         Add comment that x_shift_glyphs_for_insert is never called.
12297         * xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface): Add
12298         comment that this function is never called.
12300 2015-05-16  Glenn Morris  <rgm@gnu.org>
12302         * src/lisp.mk: Remove from repository and generate at build-time.
12303         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
12304         (shortlisp_filter): New variable.
12305         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
12306         (distclean): Remove lisp.mk.
12307         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
12308         * lisp/loadup.el: Tweak layout to make it easier to parse.
12309         * make-dist: Do not distribute src/lisp.mk.
12311 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
12313         Display shorter dates in Git annotate output
12314         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
12315         format (when not overridden with vc-git-annotate-switches).
12316         (vc-git-annotate-time): Support the short format, as well as ISO
12317         8601 that has been used until now (bug#5428).
12319 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
12321         ASCIIfy curved quotes on displays lacking them
12322         * lisp/international/mule-cmds.el (set-locale-environment):
12323         If curved quotes don't work, display straight ASCII approximations
12324         (Bug#20545).
12326 2015-05-16  Glenn Morris  <rgm@gnu.org>
12328         Small src/Makefile simplification.
12329         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
12330         * src/Makefile.in (lisp): Derive from shortlisp.
12331         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
12333 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
12335         * lisp/help-mode.el (help-go-forward): Doc fix.
12336         (Bug#20577)
12338         * doc/lispref/debugging.texi (Profiling): Improve indexing.
12339         (Bug#20576)
12341 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
12343         Use `unless' to have one fewer `not'
12344         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
12345         have one fewer `not'.
12347         Remove redundant :group declarations from vc-git.el
12348         * lisp/vc/vc-git.el (vc-git-diff-switches)
12349         (vc-git-annotate-switches, vc-git-resolve-conflicts)
12350         (vc-git-program, vc-git-root-log-format): Remove the redundant
12351         :group declarations.
12353 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
12355         Removes the predicate from lisp-complete-symbol (Bug#20456)
12356         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
12357         and remove it from the docstring.
12359 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
12361         Add new option vc-git-resolve-conflicts
12362         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
12363         (vc-git-find-file-hook): Add to after-save-hook only when the
12364         above is non-nil.
12365         (vc-git-resolve-when-done): Update to honor the new variable.
12366         (Bug#20292)
12368 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
12370         * lisp/emacs-lisp/tabulated-list.el: Don't error on nil header-string
12371         (tabulated-list-init-header): Document new behavior.
12372         (tabulated-list-print-fake-header): No nothing if
12373         `tabulated-list--header-string' is nil.
12374         (tabulated-list--header-string): Add a docstring.
12375         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
12376         * etc/NEWS: Document it.
12378 2015-05-15  Leo Liu  <sdl.web@gmail.com>
12380         Revert "Fix cps--gensym"
12381         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
12382           fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
12384 2015-05-15  Glenn Morris  <rgm@gnu.org>
12386         Replace AC_SUBST_FILE in configure with include in Makefiles.
12387         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
12388         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
12389         (AUTO_DEPEND): New output variable.
12390         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
12391         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
12392         (lwlib_deps_frag): Replace by conditional include.
12393         * lwlib/autodeps.mk: Remove file.
12394         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
12395         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
12396         (oldxmenu_deps_frag): Replace by conditional include.
12397         * oldXMenu/autodeps.mk: Remove file.
12398         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
12399         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
12400         (lisp_frag): Replace by an include.
12401         (deps_frag): Replace by conditional include.
12402         * src/autodeps.mk: Remove file.
12404         Tweak japanese.el's loading of dependencies.
12405         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
12406         * lisp/language/japanese.el: Use require rather than load.
12407         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
12408         Provide a feature.
12409         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
12410         Provide a feature in the generated file.
12412 2015-05-15  Jan D  <jan.h.d@swipnet.se>
12414         Fix NS warnings.
12415         * nsmenu.m (ns_popup_dialog)
12416         * nsimage.m (initFromXBM:width:height:fg:bg:)
12417         * nsfns.m (Fx_create_frame): Remove unused variables.
12418         (Fns_read_file_name): Initialize fname, remove ret.
12419         * nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
12420         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown): Remove unused
12421         variable.
12422         (init): Add parantesis in if.
12423         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
12425 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
12427         Fix a enum conversion warning in macfont.m
12428         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
12429         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
12431 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
12433         Support de-alt dictionary with Aspell.
12434         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
12435         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
12437 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
12439         cus-start.el: Add ns-confirm-quit.
12440         * cus-start.el: Add ns-confirm-quit.
12442         Fix warnings on OSX 10.10.
12443         * nsfns.m (MODAL_OK_RESPONSE): New define for different OSX versions.
12444         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
12445         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
12446         * nsmenu.m (initWithContentRect:styleMask:backing:defer:)
12447         * nsimage.m (allocInitFromFile, setPixmapData): Only call
12448         setScalesWhenResized for OSX < 10.6.
12449         * nsterm.h (EmacsScroller): Declare scrollerWidth.
12450         * nsterm.m (ns_copy_bits): New function that does not use deprecated
12451         NSCopyBits.
12452         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
12453         (runAlertPanel): New function.
12454         (applicationShouldTerminate:): Call runAlertPanel.
12455         (initFrameFromEmacs, toggleFullScreen:): Only call useOptimizedDrawing
12456         for OSX < 10.10.
12457         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
12458         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
12459         (draggingEntered:): Returns NSDragOperation.
12460         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
12462 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
12464         * lisp/emacs-lisp/package.el: Don't ensure-init during startup
12465         (package--init-file-ensured): New variable.
12466         (package-initialize, package--ensure-init-file): Use it.
12468 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
12470         Honor :fore/background for XBM on NS (Bug#14969).
12471         * nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
12472         initFromXBM takes bg, fg args, remove flip arg.
12473         (ns_image_from_XBM): Add bg, fg args.
12474         * image.c (x_create_bitmap_from_data)
12475         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
12476         * nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to initFromXBM.
12477         Remove flip arg.
12478         (initFromSkipXBM): Move code to initFromXBM.
12479         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
12480         Use fg, bg from args (Bug#14969).  Remove if (length) section, was always
12481         false.
12482         Remove bit flipping (bitPat, swt), generated incorrect images when
12483         width/height wasn't a multiple of 8.
12484         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
12485         * nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args, remove
12486         flip arg.
12488 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
12490         * lisp/emacs-lisp/package.el: Be more careful with the init file
12491         (package--ensure-init-file): Check that user-init-file is set,
12492         exists, is readable, and is writable.  (Bug#20584)
12493         Also expand the docstring.
12495 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
12497         Sync with upstream verilog-mode revision 6232468
12498         * lisp/progmodes/verilog-mode.el (verilog-font-lock-grouping-keywords-face)
12499         (verilog-highlight-grouping-keywords): Fix use of face when
12500         `verilog-highlight-grouping-keywords' set.  Reported by Jeff
12501         Pompa.
12502         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
12503         parent is reset, bug906. Reported by Ken Schmidt.
12504         (verilog-auto-inout-module): Add fourth regexp argument to
12505         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match,
12506         bug856. Reported by John Tillema.
12507         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
12508         modport if signal attachment is itself a modport.  Reported by
12509         Matthew Lovell.
12510         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
12511         always_comb and always_latch, bug844.  Reported by Greg Hilton.
12512         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
12513         with many curly-bracket pairs, bug663.
12514         (verilog-set-auto-endcomments): Fix end comments for functions of
12515         type void, etc.  Reported by Alex Reed.
12516         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
12517         caused by indent-line-to deleting tabls pre 24.5.
12518         (verilog-nameable-item-re): Fix nameable items that can have an
12519         end-identifier to include endchecker, endgroup, endprogram,
12520         endproperty, and endsequence.  Reported by Alex Reed.
12521         (verilog-label-be): When auto-commenting a buffer, consider
12522         auto-comments on all known keywords (not just a subset thereof).
12523         Reported by Alex Reed.
12524         (verilog-auto-end-comment-lines-re)
12525         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
12526         Automatically comment property/endproperty blocks to match other
12527         similar blocks like sequence/endsequence, function/endfunction,
12528         etc. Reported by Alex Reed.
12529         (verilog-set-auto-endcomments): Detect the function- or task-name
12530         when auto-commenting blocks that lack an explicit
12531         portlist. Reported by Alex Reed.
12532         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
12533         allow post-AUTO user fixups, bug826. Reported by Dennis
12534         Muhlestein.
12535         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
12536         is nil, fix indenting initial/final to match always statements,
12537         bug825. Reported by Tim Clapp.
12538         (verilog-extended-complete-re): Fix indentation of DPI-C imports
12539         with c_identifiers, and DPI-C imports, bug557. Reported by ZeDong
12540         Mao and Jason Forkey.
12541         (verilog-read-decls): Fix parsing typed interfaces.  Fix
12542         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
12543         Fix localparam not being ignored in AUTOINSTPARAM,
12544         bug889. Reported by Shannon Hill.
12545         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
12546         bug793.  Reported by Pierre-David Pfister.
12547         (verilog-auto-arg-format, verilog-auto-arg-ports): Add
12548         verilog-auto-arg-format to support newlines in AUTOARG. Reported
12549         by Jie Xiao.
12550         (verilog-batch-execute-func): Do not batch re-auto files loaded by
12551         Local Variables. Fix printing "no changes to be saved" with
12552         verilog-batch. Reported by Dan Dever.
12553         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
12554         interface-only modules, bug721.  Reported by Dean Hoyt.
12555         Author: Alex Reed <acreed4@gmail.com>
12556         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement): Don't
12557         treat '<keyword>:<identifier>' as the start of a labeled
12558         statement, bug905.  Reported by Enzo Chi.
12559         (verilog-directive-re, verilog-compiler-directives)
12560         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
12561         directives (plus some extras) when determining indentation, bug
12562         901.  Reported by Bernd Beuster.
12563         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
12564         iff expression doesn't start with word-character, bug900.
12565         (verilog-optional-signed-range-re, verilog-optional-signed-re):
12566         Fix incorrect indentation/alignment of unsigned declarations,
12567         bug897.
12568         (verilog-looking-back, verilog-in-attribute-p): Fix labling of
12569         always constructs, bug895.
12570         (verilog-calc-1): Fix verilog-mode constraint indentation,
12571         bug324. Reported by Eric Mastromarchi.
12572         (verilog-beg-of-statement): Fix indenting for some forms of
12573         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
12574         continued assignment incorrect if first line ends with ']',
12575         bug437. Reported by Dan Dever.  Fix indention of cover inside an
12576         ifdef, bug 862. Reported by Bernd Beuster Fix labeling do-while
12577         blocks, bug842.
12578         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning,
12579         bug859. Reported by Kaushal Modi.
12580         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
12581         (verilog-backward-token): Fix indenting sensitivity lists with
12582         named events, bug840.  Reed.
12583         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
12584         nil not honoring 'forever', 'foreach', and 'do' keywords.
12586 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
12588         Check for invalid GTK+ monitor scales
12589         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
12590         INT_MAX for too-large scales.  All callers changed to assume the
12591         result is valid (Bug#20432).
12592         (xg_frame_set_char_size, xg_update_scrollbar_pos):
12593         Calculate scale only if needed.
12594         show ASCII approximations instead.
12596 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
12598         Fix daemon crashes when linum-mode is turned on early on
12599         * src/window.c (Fwindow_end): Don't try calling display engine
12600         functions on initial-frame frame.  (Bug#20565)
12602         Fix selective diff browsing in Ediff
12603         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches): Go to the
12604         beginning of the region before searching for the
12605         ediff-regexp-focus-* regexps.  (Bug#20568)
12607 2015-05-14  Jan D  <jan.h.d@swipnet.se>
12609         Fixes Bug#20142.
12610         * gtkutil.c (delete_cb): Don't send delete event here, it does arrive
12611         in the main loop, even for Gtk 3 (Bug#20142).
12613         Don't access display after i/o error (Bug#19147).
12614         * xterm.c (x_connection_closed): Add third arg ioerror.
12615         If ioerror, set display to 0 (Bug#19147).
12616         (x_error_quitter): Call x_connection_closed with third arg false.
12617         (x_io_error_quitter): Call x_connection_closed with third arg true.
12619         Handle GTK_SCALE, fixes Bug#20432.
12620         * gtkutil.c (xg_get_gdk_scale): New function.
12621         (xg_frame_set_char_size)
12622         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
12623         (xg_get_default_scrollbar_height)
12624         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
12625         when setting sizes (Bug#20432).
12627 2015-05-13  Leo Liu  <sdl.web@gmail.com>
12629         Fix cps--gensym
12630         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
12632 2015-05-13  Glenn Morris  <rgm@gnu.org>
12634         Fix bootstrap (void function cl-member).
12635         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
12636         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
12638 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
12640         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
12641         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
12642         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
12643         Avoid defalias for closures which are not immutable.
12644         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill the
12645         dispatchers table with various entries.
12646         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
12647         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
12649 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
12651         Improve tagging of C bindings in DEFVAR_*
12652         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
12653         from DEFVAR_*.
12655 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
12657         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
12659 2015-05-12  Glenn Morris  <rgm@gnu.org>
12661         * lisp/progmodes/tcl.el (tcl-filter):
12662         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
12664         Add basic VC push support.
12665         * lisp/vc/vc.el (vc-push): New autoloaded command.
12666         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
12667         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
12668         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
12669         (vc-bzr-push): New.
12670         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
12671         (vc-git-pull): Reimplement using vc-git--pushpull.
12672         (vc-git-push): New.
12673         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
12674         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
12675         * doc/emacs/maintaining.texi (Pulling / Pushing):
12676         Rename from "VC Pull".  Mention pushing.
12677         (VC With A Merging VCS, VC Change Log): Update xrefs.
12678         (Branches): Update menu.
12679         * doc/emacs/emacs.texi: Update menu.
12680         * etc/NEWS: Mention this.
12682 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
12684         Improve the seq pcase pattern and the `seq-let' macro
12685         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
12686         object is a sequence, and binds each element of ARGS to the
12687         corresponding element of the sequence.
12689 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
12691         Fix tags created from DEFVAR_* declarations in C
12692         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
12693         to make tags extracted from DEFVAR_* declarations more accurate.
12695         Add a test suite for etags
12696         * test/etags/: New test suite, adapted from
12697         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
12698         whose original author is Francesco Potortì <pot@gnu.org>.
12700         Fix tagging of symbols in C enumerations
12701         * lib-src/etags.c (consider_token): Don't tag symbols in
12702         expressions that assign values to enum constants.  See
12703         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
12704         for details.
12705         (C_entries): Reset fvdef to fvnone after processing a preprocessor
12706         conditional and after a comma outside of parentheses.
12708 2015-05-12  Glenn Morris  <rgm@gnu.org>
12710         * lisp/url/url-handlers.el (url-file-name-completion)
12711         (url-file-name-all-completions): Silence compiler.
12713         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
12715         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
12717 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
12719         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
12720         (cl--generic-mandatory-args): Remove.
12721         (cl--generic-split-args): New function.
12722         (cl-generic-define, cl--generic-lambda): Use it.
12723         (cl-generic-define-method): Use it as well, and add support for
12724         context args.
12725         (cl--generic-get-dispatcher): Handle &context dispatch.
12726         (cl--generic-cache-miss): `dispatch-arg' can now be a context expression.
12727         (cl--generic-dispatchers): Pre-fill.
12728         * test/automated/cl-generic-tests.el (sm-generic-test-12-context): New test.
12730 2015-05-11  Glenn Morris  <rgm@gnu.org>
12732         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
12734 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
12736         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
12737         * lisp/term/rxvt.el: Require term/xterm.
12738         (rxvt-function-map): Use xterm-rxvt-function-map.
12739         (rxvt-standard-colors): Move before first use.
12740         (terminal-init-rxvt): Use xterm--push-map and xterm-register-default-colors.
12741         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
12742         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
12743         Move shared bindings between rxvt and xterm to it.
12744         (xterm-function-map): Use it.  Move the xterm-paste binding to
12745         xterm-rxvt-function-map (bug#20444).
12746         (xterm-standard-colors): Move before first use.
12747         (xterm--push-map): New function.
12748         (xterm-register-default-colors): Take standard colors as argument.
12749         (terminal-init-xterm): Use it.  Adjust call to
12750         xterm-register-default-colors.
12752 2015-05-11  Glenn Morris  <rgm@gnu.org>
12754         * lisp/term/x-win.el: Quieten --without-x compilation.
12755         (x-own-selection-internal, x-disown-selection-internal)
12756         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
12757         Declare.
12759         * Makefile.in (emacslog): Remove srcdir.
12760         (ChangeLog): Update for the above.
12762 2015-05-11  Paul Eggert  <eggert@cs.ucla.edu>
12764         Spelling fix
12766 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
12768         python.el: better limit for looking-back calls
12769         * lisp/progmodes/python.el (python-shell-accept-process-output):
12770         Use last comint prompt start as limit for looking-back.
12772 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
12774         CEDET (srecode-insert-fcn): Fix use of oref on a class
12775         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref on
12776         a class.  Reported by Pierre Lorenzon.
12777         (srecode-template-inserter-point): Remove declaration.
12779         CEDET (srecode-create-dictionary): Avoid obsolete object name
12780         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
12781         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
12783 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
12785         C-x 8 shorthands for curved quotes, Euro, etc.
12786         Although C-x 8 lets you insert arbitrary Unicode characters,
12787         it's awkward to use this to insert commonly used symbols such as curved
12788         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
12789         characters commonly found in English text and in basic math.
12790         For example, assuming the Alt key works on your keyboard and iso-transl
12791         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
12792         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
12793         (Bug#20499)
12794         * doc/emacs/mule.texi (Unibyte Mode):
12795         A few other printing characters now work too.
12796         * etc/NEWS: Document this.
12797         * lisp/international/iso-transl.el (iso-transl-char-map):
12798         Also support the following characters:
12799         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
12801 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
12803         Add xref-find-regexp
12804         * lisp/progmodes/xref.el (xref-find-function): Describe the
12805         `matches' action.
12806         (xref-find-regexp): New command, using it.
12807         (xref-collect-references): Rename to xref-collect-matches.
12808         (xref--collect-reference): Rename to xref--collect-match.
12809         (xref-collect-matches, xref--collect-match): Accept new argument,
12810         KIND.  Update accordingly.
12811         (xref--regexp-to-extended): New function.
12812         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
12813         `matches' action.
12814         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
12815         * lisp/progmodes/etags.el (etags-xref-find):
12816         Support the `matches' action.
12817         (etags--xref-find-matches): New function.
12819 2015-05-10  Glenn Morris  <rgm@gnu.org>
12821         * Makefile.in: Fixes for recent change-history changes.
12822         (change-history-nocommit): Update footer regexp.
12823         Ensure output script stays executable.
12825 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
12827         New version of `seq-let' based on a pcase pattern
12828         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
12829         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
12831 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
12833         Add basic HTML5 tags and a template
12834         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
12835         (html-tag-alist): Add HTML5 tags.
12836         (html-tag-help): Add new tags descriptions.
12837         (html-navigational-links): Template for nav links.
12838         (html-html5-template): Template for a HTML5 page.
12840 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
12842         semantic/symref/grep: Don't use word boundaries
12843         * lisp/cedet/semantic/symref/grep.el
12844         (semantic-symref-perform-search): Instead of wrapping input in
12845         word boundaries, check that the characters before and after are
12846         not word constituents.
12848         semantic/symref/grep: Support regexp search
12849         * lisp/cedet/semantic/symref.el
12850         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
12851         the search type is regexp.
12852         * lisp/cedet/semantic/symref/grep.el
12853         (semantic-symref-perform-search): Support the regexp search type.
12854         Pass -E to Grep when it's used.
12856         semantic-symref-regexp: Allow to input an arbitrary string
12857         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
12858         Allow to input an arbitrary string interactively.
12860         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
12861         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
12862         Remove tag-symbol-match-p from the default value
12863         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
12865         Declare find-tag obsolete
12866         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
12867         xref-find-definitions.
12869 2015-05-10  Jan D  <jan.h.d@swipnet.se>
12871         Draw composite string correctly (Bug#20537).
12872         * nsterm.m (ns_draw_composite_glyph_string_foreground): New function.
12873         (ns_draw_glyph_string): Call it (Bug#20537).
12875 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
12877         Avoid infloop in ERC
12878         * lisp/simple.el (line-move-to-column): Ignore field boundaries
12879         while computing line beginning position.  (Bug#20498)
12881 2015-05-08  Glenn Morris  <rgm@gnu.org>
12883         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
12884         * build-aux/gitlog-to-emacslog: Check called from right directory.
12885         (srcprefix): Remove.
12887         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
12888         * Makefile.in (ChangeLog): No longer pass "distprefix".
12889         * make-dist: Update "make ChangeLog" syntax for the above change.
12891         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
12892         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
12894         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
12896         Add command-line option-parsing to gitlog-to-emacslog.
12897         * build-aux/gitlog-to-emacslog: Add command-line options.
12898         By default, refuse to remove an existing output file.
12899         * Makefile.in (CHANGELOG): Update default.
12900         (ChangeLog): Do not test for existing file.
12901         (change-history-nocommit): Ensure temp file does not exist.
12903         Quieten --without-x compilation.
12904         * lisp/term/common-win.el: Provide a feature.
12905         * lisp/term/x-win.el (term/common-win): Require it.
12907         * lisp/dired-aux.el (dired-do-print): Require lpr.
12909         Quieten compilation, eg in --without-x builds.
12910         * lisp/dired-aux.el (lpr-printer-switch):
12911         * lisp/frame.el (tool-bar-height):
12912         * lisp/linum.el (font-info):
12913         * lisp/window.el (font-info, overflow-newline-into-fringe)
12914         (tool-bar-height):
12915         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
12916         * lisp/gnus/gnus-util.el (iswitchb-mode):
12917         * lisp/mail/rmailmm.el (libxml-parse-html-region):
12918         * lisp/net/nsm.el (gnutls-peer-status)
12919         (gnutls-peer-status-warning-describe):
12920         * lisp/net/shr.el (libxml-parse-xml-region):
12921         * lisp/url/url-http.el (gnutls-peer-status): Declare.
12923 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
12925         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
12926         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
12927         `subclass' since they're never called with a class.
12928         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
12929         srecode-dictionary-child-p.
12931 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
12933         help--binding-locus: Document argument POSITION.
12934         * lisp/help.el (help--binding-locus): Document argument POSITION. (bug#20530)
12936 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
12938         Merge from gnulib.
12939         * doc/misc/texinfo.tex: Get latest version.
12941 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
12943         ffap.el (ffap-read-file-or-url): Fix completing-read call
12944         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
12945           `completing-read' should be a symbol.
12947 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
12949         Verify file modifications by other programs
12950         * src/filelock.c (lock_file): Check whether the file was modified
12951         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
12953         Fix keyboard macros that include function keys
12954         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
12955         keys in the macro before returning.  (Bug#20454)
12957 2015-05-08  Glenn Morris  <rgm@gnu.org>
12959         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
12960         "Copyright-paperwork-exempt".  (Bug#20324)
12962         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
12963         (log-edit-rewrite-tiny-change): New variable.
12964         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
12965         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
12966         * etc/NEWS: Mention this.
12968         * lisp/calc/calc.el (math-zerop): Declare.
12970         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
12972 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
12974         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec
12975         Support the case when BINDINGS is a single tuple.  (Bug#20525)
12977         * etc/NEWS: Fix typo in commit 14bb519
12979 2015-05-07  Jan D  <jan.h.d@swipnet.se>
12981         Warn for multiple display crash for all Gtk+ versions.
12982         * configure.ac: Warn for multiple display crash for all Gtk+
12983         versions.  Output URL to Gtk+ bug (Bug#20452).
12985         ns-win.el (ns-paste-secondary): Use gui-get-selection.
12986         * ns-win.el (ns-paste-secondary): Use gui-get-selection.
12988 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
12990         * lisp/emacs-lisp/package.el: New "external" package status
12991         An external package is any installed package that's not built-in
12992         and not from `package-user-dir', which usually means it's from an
12993         entry in `package-directory-list'.  They are treated much like
12994         built-in packages, in that they cannot be through the Package Menu
12995         deleted and are not considered for upgrades.
12996         (package-desc-status): Identify if a package is installed outside
12997         `package-user-dir'.
12998         (package-menu--print-info-simple)
12999         (package-menu--status-predicate): Add support for it.
13000         * etc/NEWS: Document it.
13002 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
13004         * lisp/mail/rmail.el: Use lexical-binding
13005         (rmail-bury): Remove unused var `buffer-to-bury'.
13006         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
13007         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
13008         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
13009         (rmail-insert-inbox-text): Remove unused var `movemail'.
13010         (rmail-add-mbox-headers): Remove unused var `limit'.
13011         (rmail-undelete-previous-message): Remove unused var `value'.
13012         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
13013         `resent-reply-to'.
13014         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
13015         (rmail-restore-desktop-buffer): Rename arguments.
13017 2015-05-06  Glenn Morris  <rgm@gnu.org>
13019         * Makefile.in (change-history-commit): Add missing piece of previous.
13021         Avoid unnecessary bumping of Makefile.in's timestamp.
13022         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
13023         (emacslog): New variable.
13024         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
13025         (unchanged-history-files): Use $emacslog rather than Makefile.in.
13026         (change-history-nocommit): Store hash in $emacslog.
13027         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
13028         * admin/update_autogen (changelog_files): Update for the above.
13030         * Makefile.in: Don't always insist on removing existing "ChangeLog".
13031         (CHANGELOG): New variable.
13032         (no-ChangeLog): Remove.
13033         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
13034         (change-history-nocommit): Use a temp file rather than insisting
13035         on deletion of any existing "ChangeLog".
13037         * build-aux/gitlog-to-emacslog: Allow specification of output.
13039         * admin/update_autogen: Add option to update ChangeLog.
13040         (usage): Mention -H.
13041         (changelog_flag, changelog_n, changelog_files): New variables.
13042         (main): Check for -H, and maybe run change-history-nocommit.
13044 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
13046         * lisp/subr.el (delete-dups): Pre-size the hashtable.
13048         (define-modify-macro): Make sure cl--arglist-args is defined
13049         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
13050         cl--arglist-args is defined (bug#20517).
13052 2015-05-06  Glenn Morris  <rgm@gnu.org>
13054         * Makefile.in (change-history-nocommit): New.
13056 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
13058         Only cancel timer when it is non-nil
13059         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
13060         timer when it is non-nil
13061         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
13063 2015-05-06  Glenn Morris  <rgm@gnu.org>
13065         Quieten cedet compilation
13066         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
13067         Invert fboundp test to quieten on current Emacs.
13068         * lisp/cedet/ede/config.el (ede-shell-run-something)
13069         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
13070         (semanticdb-refresh-table): Declare.
13071         (ede-preprocessor-map): Require semantic/db.
13073         Quieten cc-mode compilation
13074         * lisp/progmodes/cc-awk.el (c-forward-sws):
13075         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
13076         Declare.
13078 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
13080         lisp/subr.el (delete-dups): Avoid nreverse.
13082 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
13084         * lisp/subr.el (delete-dups): Make it destructive again.
13086 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
13088         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
13090 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
13092         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487)
13093         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
13094         (testcover--read): Rename from testcover-read.  Change calling convention.
13095         Use edebug-read-and-maybe-wrap-form now that edebug-read is gone.
13096         (testcover-start): Use add-function.  Move edebug-all-defs binding to
13097         testcover--read.
13098         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
13099         (testcover-mark): Remove unused var `item'.
13100         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
13102 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
13104         lisp/subr.el (delete-dups): Use a hash table
13105         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
13106           use a hash table. This can result in ~500 times speed-up for typical
13107           collections of size 5000, like that of `load-library'.
13109 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
13111         CEDET: Avoid `oref' on classes in a few more cases
13112         * lisp/cedet/ede/generic.el (ede-find-target):
13113         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
13114         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
13115         var `prefix'.
13117         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings
13118         * lisp/cedet/semantic/symref/grep.el (grepflags, greppattern): Declare.
13119         (semantic-symref-perform-search): Remove unused var `pat'.
13121         CEDET (srecode-compile-inserter): Avoid `oref' on classes
13122         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
13123         Avoid `oref' on classes (bug#20491).
13124         (srecode-compile-split-code): Remove unused var `key'.
13126 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
13128         Clean up pulse.el a little
13129         * lisp/cedet/pulse.el (pulse): Remove.
13130         (pulse-momentary-timer): Save instead of the stop time.
13131         (pulse-momentary-highlight-overlay): Call
13132         pulse-momentary-unhighlight first thing. Treat
13133         pulse-momentary-overlay as a single value, not a list. Save the
13134         created timer. Only pass the stop time to the timer.
13135         (pulse-tick): Update accordingly.
13136         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
13137         single value. Cancel the timer.
13139 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
13141         Support the biblatex journaltitle field
13142         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
13143         Support the biblatex journaltitle field.
13145 2015-05-05  Glenn Morris  <rgm@gnu.org>
13147         Minor declare-function improvement
13148         * lisp/emacs-lisp/bytecomp.el
13149         (byte-compile-macroexpand-declare-function):
13150         Handle declarations after calls.  (Bug#20509)
13152         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
13154         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
13156 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
13158         Pulse using a timer
13159         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
13160         (pulse-momentary-highlight-overlay): Set up the timer instead of
13161         calling `pulse'
13162         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
13163         (pulse-tick): New function.
13164         (pulse-momentary-unhighlight): Cut off the stop time.
13165         (pulse-delay): Update the docstring WRT to not using sit-for.
13167         Add semantic/symref/grep file patterns for ruby-mode
13168         * lisp/cedet/semantic/symref/grep.el
13169         (semantic-symref-filepattern-alist): Add patterns for
13170         ruby-mode. Clarify the docstring.
13172         Don't require match
13173         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
13174         match. That doesn't work for every command, and some identifier
13175         completion tables are bound to be imperfect anyway.
13177 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
13179         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505)
13180         (semantic-grammar--template-expand): New function.
13181         (semantic-grammar-header, semantic-grammar-footer): Use it.
13182         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
13183         (semantic-grammar-file-regexp): Refine regexp.
13184         (semantic-grammar-eldoc-get-macro-docstring):
13185         Use elisp-get-fnsym-args-string when available.
13186         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
13187         instead of the old eldoc-* names.
13188         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
13189         from elisp-mode.el.  Tweak calling convention.
13190         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
13191         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
13192         elisp--get-fnsym-args-string.
13193         (elisp--highlight-function-argument): Add `prefix' arg.
13194         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
13195         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
13197 2015-05-05  Glenn Morris  <rgm@gnu.org>
13199         * lisp/help-fns.el (describe-function-1):
13200         Handle builtins with advertised calling conventions.  (Bug#20479)
13202 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
13204         Merge branch 'seq-let'
13206         Update `seq-let' documentation
13207         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
13208         with the support of  `&rest'.
13210         Add support for &rest in `seq-let'
13211         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
13212         in the argument list.
13213         * test/automated/seq-tests.el: Add a test for parsing and binding
13214         `&rest' in `seq-let'.
13216 2015-05-05  Paul Eggert  <eggert@cs.ucla.edu>
13218         Spelling fixes
13220 2015-05-05  (tiny change) Pierre Lorenzon  <devel@pollock-nageoire.net>
13222         * eieio-custom.el (eieio-object-value-get): Add missing increment
13223         (Bug#20467)
13225         (eieio-object-value-create): Adjust to new slots representation
13226         (Bug#20467)
13227         * eieio-custom.el (eieio-object-value-create):
13228         Fix missed adjustment to new representation of slots metadata.
13230 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
13232         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
13234 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
13236         Work around "Attempt to modify read-only object"
13237         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
13238         elisp--xref-find-definitions, to work around "Attempt to modify
13239         read-only object" error.
13241         Only skip some variables that have function counterparts
13242         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
13243         Only skip minor-mode-named variable if it's defined in a Lisp
13244         file, and it's in minor-mode-list (bug#20506).
13245         * test/automated/elisp-mode-tests.el
13246         (elisp-xref-finds-both-function-and-variable)
13247         (elisp-xref-finds-only-function-for-minor-mode): New tests.
13249 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
13251         Buttonize the whole line, including the number at the beginning
13252         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
13253         previous change.
13254         (xref--insert-xrefs): Buttonize the whole line, including the
13255         number at the beginning.
13257         Make sure we're inside the let bindings
13258         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
13259         Make sure we're inside the let bindings.
13260         * test/automated/elisp-mode-tests.el
13261         (elisp-completes-functions-after-let-bindings): New test.
13263 2015-05-04  Glenn Morris  <rgm@gnu.org>
13265         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
13266         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
13267         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
13268         Remove outdated declarations.
13270         Replace instances of "(eval-when-compile (autoload ...))"
13271         * lisp/gnus/gnus-art.el (nneething-get-file-name):
13272         Declare rather than autoload.
13273         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
13274         Remove pointless autoload.
13275         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
13276         (gnus-topic-create-topic, gnus-topic-enter-dribble):
13277         Declare rather than autoload.
13278         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
13279         (mailcap-extension-to-mime): Autoload at run-time.
13280         * lisp/gnus/mm-util.el (latin-unity-massage-name)
13281         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
13282         (latin-unity-representations-present-region):
13283         Declare rather than autoload.
13284         * lisp/gnus/mml-smime.el (epg-make-context)
13285         (epg-passphrase-callback-function): Autoload at run-time.
13286         (epg-context-set-signers, epg-context-result-for)
13287         (epg-new-signature-digest-algorithm)
13288         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
13289         (epg-sign-string, epg-encrypt-string)
13290         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
13291         (epg-configuration, epg-expand-group, epa-select-keys):
13292         Declare rather than autoload.
13293         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
13294         Autoload at run-time.
13295         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
13296         (gnus-registry-get-id-key, gnus-registry-action):
13297         Declare rather than autoload.
13298         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
13299         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
13300         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
13301         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
13302         (spam-stat-split-fancy): Remove pointless autoloads.
13303         * lisp/net/mairix.el: Load gnus-util when compiling.
13304         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
13305         (message-field-value): Declare rather than autoload.
13306         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
13307         Check gnus-alive-p is fbound.
13308         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
13309         (vm-check-for-killed-summary, vm-error-if-folder-empty)
13310         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
13311         Declare rather than autoload.
13313         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
13315         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
13316         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
13318         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
13320         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
13322         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
13323         * lisp/emacs-lisp/package.el (epg-signature-status):
13324         Fix declarations.
13326         * lisp/play/gametree.el (gametree-show-children-and-entry)
13327         (gametree-apply-layout, gametree-mouse-show-subtree)
13328         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
13330         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
13331         Handle cl-defgeneric, cl-defmethod.
13333 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
13335         Highlight both type and symbol name
13336         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
13337         Highlight both type and symbol name.
13339         Insert, highlight and align line numbers in xref output
13340         * lisp/progmodes/etags.el (xref-location-line): Specialize for
13341         xref-etags-location.
13342         * lisp/progmodes/xref.el (xref-location-line): New generic method.
13343         (xref-file-location): Add reader for the line slot.
13344         (xref--location-at-point): Skip to the `xref-location' property.
13345         (xref--collect-reference): Drop the line number from description.
13346         (xref--insert-xrefs): Insert, highlight and align line numbers.
13348 2015-05-04  Daniel Colascione  <dancol@dancol.org>
13350         Fix previous commit
13352 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
13354         Don't pulse the indentation, or the newline
13355         * lisp/cedet/pulse.el (pulse-lighten-highlight)
13356         (pulse-reset-face): Fall back to the inherited background
13357         attribute in FACE.
13358         (pulse-momentary-highlight-region): Add autoload cookie.
13359         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
13360         indentation, or the newline, if the line's non-empty
13361         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
13363 2015-05-04  Daniel Colascione  <dancol@dancol.org>
13365         Add `save-mark-and-excursion', which has the old `save-excursion' behavior
13366         * doc/lispref/positions.texi (Excursions): Document
13367         `save-mark-and-excursion'.
13368         * lisp/font-lock.el (font-lock-fontify-block): Use
13369         `save-mark-and-excursion' instead of `save-excursion', restoring
13370         Emacs 24 behavior.
13371         * lisp/simple.el (save-mark-and-excursion--save)
13372         (save-mark-and-excursion--restore): New functions.
13373         (save-mark-and-excursion): New user macro.
13374         * src/editfns.c (Fsave_excursion): Mention
13375         `save-mark-and-excursion' in `save-excursion' documentation.
13377 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
13379         Classify lone symbol inside let varlist as variable
13380         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
13381         Classify lone symbol inside let varlist as variable.
13382         * test/automated/elisp-mode-tests.el (completest-variables-in-let-bindings):
13383         New test.
13385         Add xref-pulse-on-jump
13386         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
13387         Add autoload cookie.
13388         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
13389         (xref--maybe-pulse): New function.
13390         (xref-pop-marker-stack, xref--pop-to-location)
13391         (xref--display-position): Use it.
13392         (xref--location-at-point): Use back-to-indentation.
13394 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
13396         * lisp/org/org-{macs,list}.el: Fix lexical warnings
13397         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
13398         (org-list-get-next-item, org-list-get-prev-item)
13399         (org-list-get-children): Mark unused arg `struct'.
13400         (org-list-use-alpha-bul-p): Remove unused var `bul'.
13401         (org-toggle-checkbox): Mark unused var.
13402         (org-update-checkbox-count): Remove unused var `box-num'.
13403         (org-adapt-indentation): Declare.
13404         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
13405         (org-list-send-list): Remove unused var `txt'.
13406         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
13407         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
13408         * lisp/org/org-macs.el: Use `declare'.
13409         (org-with-limited-levels): Declare dyn-bound vars.
13411 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
13413         Fix minor issues with CEDET on MS-Windows
13414         * lisp/cedet/semantic/symref/idutils.el
13415         (semantic-symref-parse-tool-output-one-line): Fix the search
13416         regexp to match MS-Windows file names with drive letters.
13417         (Bug#19468)
13418         * lisp/cedet/semantic/symref/grep.el
13419         (semantic-symref-grep-use-template): Remove "--color=always" from
13420         Grep switches on MS-Windows.
13421         (semantic-symref-grep-shell): Use shell-file-name as the default
13422         value, so this works not only on Posix platforms.
13423         (semantic-symref-perform-search): Use shell-quote-argument instead
13424         of literal '..' for portable quoting of Grep command-line
13425         argument.  Use shell-command-switch instead of a literal "-c".
13426         * lisp/cedet/semantic/bovine/gcc.el
13427         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
13428         for an absolute file name in a portable way.
13430 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
13432         * lisp/emacs-lisp/package.el: Remove `package--silence' variable
13433         (package-import-keyring, package-refresh-contents)
13434         (package-compute-transaction, package--save-selected-packages)
13435         (package-install-from-archive, package-delete)
13436         (package-menu--perform-transaction): Use `inhibit-message'
13437         instead.
13438         (package--compile): Set `warning-minimum-level' to :error.
13440 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
13442         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom
13443         (terminal-init-screen): Use it (bug#20356).
13444         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
13445         (xterm--extra-capabilities-type): New const.
13446         (xterm-extra-capabilities): Use it.
13447         (xterm--version-handler): Lower the pseudo-version for `screen'.
13449 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
13451         xref--insert-xrefs: Tweak the faces
13452         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
13453         Always insert a newline at the end (to avoid mouse-face background
13454         tail at the last line).
13456         elisp-completion-at-point: Prioritize being quoted over funpos
13457         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
13458         Only consider function position when not inside quoted form
13459         (bug#20425).
13460         * test/automated/elisp-mode-tests.el: New file.
13462         Stop vc-print-log from jumping to the top
13463         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
13464         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
13465         is not specified.
13466         (vc-incoming-outgoing-internal): Always pass nil.
13467         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
13468         call it, and don't set vc-sentinel-movepoint (bug#15322).
13469         (vc-print-root-log): Don't fetch the root working revision, nor
13470         pass it to vc-print-log-internal.
13472 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
13474         Fix display of keyboard layouts for right-to-left scripts
13475         * lisp/international/quail.el (quail-insert-kbd-layout): Force
13476         left-to-right paragraph direction.
13478 2015-05-02  K. Handa  <handa@gnu.org>
13480         * cmds.c (internal_self_insert): When we insert spaces for
13481         padding, set point before the padding spaces, not after them.
13483 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
13485         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
13487 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
13489         Fix etags-xref-find for references
13490         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): Use `cl-mapcan'.
13491         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
13492         directory if no tags tables are loaded (bug#19468).
13494 2015-05-02  Philipp Stephani  <phst@google.com>
13496         Update the options in whitespace-style defcustom
13497         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
13498         `repeat' because the option is really set-like.  Add missing
13499         options.  Reorder options to match the order in the
13500         documentation.  (Bug#20346)
13502 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
13504         Fix error diagnostics of c-macro-expand
13505         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
13506         too early if no start-marker string was found -- that generally
13507         means cpp exited abnormally, and we still want to show its error
13508         messages to the user.
13510         Don't require Texinfo 5.0 for Emacs documentation
13511         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
13512         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
13513         "@codequoteundirected on", respectively, to avoid requiring
13514         Texinfo 5.x for Emacs documentation.
13516 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
13518         * lisp/files.el (pwd):
13519         When called with a prefix argument, insert the current default
13520         directory at point.
13522 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
13524         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
13525         * lisp/isearch.el (isearch-mode-map): Don't inhibit
13526         function-key-map remapping for backspace (bug#20466).
13528 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
13530         Implement xref-find-references in etags and elisp-mode
13531         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
13532         (elisp-xref-find): Use it.
13533         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
13534         * lisp/progmodes/xref.el (xref-collect-references):
13535         (xref--collect-reference): New functions.
13537 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
13539         Prefer plain characters to Texinfo circumlocutions
13540         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
13541         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
13543         Fix single-quoting style in PDF manuals
13544         The PDF versions of the GNU manuals used curved single quotes to
13545         represent grave accent and apostrophe, which made it a pain to cut
13546         and paste code examples from them.  Fix the PDF versions to use
13547         grave accent and apostrophe for Lisp source code, keystrokes, etc.
13548         This change does not affect the info files, nor does it affect
13549         ordinary uses of curved single quotes in PDF.
13550         * doc/emacs/docstyle.texi: New file, which specifies treatment for
13551         grave accent and apostrophe, as well as the document encoding.
13552         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
13553         * doc/lispintro/emacs-lisp-intro.texi:
13554         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
13555         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
13556         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
13557         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
13558         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
13559         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
13560         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
13561         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
13562         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
13563         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
13564         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
13565         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
13566         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
13567         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
13568         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
13569         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
13570         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
13571         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
13572         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
13573         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
13574         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
13575         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
13576         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
13577         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
13578         * doc/misc/woman.texi:
13579         Use it instead of '@documentencoding UTF-8', to lessen the need for
13580         global changes like this in the future.
13581         * doc/emacs/Makefile.in (EMACS_XTRA):
13582         * doc/lispintro/Makefile.in (srcs):
13583         * doc/lispref/Makefile.in (srcs):
13584         Add dependency on docstyle.texi.
13585         * doc/misc/Makefile.in (style): New macro.
13586         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
13587         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
13588         Use it.
13590 2015-05-01  Glenn Morris  <rgm@gnu.org>
13592         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
13594         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
13595         (help-fns--signature): Declare.
13597         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
13599 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
13601         New macro seq-let, providing destructuring support to seq.el
13602         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
13603         to `cl-destructuring-bind' but works on all sequence types supported
13604         by `seq.el'.  Bump version number to 1.6.
13605         * test/automated/seq-tests.el: Add tests for seq-let.
13606         * doc/lispref/sequences.texi: Add documentation for seq-let.
13608 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
13610         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer
13612 2015-05-01  Glenn Morris  <rgm@gnu.org>
13614         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
13616 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
13618         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
13619         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
13620         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
13621         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
13622         (Bug#20445).
13624 2015-05-01  K. Handa  <handa@gnu.org>
13626         * mule-cmds.el (input-method-use-echo-area): Change :type to
13627         'boolean.
13629 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13631         Start using proportional fonts in eww by default
13632         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
13633         it seems to work well.
13635         Fix links in tables in shr
13636         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
13637         makes (some) links in tables not work.
13639 2015-05-01  Jan D  <jan.h.d@swipnet.se>
13641         (ns-get-cut-buffer-internal): Remove this alias.
13642         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
13644 2015-04-30  Glenn Morris  <rgm@gnu.org>
13646         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
13647         Update for 2015-02-08 change to indirect-function.
13649         * lisp/term/ns-win.el (ns-get-selection-internal):
13650         Remove declaration for function deleted 2014-10-21.
13652         * lisp/dom.el: Load subr-x when compiling, for when-let.
13654         Silence some compilation warnings
13655         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
13656         * lisp/emulation/cua-base.el (delete-active-region):
13657         * lisp/net/net-utils.el (w32-get-console-output-codepage):
13658         * lisp/term/ns-win.el (ns-own-selection-internal)
13659         (ns-disown-selection-internal, ns-selection-owner-p)
13660         (ns-selection-exists-p, ns-get-selection):
13661         Declare for compiler..
13663         Function declaration updates prompted by 'make check-declare'
13664         * lisp/emacs-lisp/package.el (lm-homepage):
13665         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
13666         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
13667         * lisp/gnus/mml.el (libxml-parse-html-region):
13668         * lisp/gnus/nnrss.el (libxml-parse-html-region):
13669         * lisp/net/eww.el (libxml-parse-html-region):
13670         * lisp/net/shr.el (libxml-parse-html-region):
13671         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
13672         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
13673         * lisp/vc/vc-git.el (vc-annotate-convert-time):
13674         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
13675         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
13676         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
13677         Update declaration.
13679         Remove compatibility code for 20-year old function renaming
13680         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
13681         Make it an obsolete alias.
13682         (idlwave-shell-filter): Change all uses to comint-output-filter.
13684 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
13686         Add ace-window face config
13687         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
13688         configuration.
13690 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
13692         Unclutter 'make doc' output a bit
13693         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
13694         Use make subst rather than sh IFS to split target string apart.
13695         This makes 'make' output easier to follow.
13697         Merge from gnulib
13698         * doc/misc/texinfo.tex: Update from gnulib.
13700 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
13702         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh
13703         (package-menu--print-info): Obsolete.
13704         (package-menu--print-info-simple): New function.
13705         (package-menu--refresh): Use it, simplify code, and improve
13706         performance.
13707         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
13708         Tiny performance improvement.
13710         * lisp/emacs-lisp/package.el (package--message): inhibit-message
13712 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
13714         Omit -Wstrict-overflow workaround in GCC 5
13715         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
13716         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
13718         Merge from gnulib
13719         This incorporates:
13720         2015-04-29 extern-inline: no need for workaround in GCC 5.1
13721         2015-04-26 file-has-acl: port to CentOS 6
13722         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
13724 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
13726         Set next-error-* in xref--xref-buffer-mode
13727         * xref.el (xref--xref-buffer-mode): Set `next-error-function' and
13728         `next-error-last-buffer'.
13729         (xref--next-error-function): New function.
13730         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
13732 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
13734         python.el: Fix warnings on looking-back calls missing LIMIT
13735         * lisp/progmodes/python.el (python-shell-accept-process-output):
13736         Pass LIMIT arg to looking-back.
13738 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
13740         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress
13741         (package--download-and-read-archives): Use pushnew instead of
13742         append.  If something terrible happened during a previous
13743         download, simply refreshing should now make things work again.
13745 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
13747         Introduce etags-xref-find-definitions-tag-order
13748         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
13749         New variable.
13750         (etags--xref-find-definitions): Use it (bug#19468).
13752 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
13754         PATH- and completion-related fixes in Eshell on MS-Windows
13755         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
13756         MS-Windows, prepend "." to list of directories produced from PATH,
13757         as Windows always implicitly searches the current directory first.
13758         (eshell-force-execution): Make it have a non-nil default value on
13759         MS-Windows and MS-DOS.
13760         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
13761         eshell-force-execution is non-nil, complete on readable files and
13762         directories, not only executables.  When running on MS-Windows,
13763         prepend "." to list of directories produced from PATH, as Windows
13764         always implicitly searches the current directory first.
13766 2015-04-29  Sam Steingold  <sds@gnu.org>
13768         bury RCIRC buffers when there is no activity
13769         lisp/net/rcirc.el (rcirc-non-irc-buffer): remove
13770         (rcirc-bury-buffers): new function
13771         (rcirc-next-active-buffer): when there is no new activity, use
13772         `rcirc-bury-buffers' to hide all RCIRC buffers
13774 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
13776         Fix DBUS query result parsing for secrets-search-items
13777         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
13778         parsing.  The function assumed that return value of the
13779         SearchItems method called on a collection is a list of two lists,
13780         however this is true only when no collection is specified.  GNOME
13781         had used to incorrectly return a list of two lists in both cases,
13782         but this was already fixed:
13783         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
13784         incorrect information in the secrets-search-items’ docstring.
13785         (Bug#20449)
13787 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
13789         * lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'
13790         (byte-compile--message): Use `inhibit-message' instead of hiding
13791         the previous message with (message nil).
13793 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
13795         Remove the deprecated INTERNAL_FIELD macro by expanding it
13796         * src/lisp.h (INTERNAL_FIELD): Remove.
13797         (DEFVAR_KBOARD): Modify accordingly.
13798         * alloc.c, buffer.c, buffer.h, category.c, keyboard.c, keyboard.h:
13799         * syntax.c: Adjust users.
13800         * src/buffer.c (compact_buffer): Use BVAR.
13802 2015-04-29  Glenn Morris  <rgm@gnu.org>
13804         Replace an obsolete function alias
13805         * lisp/isearch.el (isearch-yank-x-selection):
13806         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
13807         (mouse-drag-secondary-moving):
13808         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
13809         Replace obsolete alias x-get-selection with gui-get-selection.
13811 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
13813         * lisp/mail/rmailsum.el: Use lexical-binding.
13815 2015-04-29  Glenn Morris  <rgm@gnu.org>
13817         * test/automated/package-test.el (package-test-update-archives-async):
13818         Skip test on hydra.nixos.org.
13820 2015-04-28  Glenn Morris  <rgm@gnu.org>
13822         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
13823         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
13824         (foldout-mouse-hide-or-exit): Use new names for outline functions.
13826         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
13827         Update for 2014-06-26 hideif.el change.
13829         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
13830         (rmail--decode-and-apply): New function.
13831         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
13833         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
13835 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
13837         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
13838         (package-menu--refresh): Delegate obsolete-hiding to
13839         `package--remove-hidden'.
13840         (package--remove-hidden): Disregard high-priority package if it is
13841         older than the installed one.
13843 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
13845         Update source file encoding list
13846         Update admin/notes/unicode, along with coding system cookies in
13847         other files, so that the two match each other better.
13848         * admin/notes/unicode: lisp/language/ethio-util.el and
13849         lisp/language/ethiopic.el also use utf-8-emacs.
13850         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
13851         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
13852         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
13853         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
13854         * etc/refcards/sk-survival.tex:
13855         Add "coding: utf-8" so that this file is not mishandled in a
13856         Latin-1 or Big-5 locale.
13857         * lisp/international/robin.el, lisp/org/ox-ascii.el:
13858         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
13859         * lisp/language/ethio-util.el: Fix trailer.
13861 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
13863         Fix synchronous invocation of Ispell
13864         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
13865         value to ispell-process-directory before calling ispell-init-process.
13866         Don't call set-process-coding-system if ispell-async-processp is nil.
13867         (Bug#20448)
13869 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
13871         * lisp/emacs-lisp/package.el: Skip space and comments in init file
13872         (package--ensure-init-file): Insert snippet at first
13873         non-whitespace non-comments line.  Respects local-vars at the top
13874         of the file.
13876 2015-04-28  Glenn Morris  <rgm@gnu.org>
13878         * lisp/mail/rmail.el (rmail-copy-headers):
13879         Handle rmail-nonignored-headers being nil.  (Bug#18878)
13881         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
13883         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
13884         Don't get confused by a bzrlib version mismatch warning.
13886 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13888         Change default location of EUDC options file
13889         * NEWS: Document change to EUDC options file's default location.
13890         * lisp/net/eudc-vars.el (eudc-options-file): Use
13891         `locate-user-emacs-file' to change default options file location.
13893 2015-04-27  Glenn Morris  <rgm@gnu.org>
13895         * test/automated/package-test.el (package-test-update-archives-async):
13896         Try to handle the test server script dying.
13898 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
13900         * lisp/saveplace.el (save-place-mode): New minor mode.
13901         (save-place): Redefine as an obsolete alias.
13903         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
13904         * lisp/midnight.el: Use lexical-binding.
13905         (midnight-mode): Make it a proper minor mode.
13906         (midnight-buffer-display-time): Make arg non-optional.
13907         (midnight-find): Remove.
13908         (clean-buffer-list-kill-never-regexps)
13909         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
13910         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
13911         contain functions.
13912         (clean-buffer-list): Use cl-find.
13913         Allow clean-buffer-list-kill-never-regexps to contain functions.
13915 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
13917         Bump version of seq.el to 1.5
13918         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
13919           from seq-doseq.  Bump version number of seq.el.
13921 2015-04-27  Glenn Morris  <rgm@gnu.org>
13923         * lisp/mail/rmail.el (rmail-reply):
13924         Decode subject before matching "Re:" prefix.  (Bug#20396)
13926 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
13928         * lisp/emacs-lisp/package.el: Small improvements
13929         (package--with-work-buffer-async): More informative error.
13930         (package-install-user-selected-packages): Rename to
13931         `package-install-selected-packages'.
13933 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
13935         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
13936         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
13937         (eieio--class-make): Remove leftover `tag'.
13939 2015-04-27  Glenn Morris  <rgm@gnu.org>
13941         * lisp/gnus/message.el (gnus-extract-address-components):
13942         Remove bogus declaration that was masking previous problem.
13944 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
13946         * lisp/gnus/message.el (message-insert-formatted-citation-line):
13947         Fix typo.  (Bug#20318)
13949 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
13951         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
13953         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
13954         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
13955         the buffer in yet another frame.
13956         (reftex-toc-visit-location): Make sure toc-window has focus at the end
13957         when `final' is nil.
13958         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
13959         silence warnings.  Use `--' to clarify that it's internal.
13960         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
13961         (reftex-toc-promote): Clarify unused argument.
13962         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
13963         Add `reftex--' prefix.  Fix all users.
13964         (reftex-toc-promote-prepare): Use _ for dummy variable.
13965         (reftex-toc-restore-region): Rename `m
13967 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
13969         Fix a typo in bibtex.el
13970         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
13971         last change.  (Bug#20429)
13973         Fix redisplay of frame after loading new fonts
13974         * src/xdisp.c (redisplay_internal): When retrying redisplay of a
13975         frame because new fonts were loaded, disable all redisplay
13976         optimizations on that frame by calling SET_FRAME_GARBAGED.
13977         (Bug#20410)
13979 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
13981         * lisp/info.el (Info-menu): Properly provide the `default'
13982         (Bug#20391)
13984         * elisp-mode.el: Catch errors from `documentation'
13985         (Bug#20418)
13986         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
13987         Catch errors from documentation.
13988         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
13990 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
13992         lisp/emacs-lisp/package.el: Move variables to silence byte-compiler
13993         Remove redundant ":group 'package".
13995 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
13997         Fix a typo in rmail.el
13998         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
13999         last commit.  (Bug#20429)
14001 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
14003         Introduce xref-prompt-for-identifier
14004         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
14005         (xref--read-identifier): Use it
14006         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
14008 2015-04-26  João Távora  <joaotavora@gmail.com>
14010         `tex-insert-quote' after single `'' opens quotes instead of closing
14011         Without this, it's very hard to precede double quotes with the
14012         apostrophe character, i.e. insert the sequence '``
14013         (quote-backquote-backquote), commonly useful in portuguese, for
14014         instance.
14015         * tex-mode.el (tex-insert-quote): Add ?' to the list of preceding
14016         chars making `tex-insert-quote' be in the "opening" context.
14018 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
14020         Pass `id' to `completing-read' as def instead of initial input
14021         * xref.el (xref--read-identifier): Pass `id' to `completing-read'
14022         as the default value instead of initial input
14023         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
14025 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
14027         Don't freeze with unreadable processes
14028         Don't freeze if an exiting process can't be read from. (Bug#19860).
14029         This fixes a bug I introduced in
14030         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
14031         "* process.c: Add sanity checks for file descriptors."
14032         Dmitry Gutov did most of the legwork in finding the problem.
14033         * src/process.c (wait_reading_process_output):
14034         Treat non-running processes that can't be read from
14035         the same as other non-running processes.
14037 2015-04-25  Alan Mackenzie  <acm@muc.de>
14039         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
14040         * lisp/subr.el (remove-yank-excluded-properties): put
14041         `with-silent-modifications' around only the last three lines of code.
14043 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
14045         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
14046         (package--all-keywords): Deleted variable.
14048         * etc/NEWS: Document package-hiding functionality
14050 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
14052         lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
14054         Clarify the doc string of 'replace-regexp-in-string'
14055         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
14057         Improve doc string of 'insert-buffer-substring'
14058         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
14060         MS-Windows followup for the recent gnulib update
14061         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
14062         acl-internal.c.
14064 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
14066         Spelling fixes
14068         Merge from gnulib
14069         This incorporates:
14070         2015-04-24 file-has-acl: new module, split from acl
14071         2015-04-24 manywarnings: add GCC 5.1 warnings
14072         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
14073         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
14074         2015-04-15 acl: On Linux, check for acls without libacl
14075         2015-04-14 tempname: avoid unused parameter warnings (trivial)
14076         * lib/acl-internal.c: New file, from gnulib.
14077         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
14078         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
14079         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
14080         Update from gnulib.
14082         Port --enable-gcc-warnings to GCC 5.1 x86-64
14083         * lib-src/ebrowse.c (dump_sym):
14084         * lib-src/hexl.c (main):
14085         * src/ccl.c (ccl_driver):
14086         * src/character.c (string_escape_byte8):
14087         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
14088         * src/gnutls.c (Fgnutls_boot):
14089         * src/gtkutil.c (xg_check_special_colors):
14090         * src/image.c (x_build_heuristic_mask):
14091         * src/print.c (safe_debug_print, print_object):
14092         * src/term.c (produce_glyphless_glyph):
14093         * src/xdisp.c (get_next_display_element)
14094         (produce_glyphless_glyph):
14095         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
14096         Don't use a signed format to print an unsigned integer, or vice
14097         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
14098         * src/image.c (png_load_body, jpeg_load_body):
14099         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
14101 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
14103         Add new faces to tsdh-light-theme
14104         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
14105         definitions for Info-quoted, ace-jump-face-foreground,
14106         hl-paren-face, show-paren-match, and show-paren-mismatch.
14108 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
14110         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
14112 2015-04-24  Glenn Morris  <rgm@gnu.org>
14114         * build-aux/gitlog-to-emacslog:
14115         Use raw log format rather than wrapped one.
14117 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
14119         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code
14120         (seq-doseq): Fix out-of-scope binding.
14121         Don't call `seq-length at every iteration.
14122         Reduce `if's from 3 to 2 per iteration.
14123         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
14125 2015-04-24  Glenn Morris  <rgm@gnu.org>
14127         * lisp/textmodes/text-mode.el (text-mode-hook):
14128         Move text-mode-hook-identify to default.
14130         * lisp/mouse.el (minor-mode-menu-from-indicator):
14131         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
14133         * lisp/help-fns.el (describe-function): More type checking.
14134         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
14136         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
14137         (Bug#20325)
14139 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
14141         shr: strip leading whitespace when expanding URLs
14142         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
14144 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
14146         Clarify "co-authored" some more
14148         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
14150         Clarify doc strings of functions that search for properties
14151         * src/textprop.c (Fnext_char_property_change)
14152         (Fprevious_char_property_change)
14153         (Fnext_single_char_property_change)
14154         (Fprevious_single_char_property_change, Fnext_property_change)
14155         (Fnext_single_property_change, Fprevious_property_change)
14156         (Fprevious_single_property_change): Clarify doc strings wrt return
14157         value and the optional LIMIT argument.  (Bug#20411)
14159 2015-04-24  Glenn Morris  <rgm@gnu.org>
14161         * test/automated/message-mode-tests.el (message-mode-propertize):
14162         Handle non-writable HOME; eg on hydra.nixos.org.
14164 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
14166         Avoid starting threads by w32-shell-execute
14167         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
14168         local file names, before invoking ShellExecute.  (Bug#20220)
14170 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
14172         Fix following doc-links in `widget-documentation-link-action'
14173         * lisp/wid-edit.el (widget-documentation-link-action): Make
14174         following doc-links less simplistic (Bug#20398).
14176 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14178         Improve EUDC manual
14179         * eudc.texi (Troubleshooting): New LDAP troubleshooting subsection.
14181 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
14183         Omit needless "\ " after multibyte then newline
14184         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
14185         (print_object): When print-escape-multibyte is non-nil and a
14186         multibyte character is followed by a newline or formfeed, followed
14187         by a hex digit, don't output a needless "\ " before the hex digit.
14188         * test/automated/print-tests.el (print-hex-backslash): New test.
14190 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
14192         Add a new `inhibit-message' variable
14193         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
14194         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
14195         `inhibit_message' is non-zero.
14196         * etc/NEWS: Add an entry.
14197         * doc/lispref/display.texi: Add an entry for `inhibit-message',
14198           mention it in `message'.
14200 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
14202         Fix last fix in `display-buffer-record-window'.
14203         * lisp/window.el (display-buffer-record-window): Fix last fix.
14205 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
14207         Minor edits in CONTRIBUTE
14208         * CONTRIBUTE: Rearrange instructions about log messages.
14209         Use "Git" capitalized all over.
14210         Use 2 spaces between sentences.
14212 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
14214         * lisp/files.el (basic-save-buffer): Fix argument
14216         * lisp/cus-edit.el (custom-file): Consider init-file-had-error
14217         In case `(and (null custom-file) init-file-had-error)' do the same
14218         thing we'd do if `(null user-init-file)', which is to either error out
14219         or return nil.  This is in line with `custom-save-all' which would
14220         throw an error in that situation. (bug#20355)
14222         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu
14223         (package-menu-hide-low-priority): New variable, see its doc.
14224         (package-archive-priorities): Update doc.
14225         (package-desc-priority): New function.
14226         (package-desc-priority-version): Use it.
14227         (package--remove-hidden): New function.
14228         (package-menu--refresh): Use it.
14230         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages
14231         (package-menu--hide-obsolete): New variable.
14232         (package--remove-hidden): Use it.
14233         (package-menu-hide-obsolete): New interactive function to toggle
14234         the variable.
14235         (package--quick-help-keys): Document it.
14236         (package-menu-async): Add :version tag.
14237         (package-menu-mode-map): Bind package-menu-hide-obsolete.
14238         (package-desc-status): Indicate non-installed obsolete packages as
14239         avail-obso.
14240         (package-menu-mark-install): Allow installation of avail-obso.
14241         (package-menu--status-predicate): Sort avail-obso with available.
14243 2015-04-22  Alan Mackenzie  <acm@muc.de>
14245         On C-y, stop some text property entries being written into buffer-undo-list
14246         lisp/subr.el (remove-yank-excluded-properties): enclose the code in
14247         `with-silent-modifications'.
14249 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
14251         In display-buffer-record-window record selected window if necessary.
14252         * lisp/window.el (display-buffer-record-window): Store selected window
14253         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
14255 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
14257         Fix reftex-citation bug
14258         * reftex-cite.el (reftex-extract-bib-entries): Fix
14259         `wrong-type-argument stringp nil' error that occurs when AUCTeX
14260         integration is enabled and there are no citations in the document
14261         so far.
14263 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
14265         Add or reset based on the presence of MERGE_HEAD
14266         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
14267         `vc-git-resolve-when-done' to `after-save-hook' in either case.
14268         (vc-git-conflicted-files): Add a TODO.
14269         (vc-git-resolve-when-done): Depending on the presence of
14270         MERGE_HEAD, either update the resolved file in the index, or
14271         remove it from there.  (Bug#20292)
14273 2015-04-21  Glenn Morris  <rgm@gnu.org>
14275         * lisp/custom.el (custom-declare-group): No need to purecopy
14276         custom-current-group-alist members following recent change to set
14277         it to nil before dumping.
14279         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
14280         (Bug#20399)
14282 2015-04-21  Daniel Colascione  <dancol@dancol.org>
14284         Unbreak no-op buffer save message
14285         * lisp/files.el (save-buffer): Pass interactive flag to `basic-save-buffer`
14286         (basic-save-buffer): Accept called-interactively as an argument instead of
14287         directly invoking called-interactively-p, which will always yield nil
14288         in that context.
14290 2015-04-21  Alan Mackenzie  <acm@muc.de>
14292         CC Mode: Do nothing in before/after-change-functions for text property changes
14293         Fixes bug#20266.
14294         lisp/progmodes/cc-mode.el (c-basic-common-init): Make
14295         yank-handled-properties buffer local, and remove 'category from it.
14296         (c-called-from-text-property-change-p): New function.
14297         (c-before-change): Don't do anything if a call of the new function
14298         returns non-nil.
14299         (c-after-change): Don't do much if a call of the new function returns
14300         non-nil.
14301         (c-extend-after-change-region): Put changes to text property 'fontified
14302         inside c-save-buffer-state.
14304 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
14306         Fix byte-compiler warnings about looking-back.
14307         * lisp/vc/log-view.el (log-view-end-of-defun-1):
14308         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
14309         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
14310         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
14311         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
14312         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
14313         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
14314         * lisp/org/org.el (org-insert-heading, org-sort-entries):
14315         * lisp/org/org-mouse.el (org-mouse-end-headline)
14316         (org-mouse-context-menu):
14317         * lisp/org/org-clock.el (org-clock-cancel):
14318         * lisp/man.el (Man-default-man-entry):
14319         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
14320         (rmail-ensure-blank-line):
14321         * lisp/mail/footnote.el (Footnote-delete-footnote):
14322         * lisp/mail/emacsbug.el (report-emacs-bug):
14323         * lisp/info.el (Info-follow-reference, Info-fontify-node):
14324         * lisp/info-look.el (info-lookup-guess-custom-symbol):
14325         * lisp/help-fns.el (help-fns--key-bindings):
14326         * lisp/files.el (hack-local-variables):
14327         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
14328         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
14329         (viper-complete-filename-or-exit):
14330         * lisp/emulation/viper-cmd.el (viper-backward-indent):
14331         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
14332         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
14333         * lisp/cus-edit.el (custom-face-edit-value-create):
14334         * lisp/calendar/todo-mode.el (todo-set-item-priority)
14335         (todo-filter-items-1, todo-convert-legacy-files)
14336         (todo-prefix-overlays): Add explicit second arg to looking-back.
14338 2015-04-20  Glenn Morris  <rgm@gnu.org>
14340         Avoid non-nil current-load-list at startup
14341         * src/process.c (init_process_emacs): Move Fprovide statement...
14342         (syms_of_process): ... to here.
14344         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
14346         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value in emacs -Q.
14348 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
14350         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
14351         (Bug#20330)
14353 2015-04-20  Glenn Morris  <rgm@gnu.org>
14355         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
14357         Tweak exec-path in uninstalled case
14358         * src/callproc.c (init_callproc): If running uninstalled, do not
14359         include eventual installation libexec directory in exec-path.
14361 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
14363         * lisp/emacs-lisp/package.el: Filter by multiple keywords and cache keywords
14364         (package-menu-filter): Accept a list of keywords.
14365         (package--all-keywords): New variable to cache known keywords.
14366         (package-all-keywords): Populate it if necessary.
14367         (package-refresh-contents): Reset it.
14369         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
14370         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
14371         as special keywords which match agains package archive and status
14372         respectively.
14373         * etc/NEWS: Document it.
14375 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
14377         Describe and index "empty overlays".
14378         * doc/lispref/display.texi (Overlays): Improve indexing.
14379         (Managing Overlays): Describe "empty" overlays.
14380         (Overlay Properties, Finding Overlays): Add cross-reference to
14381         where empty overlays are described.
14383 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
14385         Spelling fixes
14387         Quote 'like this' in top-level files
14388         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
14389         Prefer to single-quote 'like this' (instead of the older style
14390         `like this').
14391         * configure.ac: Fix some space-before-tab problems that 'git commit'
14392         complained about.
14394         Use bool for boolean in textprop.c, undo.c
14395         * src/textprop.c (soft, hard): Now constants instead of macros.
14396         (validate_plist): Rewrite to avoid need for boolean local.
14397         (interval_has_all_properties, interval_has_some_properties)
14398         (interval_has_some_properties_list, add_properties)
14399         (remove_properties, get_char_property_and_overlay)
14400         (Fnext_single_char_property_change)
14401         (Fprevious_single_char_property_change, add_text_properties_1)
14402         (Fremove_text_properties, Fremove_list_of_text_properties)
14403         (copy_text_properties):
14404         * src/tparam.c (tparam1):
14405         * src/undo.c (record_change, record_property_change)
14406         (syms_of_undo):
14407         Use 'true' and 'false' for booleans.
14409 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
14411         Call `smerge-start-session' even when dealing with a stash conflict
14412         * lisp/vc/vc-git.el (vc-git-find-file-hook):
14413         Call `smerge-start-session' even when dealing with a stash
14414         conflict (bug#20292).
14416 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
14418         Add option to eshell/clear to clear scrollback.
14419         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
14420         (eshell/clear): Add an optional SCROLLBACK argument. If non-nil,
14421         scrollback contents are cleared.
14422         * etc/NEWS: Describe change.
14423         * doc/misc/eshell.texi: Add entry for `clear'.
14425 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
14427         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
14428         where either will do.
14430 2015-04-19  Steve Purcell  <steve@sanityinc.com>
14432         Assume package archive-contents are UTF8-encoded
14433         * lisp/emacs-lisp/package.el (package--read-archive-file):
14434         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
14435         downloaded and cached archive-contents files, so that non-ASCII
14436         characters in package descriptions are displayed correctly in the
14437         `list-packages' menu. (Bug#20231)
14439 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
14441         Abort when looking at stashed changes
14442         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
14443         stashed changes (bug#20292).
14445 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
14447         Refactor low-level printing for simplicity
14448         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
14449         PRINTPREPARE; doable now that we assume C99.  All callers changed.
14450         (PRINTCHAR): Remove, as it adds more mystery than clarity.
14451         All callers changed.
14452         (strout): Assume that caller computes length.  All callers changed.
14453         (print_c_string): New function.
14454         (write_string, write_string_1): Compute length instead of asking
14455         the caller to compute it.  All callers changed.
14456         (write_string): Simplify by using write_string_1.
14457         (write_string_1): Simplify by using print_c_string.
14458         (Fterpri): Compute default val more clearly.
14459         (Fprin1_to_string, print_object):
14460         Assume C99 to avoid unnecessary nesting.
14461         (print_object): Prefer print_c_string to multiple printchar, or
14462         to calling strout with -1 length.  Coalesce into sprintf when
14463         this is easy.
14465 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
14467         Prefer "Bug#1234" in commit messages (Bug#20325)
14468         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
14469         as this isn't useful for Git.
14470         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
14472 2015-04-18  Glenn Morris  <rgm@gnu.org>
14474         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
14475         (Bug#19506)
14477 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
14479         * lisp/elec-pair.el (electric-pair-post-self-insert-function): Do not use `chomp' as a function.
14480         (Bug#19505)
14482 2015-04-18  Glenn Morris  <rgm@gnu.org>
14484         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
14486         * doc/emacs/misc.texi (Sorting): Small edit.
14487         (Bug#19896)
14489         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
14491 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
14493         css-mode.el: Support multi-line comment filling
14494         (Bug#20256)
14495         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
14496         comment filling.
14497         (css-adaptive-fill): New function.
14498         (css-mode): Set `adaptive-fill-function'.
14499         (scss-mode): Set `comment-continue'.
14501 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
14503         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into): Better error messages.
14505 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
14507         Minor improvements in Bulgarian input methods
14508         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
14509         Replace U+042C with U+045D, as the former character is not used in
14510         the modern Bulgarian language.
14511         (Bug#20350)
14513 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14515         Improve EUDC manual
14516         * eudc.texi (LDAP Configuration): Mention simple and SASL
14517         authentication schemes.  Add index items.  Shorten example server
14518         name.
14520 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
14522         Don't show both feature and function with the same name
14523         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
14524         Don't show both feature and function with the same name.
14526         (elisp--xref-identifier-location): Skip variable, if it's also a functiong
14527         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
14528         Avoid returning both the variable and the function for the same
14529         minor mode.
14531 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
14533         Fix fontification of keywords clobbered by the prompt.
14534         * lisp/comint.el (comint-output-filter): Remove the uses of
14535         with-silent-modifications I introduced as part of the last change.
14536         This fixes, e.g., erratically missing highlighting when running
14537         ./configure --help; ./configure in a shell-mode buffer with
14538         compilation-shell-minor-mode turned on.
14540 2015-04-17  Glenn Morris  <rgm@gnu.org>
14542         * admin/authors.el (authors-valid-file-names, authors-renamed-files-alist): Additions.
14544 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
14546         * lisp/indent.el (indent-region): Don't deactivate the mark
14547         (Bug#20357)
14549 2015-04-17  Sam Steingold  <sds@gnu.org>
14551         lisp/net/rcirc.el (defun-rcirc-command): mark `target' as ignorable
14553 2015-04-16  Leo Liu  <sdl.web@gmail.com>
14555         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
14557 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
14559         * lisp/erc/erc-pcomplete.el (erc-pcomplete): Don't use `pcomplete' any more.
14561 2015-04-16  Glenn Morris  <rgm@gnu.org>
14563         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
14565 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
14567         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
14568         * configure.ac (LIBJPEG): Leave it empty for MinGW.
14570 2015-04-16  Glenn Morris  <rgm@gnu.org>
14572         * lisp/replace.el (query-replace-from-to-separator): Delay initialization
14573         to avoid rogue setting after startup.
14575 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
14577         Pre-4.6 GCC succeeds with unknown option
14578         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
14579         (Bug#20338)
14581 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
14583         '[:graph:]' now excludes whitespace, not just ' '
14584         * doc/lispref/searching.texi (Char Classes):
14585         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
14586         sans whitespace (not sans space).
14587         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
14588         not just space.
14589         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
14591 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
14593         (looking-back): Make the second arg non-optional.
14594         * lisp/subr.el (substitute-key-definition-key, special-form-p)
14595         (macrop): Drop deprecated second arg to indirect-function.
14596         (looking-back): Make the second arg non-optional.
14598         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
14599         command is actually sent to the shell.
14601 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
14603         Port jpeg configuration to Solaris 10 with Sun C
14604         * configure.ac: Check for jpeglib 6b by trying to link it, instead
14605         of relying on cpp magic that has problems in practice.  Check for
14606         both jpeglib.h and jerror.h features.  Remove special case for
14607         mingw32, which should no longer be needed (and if it were needed,
14608         should now be addressable by hotwiring emacs_cv_jpeglib).
14609         (Bug#20332)
14611 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
14613         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
14614         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
14615         Move to elisp-mode.el.
14616         (lisp-mode-variables): (Re)move elisp-specific settings.
14617         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
14618         from lisp-mode-variables.
14619         (elisp--font-lock-flush-elisp-buffers): New function, moved from
14620         lisp-mode.el.
14622         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
14623         Avoid pathological slowdown at top-level in large file.
14625 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
14627         Standardize names of ChangeLog history files
14628         Suggested by Glenn Morris in:
14629         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
14630         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
14631         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
14632         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
14633         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
14634         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
14635         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
14636         Remove.
14638         Split top-level entries into pre- and post-April 7
14639         This more clearly distingiushes pre-April-7 ChangeLog entries (which
14640         are for top-level files only) from post-April-7 entries (which are
14641         about files at all levels.  Problem reported by Glenn Morris in:
14642         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
14643         * ChangeLog.1: Move post-April-7 entries from here ...
14644         * ChangeLog.2: ... to this new file.
14645         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
14647 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
14649         Fix recent cus-start changes that added customize-rogues
14650         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
14651         vars early.
14652         * lisp/loadup.el ("cus-start"): Move to the end to reduce customize-rogue.
14654 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
14656         Define cl-concatenate as an alias to seq-concatenate
14657         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
14658           code by making cl-concatenate an alias to seq-concatenate.
14660 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
14662         * src/lread.c (intern_1): Make sure we'd find the symbol we add
14663         (Bug#20334)
14664         * src/xfaces.c (resolve_face_name): Don't use `intern' with Lisp_Strings.
14666 2015-04-15  Glenn Morris  <rgm@gnu.org>
14668         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
14670 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14672         Clean up gnus-uu saving code slightly
14673         * gnus-uu.el (gnus-uu-save-article): Make the
14674         save-restriction/widen calls make more sense.
14676 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
14678         Make [:graph:] act like [:print:] sans space
14679         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
14680         [:graph:] so that it matches everything that [:print:] does,
14681         except for space.
14682         * doc/lispref/searching.texi (Char Classes):
14683         * etc/NEWS:
14684         * lisp/emacs-lisp/rx.el (rx):
14685         Document [:graph:] to be [:print:] sans ' '.
14686         * src/character.c, src/character.h (graphicp): New function.
14687         * src/regex.c (ISGRAPH) [emacs]: Use it.
14688         (BIT_GRAPH): New macro.
14689         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
14690         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
14691         Return BIT_GRAPH for RECC_GRAPH.
14692         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
14693         and ISPRINT if BIT_PRINT.
14695 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
14697         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
14698         Don't use call-next-method in a cl-defmethod.
14700         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
14701         (eieio--class-p): Remove, provided by cl-defstruct.
14703 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
14705         Add seq-intersection and seq-difference to the seq library
14706         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference): New
14707         functions.
14708         * test/automated/seq-tests.el: Add tests for seq-intersection and
14709         seq-difference.
14710         * doc/lispref/sequences.texi: Add documentation for seq-intersection
14711         and seq-difference.
14713 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
14715         * eieio-core.el (class-abstract-p): Don't inline, to avoid leaking internals
14717 2015-04-14  Sam Steingold  <sds@gnu.org>
14719         package--ensure-init-file: widen requires save-restriction
14721 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
14723         Improve the commit-msg Git hook for unibyte environments
14724         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
14725         in unibyte environments.  (Suggested by Paul Eggert
14726         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
14727         [:print:], based on UTF-8 sequences of the unprintable characters.
14729         Describe problems with cursor caused by Windows Magnifier
14730         * etc/PROBLEMS: Describe the problem with cursor shape on
14731         MS-Windows due to Windows Magnifier.
14732         (Bug#20271)
14734         Make [:print:] support non-ASCII characters correctly
14735         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
14736         (BIT_PRINT): New bit mask.
14737         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
14738         * src/character.c (printablep): New function.
14739         * src/character.h (printablep): Add prototype.
14740         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
14741         of 'print', 'alnum', and 'alphabetic'.
14742         * doc/lispref/searching.texi (Char Classes): Document the new
14743         behavior of [:print:].
14744         * etc/NEWS: Mention the new behavior of [:print:].
14746         Assign correct general-category and names to surrogates
14747         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
14748         surrogates.  This avoids assigning them the default
14749         general-category of 'Cn', i.e. unassigned codepoints.
14750         (unidata-get-name): Give surrogates synthetic names.
14752 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
14754         Assume C89 offsetof in xterm.c, xlwmenu.c
14755         * lwlib/xlwmenu.c (offset):
14756         * src/xterm.c (cvt_string_to_pixel_args):
14757         Use offsetof, not XtOffset.
14759 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
14761         Assume C89 offsetof in widget.c
14762         * src/widget.c (XtOffset): Remove; no longer needed.
14763         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
14765         Fix think-o in previous patch
14766         * src/window.c (count_windows, get_leaf_windows):
14767         Don't optimize count_windows incorrectly.
14769 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
14771         Avoid some int overflows in window.c
14772         * src/print.c (print_object):
14773         * src/window.c (sequence_number):
14774         * src/window.h (struct window.sequence_number):
14775         Don't assume window sequence number fits in int.
14776         * src/window.c (window_select_count):
14777         * src/window.h (struct window.use_time, window_select_count):
14778         Don't assume window use time fits in int.
14779         * src/window.c (Fsplit_window_internal):
14780         Don't assume user-supplied integer, or sum, fits in int.
14781         (Fset_window_configuration, count_windows, get_leaf_windows)
14782         (save_window_save, Fcurrent_window_configuration):
14783         Use ptrdiff_t for object counts.
14784         (Fset_window_configuration): Omit unused local 'n'.
14785         (count_windows): Simplify by writing in terms of get_leaf_windows.
14786         (get_leaf_windows): Don't store through FLAT if it's null.
14787         (extract_dimension): New static function.
14788         (set_window_margins, set_window_fringes, set_window_scroll_bars):
14789         Use it to avoid undefined behavior when converting user-supplied
14790         integer to 'int'.
14792 2015-04-13  Glenn Morris  <rgm@gnu.org>
14794         Minor doc copyedits
14795         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
14796         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
14798 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
14800         [Gnus] Catch the invalid-operation that idna.el will issue
14801         * lisp/gnus/gnus-art.el (gnus-use-idna):
14802         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
14803         * lisp/gnus/message.el (message-use-idna):
14804         Catch the invalid-operation that idna.el will issue.
14806 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
14808         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
14810 2015-04-13  Sam Steingold  <sds@gnu.org>
14812         package--ensure-init-file: widen before looking for "(package-initialize)"
14814 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
14816         Change diff-switches default to `-u'
14817         (Bug#20290)
14818         * doc/emacs/files.texi (Comparing Files): Document the new default
14819         value of `diff-switches'.
14820         * doc/emacs/trouble.texi (Sending Patches): Document the preference
14821         for unified diff format.  Escape the plus in the suggested `-F' regexp
14822         value.
14823         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
14825 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
14827         (gnus-group--setup-tool-bar-update): Fix last change
14828         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
14829         cursor-sensor-functions should be a list of functions.
14831 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
14833         Use gmm-called-interactively-p in Gnus
14834         * lisp/gnus/gnus-topic.el (gnus-topic-mode): Use gmm-called-interactively-p.
14836 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
14838         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
14839         (Bug#20321)
14840         * lisp/cus-start.el (read-buffer-function): Don't advertize
14841         iswitchb-read-buffer any more.
14842         (iswitchb): Don't tweak this obsolete group any more.
14844 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
14846         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file
14848         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings
14849         Adding a string after a constructor's argument list will use
14850         that string as the constructor function docstring.  If this string
14851         is absent but the struct itself was given a docstring, use that as
14852         the constructor's docstring.
14853         Fixes (bug#17284).
14855 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
14857         Deprecate `intangible' and `point-entered' properties
14858         * lisp/emacs-lisp/cursor-sensor.el: New file.
14859         * lisp/simple.el (pre-redisplay-functions): New hook.
14860         (redisplay--pre-redisplay-functions): New function.
14861         (pre-redisplay-function): Use it.
14862         (minibuffer-avoid-prompt): Mark obsolete.
14863         (redisplay--update-region-highlight): Adapt it to work as a function on
14864         pre-redisplay-functions.
14865         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
14866         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
14867         than point-entered to make the prompt intangible.
14868         * lisp/forms.el: Move `provide' calls to the end.
14869         (forms-mode): Don't use `run-hooks' on a local var.
14870         (forms--make-format, forms--make-format-elt-using-text-properties):
14871         Use cursor-intangible rather than `intangible'.
14872         (forms-mode): Enable cursor-intangible-mode.
14873         * lisp/isearch.el (isearch-mode): Use defvar-local.
14874         (cursor-sensor-inhibit): Declare.
14875         (isearch-mode): Set cursor-sensor-inhibit.
14876         (isearch-done): Set it back.
14877         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
14878         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
14879         any more.
14880         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
14881         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
14882         Add Edebug spec.
14883         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
14884         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
14885         inhibit-point-motion-hooks any more.
14886         (ses--cell-at-pos, ses--curcell): New functions, extracted from
14887         ses-set-curcell.
14888         (ses-set-curcell): Use them.
14889         (ses-print-cell, ses-setup): Use cursor-intangible instead of
14890         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
14891         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
14892         Use ses--cell-at-pos.
14893         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
14894         extracted from ses-command-hook.  Make them work with multiple windows
14895         displaying the same buffer.
14896         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
14897         Enable cursor-intangible-mode.
14898         (ses-command-hook): Remove cell highlight and mode-line update code.
14899         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
14900         Update for new name of text-property holding the cell name.
14901         (ses-rename-cell): Don't mess with mode-line-process.
14902         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
14903         cursor-sensor-functions property instead of point-entered.
14904         (erc-insert-timestamp-right, erc-format-timestamp):
14905         Use cursor-intangible rather than `intangible'.
14906         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
14907         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
14908         cursor-sensor-mode if needed.
14909         (erc-echo-timestamp): Adapt to calling convention of
14910         cursor-sensor-functions.
14911         (erc-insert-timestamp-right): Remove unused vars `current-window' and
14912         `indent'.
14913         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
14914         (gnus-update-group-mark-positions): Remove unused `topic' var.
14915         (gnus-group-insert-group-line): Remove unused var `header'.
14916         (gnus-group--setup-tool-bar-update): New function.
14917         (gnus-group-insert-group-line): Use it.
14918         (gnus-group-update-eval-form): Declare local
14919         dynamically-bound variables.
14920         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
14921         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
14922         (gnus-group-prepare-topics, gnus-topic-update-topic)
14923         (gnus-topic-change-level, gnus-topic-catchup-articles)
14924         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
14925         Use inhibit-read-only.
14926         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
14927         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
14928         * lisp/textmodes/reftex-index.el (reftex-display-index):
14929         Use cursor-intangible-mode if available.
14930         (reftex-index-post-command-hook): Check cursor-intangible.
14931         * lisp/textmodes/reftex-toc.el (reftex-toc):
14932         Use cursor-intangible-mode if available.
14933         (reftex-toc-recenter, reftex-toc-post-command-hook):
14934         Check cursor-intangible.
14935         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
14936         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
14937         (sgml-tags-invisible): Use with-silent-modifications and
14938         inhibit-read-only.  Enable cursor-sensor-mode.
14939         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
14940         calling convention of cursor-sensor-functions.
14941         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
14942         (table-point-entered-cell-hook, table-point-left-cell-hook):
14943         Don't autoload.
14944         (table-cell-entered-state): Remove var.
14945         (table--put-cell-point-entered/left-property)
14946         (table--remove-cell-properties):
14947         Use cursor-sensor-functions rather than point-entered/left.
14948         (table--point-entered/left-cell-function): Merge
14949         table--point-entered-cell-function and table--point-left-cell-function
14950         and adjust to calling convention of cursor-sensor-functions.
14952         Update ldef-boots.el
14954         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
14956         * doc/misc/eieio.texi: Don't advertize now obsolete constructs
14958         Collapse successive char deletions in the undo log
14959         * src/cmds.c (remove_excessive_undo_boundaries): New function,
14960         extracted from Fself_insert_command.
14961         (Fdelete_char, Fself_insert_command): Use it.
14962         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
14963         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
14965         xterm and OSC 52: Add NEWS entry, and tweak the code
14966         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition to
14967         top-level.
14968         (terminal-init-xterm-activate-set-selection): Set a terminal property.
14969         (xterm--set-selection): Use it instead of checking the value of
14970         `terminal-initted'.  Don't use string-bytes.
14972 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
14974         xterm.el: Implement OSC-52 functionality for setting the X selection
14975         * lisp/term/xterm.el (xterm-max-cut-length): New var.
14976         (xterm--set-selection, terminal-init-xterm-activate-set-selection): New funs.
14977         (terminal-init-xterm, xterm--version-handler): Use them.
14979 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
14981         Remove left over code from when we used an obsolete/loaddefs.el file
14982         * lisp/subr.el (do-after-load-evaluation): Remove left over code from when
14983         we used an obsolete/loaddefs.el file.
14985         * cedet/semantic/fw.el: Use declare.
14986         * cedet/semantic/fw.el (semantic-exit-on-input)
14987         (semanticdb-without-unloaded-file-searches): Use declare.
14988         (semantic-fw-add-edebug-spec): Remove.
14990         (completion-lisp-mode-hook): Use completion-separator-chars
14991         * lisp/completion.el (completion-lisp-mode-hook):
14992         Use completion-separator-chars rather than local key binding.
14994         * src/*.c: Set deactivate_mark buffer-locally
14995         (Bug#20260)
14996         * src/insdel.c (prepare_to_modify_buffer_1):
14997         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
14998         buffer-locally.
15000 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
15002         python.el: Keep symmetry on sexp navigation with parens
15003         (Bug#19954)
15004         * lisp/progmodes/python.el
15005         (python-nav--forward-sexp): Add argument skip-parens-p.
15006         (python-nav-forward-sexp, python-nav-backward-sexp)
15007         (python-nav-forward-sexp-safe)
15008         (python-nav-backward-sexp-safe): Use it.
15009         * test/automated/python-tests.el
15010         (python-nav-forward-sexp-1): Fix test.
15012 2015-04-12  João Távora  <joaotavora@gmail.com>
15014         Don't use `setq-local' in Gnus code
15015         This might break upstream builds with older Emacsen
15016         * lisp/gnus/message.el (message-mode): Use `set' and
15017         `make-local-variable' instead of `setq-local'.
15019 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
15021         Update Makefile.in's .PHONY dependencies
15022         * Makefile.in (change-history-commit, master-branch-is-current)
15023         (no-ChangeLog): Now phony.
15025         Remove configure's --with-mmdf option
15026         * configure.ac (MAIL_USE_MMDF): Remove.
15027         * etc/NEWS: Document this.
15028         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
15029         (Bug#20308)
15031         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
15032         That way, 'make install' won't think it's a man page.
15033         Reported by Ashish SHUKLA in:
15034         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
15036         Improve 'make change-history' prereq tests
15037         * Makefile.in (gen_origin): Fix to match what's in the master branch.
15038         (no-ChangeLog, master-branch-is-current): New rules.
15039         (change-history): Depend on them, to avoid similar future problems.
15040         Escape the local-variables string to pacify Emacs when editing
15041         Makefile.in.
15043 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
15045         * test/automated/package-test.el (with-package-test): Kill Packages buffer
15047         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt
15048         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
15049         "Upgrade" last, and use capitalized instead of all-caps.
15051         * lisp/emacs-lisp/package.el: Completely silence async operations
15052         (package--make-autoloads-and-stuff): Silence autoloads.
15053         (package--save-selected-packages): New function, silences
15054         `customize-save-variable'.
15055         (package--user-selected-p, package-install-from-buffer)
15056         (package-delete, package-install): Use it.
15057         (package-install-from-archive)
15058         (package-menu--perform-transaction): Silence.
15059         (package-menu-execute): Feedback when operation starts.
15061         Use delay-mode-hooks when visiting the init-file
15062         * lisp/emacs-lisp/package.el (package--ensure-init-file):
15063         delay-mode-hooks
15064         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks
15066         * lisp/files.el: Only message when saving if save-silently is nil
15067         (save-silently): New variable.
15068         (files--message): New function.
15069         (find-file-noselect, save-buffer, basic-save-buffer)
15070         (basic-save-buffer-2, save-some-buffers, not-modified)
15071         (append-to-file): Use them.
15073 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
15075         Support debug declarations in pcase macros
15076         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
15077         (pcase-UPAT): Use it.  Remove "`".
15078         (pcase--edebug-match-macro): New function.
15079         (pcase-defmacro): Support debug declarations.
15080         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
15081         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
15082         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>: Add debug declaration.
15084         pcase.el: Edebug support for `app' and vector patterns
15085         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
15086         (pcase-UPAT): Use it. Support `app' patterns.
15087         (pcase-QPAT): Support vector patterns.
15089         edebug.el: Disambiguate vector specifications
15090         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
15091         `(vector ...)' as a vector specification, not as a sublist.
15093         (gnus-summary-refer-thread): Don't clobber unread articles
15094         This fixes a bug where `A T' causes "random" articles to become marked
15095         as read.
15096         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
15097         gnus-newsgroup-unreads remains sorted.
15099         mouse-sel.el: Fix mouse-sel-get-selection-function
15100         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
15101         Use gui--last-selected-text-primary instead of no longer existing
15102         gui-last-selected-text.
15104         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
15106         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
15108 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
15110         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate
15112         * lisp/emacs-lisp/package.el (list-packages): Call refresh in right buffer
15114         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations
15115         (byte-compile--interactive): New var.
15116         (byte-compile--message): New function.
15117         (byte-compile-log-1, byte-force-recompile)
15118         (byte-recompile-directory, byte-recompile-file)
15119         (byte-compile-file, compile-defun)
15120         (byte-compile-file-form-defmumble, byte-compile)
15121         (byte-compile-file-form-defalias, display-call-tree): Use it.
15123         * lisp/files.el: Don't message when nothing happened
15124         (save-some-buffers, basic-save-buffer): Before messaging to say
15125         "nothing was saved" check if (called-interactively-p 'any).
15127 2015-04-12  João Távora  <joaotavora@gmail.com>
15129         Summary: Improve sexp-based movement in message-mode
15130         Works by giving citations and smileys a different syntax.  This helps
15131         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
15132         sexp-based movement.
15133         * lisp/gnus/message.el (message--syntax-propertize): New function.
15134         (message-mode): Set syntax-related vars.
15135         (message-smileys): New variable.
15136         * test/automated/message-mode-tests.el: New file
15138 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
15140         Use bool for boolean in window.c
15141         * src/window.c: Omit unnecessary static function decls.
15142         (adjust_window_count, select_window, Fselect_window)
15143         (window_body_width, Fwindow_body_height, Fwindow_body_width)
15144         (set_window_hscroll, check_window_containing, Fwindow_at)
15145         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
15146         (unshow_buffer, replace_window, recombine_windows)
15147         (add_window_to_list, candidate_window_p, next_window)
15148         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
15149         (Fget_buffer_window, Fdelete_other_windows_internal)
15150         (replace_buffer_in_windows_safely, set_window_buffer)
15151         (Fset_window_buffer, Fforce_window_update)
15152         (temp_output_buffer_show, make_parent_window)
15153         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
15154         (resize_frame_windows, Fsplit_window_internal)
15155         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
15156         (Fresize_mini_window_internal, mark_window_cursors_off)
15157         (window_scroll, window_scroll_pixel_based)
15158         (window_scroll_line_based, scroll_command, Fscroll_other_window)
15159         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
15160         (Fmove_to_window_line, Fset_window_configuration)
15161         (delete_all_child_windows, apply_window_adjustment)
15162         (set_window_fringes, set_window_scroll_bars)
15163         (Fset_window_vscroll, foreach_window, foreach_window_1)
15164         (compare_window_configurations, Fcompare_window_configurations):
15165         Prefer 'bool', 'true', and 'false' for booleans.
15166         * src/window.h (WINDOW_MODE_LINE_LINES)
15167         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
15169 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
15171         Speed up byte-compilation and autoload generation by avoiding mode-hooks
15172         This prevents emacs-lisp-mode-hook from being run everytime an
15173         autoload file is generated, which can account for a fraction of
15174         package installation time depending on the hooks the user has
15175         configured.
15176         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
15177         * lisp/emacs-lisp/autoload.el (autoload-find-file)
15178         (autoload-find-generated-file): Use delay-mode-hooks.
15180         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'
15181         (package-menu-refresh): Respect async and do new package checking.
15182         (list-packages): Use `package-menu-refresh' instead of repeating code.
15184         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help
15185         (package--quick-help-keys): New variable.
15186         (package--prettify-quick-help-key): New function.
15187         (package-menu-quick-help): Use it.
15189         * lisp/emacs-lisp/package.el: Fix initially wrong compat table
15190         (package--build-compatibility-table): require finder
15192         * test/automated/package-test.el: Fix new test
15194         * lisp/emacs-lisp/package.el: Silence async operations
15195         (package--silence): New variable.
15196         (package--message): New function.
15197         (package-import-keyring, package-refresh-contents)
15198         (package-compute-transaction, package-install, package-delete)
15199         (package-menu--perform-transaction, package-menu-execute): Use it.
15201         * test/automated/package-test.el: Test async functionality
15202         (package-test-update-archives-async): New test
15204 2015-04-11  Daiki Ueno  <ueno@gnu.org>
15206         Utilize `make-process' in epg.el
15207         * lisp/epg.el (epg-error-output): Abolish.
15208         (epg-context): New slot `error-buffer'.
15209         (epg--start): Use `make-process' and `make-pipe-process'.
15210         (epg--process-filter): Remove code separating stderr from stdout.
15211         (epg-wait-for-completion): Simplify `error-output' handling.
15212         (epg-reset): Dispose error buffer.
15214 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
15216         * .gitignore: Ignore doc temps and outputs.
15218         Port commit-msg to MSYS Bash+Gawk
15219         See Eli Zaretskii in:
15220         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
15221         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
15222         (cent_sign, print_at_sign, at_sign): Revert previous change.
15223         (print_at_sign): Prepend "BEGIN".
15224         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
15226         Port commit-msg to broken MS-Windows shell
15227         * build-aux/git-hooks/commit-msg (cent_sign):
15228         Just use UTF-8 here rather than ASCII + printf, as the latter fails
15229         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
15230         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
15232 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
15234         Support GnuTLS v3.4 and later on MS-Windows
15235         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
15236         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
15237         GnuTLS DLL to load according to value of libgnutls-version.
15238         (Bug#20294)
15240 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
15242         Minor quoting etc. fixes to misc manuals
15243         Fix some minor quoting and spacing issues.  Distinguish more
15244         clearly among grave accent and apostrophe (which are ASCII) and
15245         single quote (which is not).  Prefer the standard terms
15246         "apostrophe" and "grave accent" to alternative names that can be
15247         confusing.  Use apostrophes to single-quote ASCII text.
15248         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
15249         rather than approximating it in ASCII with grave accent.
15251 2015-04-11  Daiki Ueno  <ueno@gnu.org>
15253         Respect more keyword args in `make-process'
15254         * process.c (Fmake_process): Respect `:sentinel' and `:filter'
15255         keywords as documented.
15257 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
15259         Extract ChangeLog entries when committing a directory
15260         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
15261         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
15262         Add a FIXME comment.
15263         (log-edit-changelog-entries): Extract from
15264         `log-edit-changelog-entries', handle FILE being a directory
15265         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
15267 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
15269         Fix problems found by --enable-gcc-warnings
15270         * src/process.c (create_process, Fmake_pipe_process)
15271         (Fmake_network_process): Omit unused locals.
15273         Fix commit-msg to handle scissors lines
15274         * build-aux/git-hooks/commit-msg:
15275         Ignore every line after a scissors line, such as a line generated
15276         by 'git commit -v'.  Problem reported by Johan Bockgård in:
15277         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
15279         port commit-msg to Gawk 3.0.4 (1999)
15280         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
15281         (print_at_sign, at_sign): New vars.  Use them to avoid problems
15282         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
15283         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
15285         Have commit-msg report commit failure
15286         * build-aux/git-hooks/commit-msg: If the commit is aborted,
15287         say so.  Simplify by doing this at the end.  Problem reported
15288         by Eli Zaretskii in:
15289         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
15291 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15293         Clean up LDAP Configuration section of EUDC manual
15294         * doc/misc/eudc.texi: Combine indices.
15295         (LDAP Configuration): Use command markup.  Add index entries.
15296         Change formatting.  Wrap long lines.  Add noindent markup.
15298 2015-04-10  Daiki Ueno  <ueno@gnu.org>
15300         Add facility to collect stderr of async subprocess
15301         * src/w32.h (register_aux_fd): New function declaration.
15302         * src/w32.c (register_aux_fd): New function.
15303         * src/process.h (struct Lisp_Process): New member stderrproc.
15304         * src/process.c (PIPECONN_P): New macro.
15305         (PIPECONN1_P): New macro.
15306         (Fdelete_process, Fprocess_status, Fset_process_buffer)
15307         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
15308         (Fcontinue_process): Handle pipe process specially.
15309         (create_process): Respect p->stderrproc.
15310         (Fmake_pipe_process): New function.
15311         (Fmake_process): Add new keyword argument :stderr.
15312         (wait_reading_process_output): Specially handle a pipe process when
15313         it gets an EOF.
15314         (syms_of_process): Register Qpipe and Smake_pipe_process.
15315         * doc/lispref/processes.texi (Asynchronous Processes): Document
15316         `make-pipe-process' and `:stderr' keyword of `make-process'.
15317         * lisp/subr.el (start-process): Suggest to use `make-process' handle
15318         standard error separately.
15319         * test/automated/process-tests.el (process-test-stderr-buffer)
15320         (process-test-stderr-filter): New tests.
15321         * etc/NEWS: Mention new process type `pipe' and its usage with the
15322         `:stderr' keyword of `make-process'.
15324 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
15326         Minor quoting etc. fixes to lispref manual
15327         * doc/lispref/tips.texi (Documentation Tips):
15328         Distinguish more clearly among grave accent, apostrophe,
15329         and single quote.
15330         * doc/lispref/README, doc/lispref/buffers.texi:
15331         * doc/lispref/commands.texi, doc/lispref/control.texi:
15332         * doc/lispref/customize.texi, doc/lispref/display.texi:
15333         * doc/lispref/elisp.texi, doc/lispref/files.texi:
15334         * doc/lispref/frames.texi, doc/lispref/hash.texi:
15335         * doc/lispref/help.texi, doc/lispref/internals.texi:
15336         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
15337         * doc/lispref/markers.texi, doc/lispref/modes.texi:
15338         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
15339         * doc/lispref/os.texi, doc/lispref/positions.texi:
15340         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
15341         * doc/lispref/text.texi, doc/lispref/tips.texi:
15342         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
15343         Use American-style double quoting in ordinary text,
15344         and quote 'like this' when single-quoting in ASCII text.
15345         Also, fix some minor spacing issues.
15347 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
15349         Handle symlinked test directory in tramp-tests.el
15350         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
15351         (tramp--test-check-files): Use `file-truename' for directories.
15353 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
15355         Fix 'recenter' when visual-line-mode is turned on
15356         * src/window.c (Frecenter): Use the same code for GUI and TTY
15357         frames alike; use vmotion only for "initial" frames.  This is
15358         because vmotion doesn't support visual-line-mode.  Rewrite the
15359         'iarg >= 0' case to use move_it_* functions instead of using
15360         vmotion, for the same reason.  Fix the clipping of the argument
15361         value to support scroll-margin in all cases and avoid unwarranted
15362         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
15363         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
15364         which see.
15366 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
15368         * abbrev.el (define-abbrev-table): Refine last change.
15370         cl-lib.el: Partial revert of "2015-04-05 Rationalize c[ad]+r"
15371         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
15372         use of c[ad]+r", so as to keep the "cl-" prefix on all
15373         cl-lib definitions.
15375         * vhdl-mode.el (vhdl-prepare-search-2): Use inhibit-point-motion-hooks
15377         * lisp/cedet/semantic: Remove some dead code
15378         * lisp/cedet/semantic/util-modes.el
15379         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
15380         any more.
15381         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
15382         not supported any more.
15383         (semantic-safe): Use `declare'.
15384         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
15385         (semantic-tag-intangible-p): Remove unused functions.
15386         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
15387         Remove unused function.
15389         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
15390         (gnus-article-hide-text, gnus-article-unhide-text)
15391         (gnus-article-unhide-text-type): Remove special handling of
15392         `intangible' since that property is not used any more.
15393         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
15395 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
15397         Use the VC root in `log-edit-listfun'
15398         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
15399         `log-edit-listfun'.
15401 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
15403         Fix description of Unix time, mention new function.
15404         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
15405         Unix time.
15406         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
15407         (Basic Operations on Units): Mention `calc-convert-exact-units'.
15409 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
15411         * lisp/emacs-lisp/package.el: Use mode-line-process for notification
15413 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
15415         (log-edit-insert-changelog-entries): Don't add newline after the last entry
15416         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
15417         Don't add newline after the last entry.
15419 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
15421         css-mode.el: Add "not" pseudo-class
15422         (Bug#20267)
15423         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
15424         list of CSS pseudo-classes.
15426 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
15428         etc/NEWS: Add missing entry for "Stop messing with the EMACS env var"
15430 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
15432         Stop messing with the EMACS env var
15433         * misc.texi (Interactive Shell): Remove description of EMACS env var.
15435 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
15437         Adapt 'make change-history' to coding cookie
15438         * Makefile.in (change-history): Adjust to change of format of
15439         ChangeLog file, which now has a coding cookie before an indented
15440         copyright notice.
15442 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
15444         Adapt 'make change-history' to coding cookie
15445         * Makefile.in (change-history): Adjust to change of format of
15446         ChangeLog file, which now has a coding cookie before an indented
15447         copyright notice.
15449         gitlog-to-changelog coding cookie and mv -i
15450         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
15451         for copyright notice prototype, so that we get a proper "coding:"
15452         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
15453         existing ChangeLog.  Problems reported by Eli Zaretskii in:
15454         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
15456         Merge from gnulib
15457         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
15458         2015-04-09 gitlog-to-changelog: port to MS-Windows
15460 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
15462         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
15463         (Bug#20212)
15465 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
15467         Stop messing with the EMACS env var
15468         (Bug#20202)
15469         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
15470         * lisp/comint.el (comint-exec-1):
15471         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
15472         * lisp/progmodes/compile.el (compilation-start): Same and bring
15473         INSIDE_EMACS's format in line with other users.
15475         css-mode.el (css-smie-rules): Fix indentation after complex selectors
15476         (Bug#20282)
15477         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
15478         inner structure of selectors.
15480 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
15482         python.el: Indent docstring lines to base-indent
15483         (Bug#19595)
15484         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
15485         an initial patch.
15486         * lisp/progmodes/python.el
15487         (python-indent-context): Add :inside-docstring context.
15488         (python-indent--calculate-indentation): Handle :inside-docstring.
15489         (python-indent-region): Re-indent docstrings.
15490         * test/automated/python-tests.el (python-indent-region-5)
15491         (python-indent-inside-string-2): Fix tests.
15493         python.el: Increase native completion robustness
15494         (Bug#19755)
15495         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
15496         this and providing useful ideas.
15497         * lisp/progmodes/python.el
15498         (python-shell-completion-native-output-timeout): Increase value.
15499         (python-shell-completion-native-try-output-timeout): New var.
15500         (python-shell-completion-native-try): Use it.
15501         (python-shell-completion-native-setup): New readline setup avoids
15502         polluting current context, ensures output when no-completions are
15503         available and includes output end marker.
15504         (python-shell-completion-native-get-completions): Trigger with one
15505         tab only.  Call accept-process-output until output end is found or
15506         python-shell-completion-native-output-timeout is exceeded.
15508 2015-04-08  Samer Masterson  <samer@samertm.com>
15510         * lisp/eshell: Make backslash a no-op in front of normal chars
15511         (Bug#8531)
15512         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
15513         (eshell-parse-backslash): Return escaped character after backslash
15514         if it is special.  Otherwise, if the backslash is not in a quoted
15515         string, ignore the backslash and return the character after; if
15516         the backslash is in a quoted string, return the backslash and the
15517         character after.
15518         * test/automated/eshell.el (eshell-test/escape-nonspecial)
15519         (eshell-test/escape-nonspecial-unicode)
15520         (eshell-test/escape-nonspecial-quoted)
15521         (eshell-test/escape-special-quoted): Add tests for new
15522         `eshell-parse-backslash' behavior.
15524 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
15526         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
15527         after the file name.
15528         (Bug#20276)
15530 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
15532         Minor quoting etc. fixes to Emacs manual
15533         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
15534         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
15535         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
15536         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
15537         * doc/emacs/indent.texi, doc/emacs/macos.texi:
15538         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
15539         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
15540         * doc/emacs/search.texi, doc/emacs/trouble.texi:
15541         * doc/emacs/vc1-xtra.texi:
15542         Use American-style double quoting in ordinary text,
15543         and quote 'like this' when single-quoting in ASCII text.
15544         Also, fix some minor spacing issues.
15546         Minor quoting etc. fixes to elisp intro
15547         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
15548         American-style double quoting in ordinary text.  In ASCII text,
15549         consistently quote 'like this' instead of `like this', unless
15550         Emacs requires the latter.
15552 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
15554         * CONTRIBUTE: Mention log-edit-insert-changelog.
15556         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
15558 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
15560         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
15562 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
15564         (eieio-copy-parents-into-subclass): Fix inheritance of initargs
15565         (Bug#20270)
15566         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
15567         Fix inheritance of initargs.
15569 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
15571         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
15572         while dowloading information.
15574         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
15575         (package--ensure-init-file): Check file contents before visiting.
15576         (package-initialize): Call it.
15577         (package-install-from-buffer, package-install): Don't call it.
15579 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
15581         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800
15582         (Bug#17517)
15584 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
15586         Fix nasty scoping bug in tramp-cache.el
15587         * lisp/net/tramp-cache.el (tramp-flush-file-property): Fix nasty scoping bug.
15589 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
15591         Add notice to visual commands section
15592         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
15593         such as git call less with its -F option which omits pagination if
15594         the contents is less than one page long.  This interferes with
15595         eshell's visual (sub-)commands.
15597 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
15599         ffap: Support environment variable expansion in file names
15600         (Bug#19839)
15601         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
15602         environment variable expansion in file names.
15604 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
15606         Prefer double-quote to accent-grave in man pages
15608 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
15610         (Bug#20257)
15611         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
15613 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
15615         Update etc/PROBLEMS.
15616         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
15617         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
15618         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
15619         respectively); other minor updates and tweaks.  (Bug#20011)
15621 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
15623         Add doc strings for some Isearch state vars
15624         * lisp/misearch.el (multi-isearch-buffer-list)
15625         (multi-isearch-file-list): Add doc strings.
15626         (Bug#20232)
15628 2015-04-07  Alan Mackenzie  <acm@muc.de>
15630         Always mark "<" and ">" in #include directives with text properties.
15631         * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock "anchored
15632         matcher" with an invocation of c-make-font-lock-search-function to allow
15633         fontification when there's no trailing space on an "#include <..>" line.
15635 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
15637         Generate a ChangeLog file from commit logs
15638         * .gitignore: Add 'ChangeLog'.
15639         * build-aux/gitlog-to-changelog: New file, from Gnulib.
15640         * build-aux/gitlog-to-emacslog: New file.
15641         * CONTRIBUTE: Document the revised workflow.
15642         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
15643         instead of just special cases.
15644         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
15645         (ChangeLog, unchanged-history-files, change-history)
15646         (change-history-commit): New rules.
15647         * admin/admin.el (make-manuals-dist--1):
15648         Don't worry about doc/ChangeLog.
15649         * admin/authors.el: Add a FIXME.
15650         * admin/make-tarball.txt:
15651         * lisp/calendar/icalendar.el:
15652         * lisp/gnus/deuglify.el:
15653         * lisp/obsolete/gulp.el:
15654         * lwlib/README:
15655         Adjust to renamed ChangeLog history files.
15656         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
15657         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
15658         Remove obsolete discussion of merging ChangeLog files.
15659         New section "Maintaining ChangeLog history".
15660         * build-aux/git-hooks/pre-commit:
15661         Reject attempts to commit files named 'ChangeLog'.
15662         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
15663         * make-dist: Make and distribute top-level ChangeLog if there's a
15664         .git directory.  Distribute the new ChangeLog history files
15665         instead of scattered ChangeLog files.  Distribute the new files
15666         gitlog-to-changelog and gitlog-to-emacslog.
15667         (Bug#19113)
15669         Rename ChangeLogs for gitlog-to-changelog
15670         This patch was implemented via the following shell commands:
15671         find * -name ChangeLog |
15672         sed 's,.*,git mv & &.1,
15673         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
15674         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
15675         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
15676         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
15677         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
15678         sh
15679         git commit -am"[this commit message]"
15681 This file records repository revisions from
15682 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
15683 commit f8ff3937660f4192d72dec2da31fa5c582434d1f (inclusive).
15684 See ChangeLog.1 for earlier changes.
15686 ;; Local Variables:
15687 ;; coding: utf-8
15688 ;; End:
15690   Copyright (C) 2015 Free Software Foundation, Inc.
15692   This file is part of GNU Emacs.
15694   GNU Emacs is free software: you can redistribute it and/or modify
15695   it under the terms of the GNU General Public License as published by
15696   the Free Software Foundation, either version 3 of the License, or
15697   (at your option) any later version.
15699   GNU Emacs is distributed in the hope that it will be useful,
15700   but WITHOUT ANY WARRANTY; without even the implied warranty of
15701   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15702   GNU General Public License for more details.
15704   You should have received a copy of the GNU General Public License
15705   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.