* lisp/dired.el (dired-unmark-all-files-query): Declare.
[emacs.git] / ChangeLog.2
blobd86ce387d57cb9a1bb93de77e102b146135efb57
1 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
3         Revert commit that broke 'make bootstrap'
5         * lisp/custom.el (custom-declare-variable): Revert commit
6         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
7         even when pcase has not been defined yet, when doing bootstrapping.
9 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
11         Port recent inline functions fix to Standard C
13         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
14         All uses rewritten to define the function directly rather than to
15         use a macro to define the function.  This conforms to Standard C,
16         which does not allow stray semicolons at the top level.  I hope it
17         also avoids the problems with TAGS.  Those macros, though clever,
18         were pretty confusing anyway, and it wasn’t clear they were worth
19         the aggravation even without the TAGS problem.
21 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
23         * lisp/isearch.el: Make character-fold search the default again.
25 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
27         * lisp/character-fold.el: Many improvements.
28         (character-fold-search-forward, character-fold-search-backward):
29         New command.
30         (character-fold-to-regexp): Remove lax-whitespace hack.
31         (character-fold-search): Remove variable.  Only isearch and
32         query-replace use char-folding, and they both have their own
33         variables to configure that.
35 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
37         * lisp/isearch.el: Generalize definition of regexp-function toggles.
38         (isearch-specify-regexp-function): New macro for specifying
39         possible values of `isearch-regexp-function'.
40         (isearch-toggle-character-fold, isearch-toggle-symbol)
41         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
43 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
45         * lisp/isearch.el (search-default-regexp-mode): New variable.
46         (isearch-mode): Use it.
48 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
50         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
51         (search-slow-speed, search-upper-case)
52         (search-nonincremental-instead, search-whitespace-regexp)
53         (search-invisible, isearch-hide-immediately)
54         (isearch-resume-in-command-history, search-ring-max)
55         (regexp-search-ring-max, search-ring-update, search-highlight)
56         (isearch-fail): Delete :group entries.
58 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
60         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
62 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
64         addpm.c: Silence some warnings.
66         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
67         to LPBYTE.
68         (add_registry): Pass NULL to optional lpClass argument of
69         RegCreateKeyEx, not an empty string.
71 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
73         addpm.c: Do not add obsolete GTK libraries to the path.
75         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
76         (add_registry): Remove variables `size' and `gtk_key'.
77         Do not add the GTK DLL directory to the library search path; it is
78         confusing behavior (in particular, the same Emacs version with and
79         without invoking addpm will use a different path), and the GTK image
80         libraries are obsolete anyway.
82 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
84         addpm.c: Replace existing registry entries, but do not create new ones
86         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
87         existing values from previous versions, but do not add new ones; the
88         key could exist for other reasons unrelated to old Emacsen, like X-style
89         resources, or to set some environment variables like HOME or LANG, and
90         in that case we don't want to populate it with obsolete values.
92 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
94         * nt/addpm.c (add_registry): Do not compute unused return value.
96 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
98         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
100         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
101         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
102         current behavior because REG_OPTION_NON_VOLATILE is defined to
103         be 0L anyway, but that option is actually documented only for
104         RegCreateKeyEx.
106 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
108         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
110 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
112         Update frame title when redisplay scrolls selected window
114         * src/xdisp.c (redisplay_window): Reconsider the frame's title
115         when the mode-line of the frame's selected window needs to be
116         updated.
118 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
120         Update frame title when scrolling the selected window
122         * src/window.c (wset_update_mode_line): New function, sets either the
123         window's update_mode_line flag or the global update_mode_lines
124         variable.
125         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
126         (window_scroll_line_based): Call it instead of only setting the
127         window's update_mode_line flag.
129 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
131         An even better fix for bug#21739
133         * src/window.c (set_window_buffer): If the window is the frame's
134         selected window, set update_mode_lines, not the window's
135         update_mode_line flag.  (Bug#21739)
136         * src/buffer.c (Fkill_buffer): Undo last change.
137         (set_update_modelines_for_buf): Function deleted.
139 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
141         Sync with soap-client repository, version 3.0.0
143 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
145         Update the new icon
147         Move the E slightly to the right in the circle.
149         * etc/images/icons/hicolor/128x128/apps/emacs.png:
150         * etc/images/icons/hicolor/16x16/apps/emacs.png:
151         * etc/images/icons/hicolor/24x24/apps/emacs.png:
152         * etc/images/icons/hicolor/32x32/apps/emacs.png:
153         * etc/images/icons/hicolor/48x48/apps/emacs.png:
154         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
155         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
156         * nt/icons/emacs.ico: New icom update.
158 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
160         Avoid missing inline functions from lisp.h in TAGS
162         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
163         need to end each invocation with a semi-colon.
164         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
165         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
166         inline functions defined immediately after each invocation, and
167         also avoid tagging every invocation of these macros.
169 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
171         A better fix for bug#21739
173         * src/buffer.c (set_update_modelines_for_buf): New function.
174         (Fkill_buffer): Use it to set the global variable
175         update_mode_lines if the killed buffer was displayed in some
176         window.  Don't set windows_or_buffers_changed.  This is a better
177         fix for bug#21739 than the previous fix, since it will cause only
178         redisplay of mode lines, not of entire windows, but will still
179         catch attention of x_consider_frame_title in xdisp.c, which
180         redraws the frame title.
182 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
184         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
185         tar.bz2 and tar.xz archives.
187 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
189         Fix infloop in redisplay introduced by a recent change
191         * src/xdisp.c (redisplay_internal): Avoid inflooping when
192         redisplaying the selected window sets the selected frame's
193         redisplay flag.  (Bug#21745)
195 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
197         * lisp/emacs-lisp/thunk.el: Better documentation.
199 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
201         Replace the old icon for Windows and Mac OSX
203         * nt/icons/emacs.ico:
204         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
205         Use the new icons.
207 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
209         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
210         `load-path' should contain only directory names.
212 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
214         New library thunk.el
216         thunk.el is extracted from stream.el in ELPA, with additional tests.
218         * lisp/emacs-lisp/thunk.el: New file.
219         * test/automated/thunk-tests.el: New file.
220         * etc/NEWS: Add information about thunk.el
222 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
224         Fix Bug#21669
226         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
227         calling low-level functions.
229         * test/automated/file-notify-tests.el (file-notify--test-timeout):
230         Decrase to 6 seconds for remote directories.
231         (file-notify-test02-events): Expect different number of
232         `attribute-changed' events for the local and remote cases.  Apply
233         short delays between the operations, in order to receive all
234         events in the remote case.  Combine `attribute-change' tests.
235         (Bug#21669)
237 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
239         Decode the HTML source when displaying it in EWW
241         * lisp/net/eww.el (eww-view-source): Decode the HTML source
242         according to its headers.
244 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
246         New default icon
248         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
249         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
250         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
251         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
252         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
253         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
254         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
255         Move the old logo files to emacs23.*.
256         * etc/images/icons/hicolor/128x128/apps/emacs.png:
257         * etc/images/icons/hicolor/16x16/apps/emacs.png:
258         * etc/images/icons/hicolor/24x24/apps/emacs.png:
259         * etc/images/icons/hicolor/32x32/apps/emacs.png:
260         * etc/images/icons/hicolor/48x48/apps/emacs.png:
261         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
262         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
263         New files.
264         * etc/images/icons/README: Update the copyright information.
266 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
268         Fix redisplay of frame title when current buffer is killed
270         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
271         non-zero value, to redisplay more than just the affected windows.
272         (Bug#21739)
274 2015-10-23  Anders Lindgren  <andlind@gmail.com>
276         NextSten maximization and NSTRACE rewrite
278         Full-height, full-width, and maximized windows now cover the
279         entire screen (except the menu bar), including the part where the
280         system dock is placed.  The system zoom animation is no longer
281         used.
283         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
284         original size.
286         * src/nsterm.m (ns_menu_bar_height): New function, return height of
287         the menu bar, or 0 when it's hidden.
288         (constrain_frame_rect): New function for constraining a frame.
289         (ns_constrain_all_frames): Set frame size explicitly rather than
290         relying on the system doing it for us by writing back the current
291         frame size.
292         (windowWillUseStandardFrame): Register non-maximized width or
293         height as new user size.  When entering full width or height,
294         the other size component is taken from the user size.
295         (fullscreenState): New method for accessing the fullscreen state.
296         (constrainFrameRect): Restrict frame to be placed under the menu bar,
297         if present.  The old version, sometimes, restricted the height of a
298         frame to the screen, this version never does this.
299         (zoom): Perform zoom by setting the frame to the full size of the
300         screen (minus the menu bar).  The default system function, with the
301         zoom animation, is no longer used, as the final frame size doesn't
302         cover the entire screen.
304         Rework how to constrain resizing to the character grid.  The old
305         system used "resizeIncrements" in NSWindows.  However, once a frame
306         was resized so that it was not aligned to the text grid, it
307         remained unaligned even after a resize.  In addition, it conflicted
308         when resizing a fullheight window.
310         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
311         unless when pixelwise frame resizing is enabled.
312         (updateFrameSize, initFrameFromEmacs)
313         (toggleFullScreen, handleFS): Don't set resizeIncrements.
315         Redesign the NS trace system.  The call structure is represented
316         using indentations and vertical lines.  The NSTRACE macro accepts
317         printf-style arguments.  New macros for printing various
318         information.
320         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
321         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
322         block (typically a function), accept printf-style arguments.
323         (NSTRACE_MSG): Macro for extra information, accepts
324         printf-style arguments.
325         (NSTRACE_what): Macros for printing various types.
326         (NSTRACE_FMT_what): Macro with printf format string snippets.
327         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
328         corresponds to NSTRACE_FMT_what.
329         (NSTRACE_RETURN): Macro to print return value, accept
330         printf-style arguments.
331         (NSTRACE_RETURN_what): Macros to print return value for
332         various types.
334         * nsterm.m: Remove old NSTRACE macro
335         * src/nsterm.m (nstrace_num): Trace counter.
336         (nstrace_depth): Current call depth.
337         (nstrace_leave): NSTRACE support function, called when the
338         local variable "nstrace_enabled" goes out of scope using the
339         "cleanup" extension.
340         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
341         (constrain_frame_rect, ns_constrain_all_frames)
342         (ns_update_auto_hide_menu_bar, ns_update_begin)
343         (ns_update_window_begin, update_window_end, ns_update_end)
344         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
345         (ns_frame_rehighlight, x_make_frame_visible)
346         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
347         (x_destroy_window, x_set_offset, x_set_window_size)
348         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
349         (ns_defined_color, frame_set_mouse_pixel_position)
350         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
351         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
352         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
353         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
354         (dumpcursor, ns_draw_vertical_window_border)
355         (ns_draw_window_divider, ns_draw_relief)
356         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
357         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
358         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
359         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
360         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
361         (ns_create_terminal, ns_term_init, sendEvent)
362         (applicationDidFinishLaunching, applicationDidBecomeActive)
363         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
364         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
365         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
366         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
367         (mouse_autoselect_window, in_window, mouseDragged)
368         (rightMouseDragged, otherMouseDragged, windowShouldClose)
369         (updateFrameSize, windowWillResize, windowDidResize)
370         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
371         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
372         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
373         (windowDidEnterFullScreen, windowWillExitFullScreen)
374         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
375         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
376         (draggingEntered, performDragOperation, validRequestorForSendType)
377         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
378         (EmacsScroller_initFrame, EmacsScroller_setFrame)
379         (EmacsScroller_dealloc, condemn, reprieve, judge)
380         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
381         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
383         * nsfns.m: Remove old NSTRACE macro
384         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
385         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
386         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
388         * nsimage.m: Remove old NSTRACE macro
389         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
390         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
392         * nsmenu.m: Remove old NSTRACE macro
393         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
394         Use new trace system.
396 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
398         No need to use eval-and-compile
400         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
401         autoload epg functions.
403 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
405         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
407         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
408         epg-context-set-passphrase-callback, epg-decrypt-string, and
409         epg-encrypt-string; require epg when compiling for the setf-method
410         for epg-context-armor. (bug#21724)
412 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
414         Include file cleanup for w32 files in src directory
416         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
417         fontset.h, blockinput.h.
418         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
419         charset.h, fontset.h.
420         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
421         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
422         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
423         in an ifdef-ed away block.
424         Include fcntl.h for CYGWIN.
425         (set_frame_param): Remove unused function.
426         * src/w32select.c: Don't include charset.h and composite.h.
427         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
428         due to pointer signedness mismatches.
429         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
430         due to pointer signedness mismatches.
431         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
432         process.h, dispextern.h.
433         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
434         (Fw32_application_type): Avoid compiler warnings due to pointer
435         signedness mismatches.
436         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
437         character.h, charset.h, dispextern.h.
438         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
439         to pointer signedness mismatches.
440         * src/w32inevt.c: Don't include dispextern.h, window.h,
441         termhooks.h, w32heap.h.
442         * src/w32font.c: Don't include dispextern.h, character.h,
443         charset.h, fontset.h, font.h.
444         (intern_font_name, add_font_entity_to_list)
445         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
446         (list_all_matching_fonts): Avoid compiler warnings due to pointer
447         signedness mismatches.
448         * src/w32fns.c: Don't include character.h, intervals.h,
449         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
450         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
451         (w32_color_map_lookup, add_system_logical_colors_to_map)
452         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
453         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
454         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
455         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
456         compiler warnings, mainly due to pointer signedness mismatches.
457         (unwind_create_frame_1): Remove unused function.
458         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
459         window.h, termhooks.h, dispextern.h.
460         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
461         signedness mismatch.
462         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
463         w32heap.h.
465 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
467         Improve doc-view wrt. auto-revert-mode
469         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
470         is corrupted (bug#21729).
471         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
473 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
475         Describe dired-do-compress-to in the manual
477         * etc/NEWS: Update.
479         * lisp/dired-aux.el: Fix typo.
481         * doc/emacs/dired.texi: Add entry.
483 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
485         Further fix for proper locale handling in tramp-gvfs.el
487         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
488         Just suppress LC_MESSAGES locale category settings.
490 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
492         New lispref section “Security Considerations”
494         This attempts to document some of the issues recently discussed
495         on emacs-devel, and to indicate other such issues.  The section
496         could be a lot longer.
497         * doc/lispref/os.texi (Security Considerations):
498         New node.
499         * doc/lispref/elisp.texi (Top):
500         * doc/lispref/processes.texi (Shell Arguments):
501         * lisp/subr.el (shell-quote-argument):
502         * src/callproc.c (syms_of_callproc):
503         Reference it.
505 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
507         Merge from gnulib
509         This incorporates:
510         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
511         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
512         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
513         Copy from gnulib.
515 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
517         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
518         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
520 2015-10-21  Ken Brown  <kbrown@cornell.edu>
522         Further include-file cleanup
524         * src/sheap.c: Include stdlib.h.
525         * src/unexcw.c: Include string.h.
527 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
529         Fix logic in 'server-kill-emacs-query-function'
531         * lisp/server.el (server-kill-emacs-query-function): Correct the
532         logic that controls whether the user is asked for confirmation.
533         (Bug#21723)
535 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
537         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
538         (isearch--lax-regexp-function-p): New function.
540 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
542         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
543         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
544         around `isearch-regexp-function'.
546 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
548         * lisp/isearch.el: Rename word search to regexp-function search.
549         `isearch-word' went well beyond its original purpose, and the name
550         no longer makes sense.  It is now called
551         `isearch-regexp-function', and its value should always be a function
552         that converts a string to a regexp (though setting it to t is still
553         supported for now).
554         (isearch-word): Make obsolete.
555         (isearch-regexp-function): New variable.
556         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
557         (with-isearch-suspended, isearch-toggle-regexp)
558         (isearch-toggle-word, isearch-toggle-symbol)
559         (isearch-toggle-character-fold, isearch-query-replace)
560         (isearch-occur, isearch-highlight-regexp)
561         (isearch-search-and-update, isearch-message-prefix)
562         (isearch-search-fun-default, isearch-search)
563         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
564         Use it.
565         (isearch-lazy-highlight-regexp-function): New var.
566         (isearch-lazy-highlight-word): Make obsolete.
567         (isearch--describe-regexp-mode): New function.
568         (isearch--describe-word-mode): Make obsolete.
570         * lisp/info.el (Info-isearch-search):
571         * lisp/replace.el (replace-search, replace-highlight):
572         * lisp/obsolete/longlines.el (longlines-search-function):
573         * lisp/hexl.el (hexl-isearch-search-function):
574         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
575         Use the new var.
577 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
579         Add dired-do-compress-to command bound to "c"
581         * lisp/dired-aux.el (dired-shell-command): Use the caller's
582           `default-directory', return the result of `process-file'.
583         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
584         used by default.
585         (dired-compress-files-alist): New defvar.
586         (dired-do-compress-to): New command.
588         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
589         (dired-do-compress-to): Add an autoload entry.
591         * etc/NEWS: Add two entries.
593 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
595         Make RefTeX work with LaTeX subfiles package
597         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
598         document class argument as master file for referencing purposes.
600 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
602         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
604 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
606         Include-file cleanup for src directory
608         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
609         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
610         but does not include it directly.  As a general rule, a source
611         file should include foo.h if it needs the interfaces that foo.h
612         defines.
613         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
614         systime.h.
615         * src/atimer.c: Don’t include blockinput.h.
616         * src/buffer.c: Include coding.h, systime.h.  Don’t include
617         keyboard.h, coding.h.
618         * src/callint.c: Don’t include commands.h, keymap.h.
619         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
620         systty.h, termhooks.h.
621         * src/casetab.c: Don’t include character.h.
622         * src/category.c: Don’t include charset.h, keymap.h.
623         * src/ccl.h: Don’t include character.h.
624         * src/character.c: Don’t include charset.h.
625         * src/charset.c: Don’t include disptab.h.
626         * src/chartab.c: Don’t include ccl.h.
627         * src/cm.c: Don’t include frame.h, termhooks.h.
628         * src/cmds.c: Don’t include window.h, dispextern.h.
629         * src/coding.c: Don’t include window.h, frame.h.
630         * src/composite.c: Include composite.h.  Don’t include window.h,
631         font.h.
632         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
633         * src/dbusbind.c: Don’t include frame.h.
634         * src/decompress.c: Don’t include character.h.
635         * src/dired.c: Don’t include character.h, commands.h, charset.h.
636         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
637         process.h, timespec.h.  Include systime.h.
638         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
639         * src/editfns.c: Include composite.h.  Don’t include frame.h.
640         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
641         commands.h, systty.h..
642         * src/fileio.c: Don’t include intervals.h, dispextern.h.
643         Include composite.h.
644         * src/filelock.c: Don’t include character.h, systime.h.
645         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
646         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
647         * src/font.c: Include termhooks.h.
648         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
649         struct composition_it, struct face, struct glyph_string.
650         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
651         intervals.h, window.h, termhooks.h.
652         * src/frame.c: Don’t include character.h, commands.h, font.h.
653         * src/frame.h: Don’t include dispextern.h.
654         * src/fringe.c: Don’t include character.h.
655         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
656         character.h, charset.h, fontset.h.
657         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
658         fontset.h.
659         * src/ftxfont.c: Don’t include dispextern.h, character.h,
660         charset.h, fontset.h.
661         * src/gfilenotify.c: Don’t include frame.h, process.h.
662         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
663         Don’t include syssignal.h, buffer.h, charset.h, font.h.
664         * src/gtkutil.h: Don’t include frame.h.
665         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
666         Don’t include character.h.
667         * src/indent.c: Don’t include keyboard.h, termchar.h.
668         * src/inotify.c: Don’t include character.h, frame.h.
669         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
670         * src/intervals.c: Don’t include character.h, keyboard.h.
671         * src/intervals.h: Don’t include dispextern.h, composite.h.
672         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
673         Include coding.h.
674         * src/keyboard.h: Don’t incldue systime.h.
675         * src/keymap.c: Don’t include charset.h, frame.h.
676         * src/lread.c: Include dispextern.h and systime.h.
677         Don’t include frame.h.  Include systime.h.
678         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
679         * src/menu.c: Include character.h, coding.h.  Don’t include
680         dispextern.h.
681         * src/menu.h: Don’t include systime.h.
682         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
683         intervals.h, termhooks.h.
684         * src/print.c: Include coding.h.  Don’t include keyboard.h,
685         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
686         Add forward decl of struct terminal.
687         * src/process.c: Don’t include termhooks.h, commands.h,
688         dispextern.h, composite.h.
689         * src/region-cache.c: Don’t include character.h.
690         * src/scroll.c: Don’t include keyboard.h, window.h.
691         * src/search.c: Don’t include category.h, commands.h.
692         * src/sound.c: Don’t include dispextern.h.
693         * src/syntax.c: Don’t include command.h, keymap.h.
694         * src/sysdep.c: Don’t include window.h, dispextern.h.
695         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
696         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
697         * src/terminal.c: Include character.h.
698         Don’t include charset.h, coding.h.
699         * src/textprop.c: Don’t include character.h.
700         * src/undo.c: Don’t include character.h, commands.h, window.h.
701         * src/unexsol.c: Don’t include character.h, charset.h.
702         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
703         window.h, dispextern.h, blockinput.h, character.h, font.h.
704         * src/widgetprv.h: Don’t include widget.h.
705         * src/window.c: Don’t include character.h, menu.h, intervals.h.
706         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
707         macros.h, process.h.
708         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
709         intervals.h.
710         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
711         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
712         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
713         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
714         * src/xgselect.c: Don’t include timespec.h, frame.h.
715         Include systime.h.
716         * src/xgselect.h: Don’t include time.h.
717         Use a forward decl to struct timespec instead.
718         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
719         dispextern.h.  Include systime.h.
720         * src/xml.c: Don’t include character.h.
721         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
722         * src/xselect.c: Don’t include dispextern.h, character.h,
723         buffer.h, process.h.
724         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
725         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
726         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
728 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
730         (/ N) now returns the reciprocal of N
732         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
733         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
734         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
735         (color-xyz-to-srgb, color-xyz-to-lab):
736         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
737         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
738         (shr-color-hsl-to-rgb-fractions):
739         Exploit the change to simplify the code a bit.
740         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
741         Don’t complain about single-argument calls to ‘/’.
742         * src/data.c (arith_driver, float_arith_driver):
743         Implement the change.
745 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
747         Call vc-dir-refresh after stash operations
749         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
750         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
752         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
753         since it can be abbreviated (as returned by vc-find-root).
755 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
757         * lisp/vc/vc-svn.el:
758         * lisp/vc/vc-mtn.el:
759         * lisp/vc/vc-hg.el:
760         * lisp/vc/vc-cvs.el:
761         * lisp/vc/vc-git.el:
762         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
763         Its usages have been replaced with vc-run-delayed.
765 2015-10-20  Dima Kogan  <dima@secretsauce.net>
767         Fix memory leak in fontset handling
769         * src/font.c (copy_font_spec): Make a deep copy of the input
770         argument FONT.  (Bug#21651)
772 2015-10-20  Michael Sperber  <mike@xemacs.org>
774         * lisp/gnus/mailcap.el (mailcap-mime-data):
775         Conditonalize `doc-view-mode', which does not exist on XEmacs.
777 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
779         Update the way directories are compressed
781         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
782         for *.tar.gz decompression to use a pipe.
783         Add an entry for the default directory compression (to *.tar.g).
784         (dired-compress-file): Update.
786         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
788 2015-10-20  Michael Sperber  <mike@xemacs.org>
790         Unbreak `group' option for `mail-sources'
792         * nnml.el (nnml-retrieve-groups, nnml-request-scan):
793         * nnmail.el (nnmail-get-new-mail-per-group)
794         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
796 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
798         New function seq-position
800         * lisp/emacs-lisp/seq.el (seq-position): New function.
801         * test/automated/seq-tests.el: New tests for seq-position.
802         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
804 2015-10-19  Ken Brown  <kbrown@cornell.edu>
806         Enable --with-wide-int build on 32-bit Cygwin
808         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
809         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
811 2015-10-19  Glenn Morris  <rgm@gnu.org>
813         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
815 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
817         Resurrect image loading under auto-image-file-mode
819         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
820         'openp' specially.  This special case was lost in the changes on
821         2015-08-18.  (Bug#21685)
823 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
825         Fix return value of 'set-file-extended-attributes'
827         * lisp/files.el (set-file-extended-attributes): Return non-nil
828         when setting either ACLs or SELinux context succeeds.  Document
829         the return value.  (Bug#21699)
831         * doc/lispref/files.texi (Changing Files): Document the return
832         value of set-file-extended-attributes.
834 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
836         Improve documentation of functions that change files
838         * doc/lispref/files.texi (Changing Files): Document that these
839         functions signal an error on failure.
841 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
843         Fix doc string of 'shell-quote-argument'
845         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
847 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
849         Some minor Tramp changes
851         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
853         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
854         Expand `tramp-auto-save-directory'.
856 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
858         Minor edits in Tramp
860         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
861         Declare it.
863         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
864         Remove declaration.
866 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
868         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list
870 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
872         Avoid crashes when redisplayng a window changes faces or fonts
874         * src/xdisp.c (redisplay_internal): If redisplaying the selected
875         window or one of the frames turns on the frame's 'redisplay' flag,
876         redisplay again.  (Bug#21428)
878         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
880 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
882         Solve timimg issues in file-notify-tests.el
884         * test/automated/file-notify-tests.el (file-notify-test02-events):
885         Rectify `attribute-change' tests.  There are timing issues with
886         gfilenotify.  (Bug#21669)
888 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
890         Fix quoting of data within htmlfontify doc
892         * doc/misc/htmlfontify.texi (Data Structures, Customization):
893         Fix quoting of data structures.  A Lisp quote is needed only
894         when data appears within Lisp code.
896 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
898         * emacs-lisp/package.el: Reload archive-contents if priorities change
900         (package--old-archive-priorities): New variable.
901         (package-read-all-archive-contents, package-menu--refresh): Use it
902         to decide when the `package-archive-contents' needs to be read
903         again.
905 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
907         Make src headers idempotent and standalone
909         Redo src/*.h so that each include file is idempotent (that is, can
910         be included multiple times with the latter inclusions having no
911         effect) and standalone (that is, can be included by itself,
912         with no include file other than config.h needed as a prerequisite).
913         This is standard practice in GNU programs nowadays.
914         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
915         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
916         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
917         * src/regex.h [emacs]:
918         * src/syntax.h, src/systty.h, src/termhooks.h:
919         Include lisp.h, for Lisp_Object.
920         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
921         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
922         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
923         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
924         * src/termopts.h, src/tparam.h, src/unexec.h:
925         Protect against multiple inclusion.
926         * src/buffer.h: Include character.h, for STRING_CHAR.
927         * src/emacsgtkfixed.h (struct frame):
928         * src/fontset.h (struct face):
929         * src/region-cache.h (struct buffer):
930         * src/termhooks.h (struct glyph):
931         * src/xsettings.h (struct x_display_info):
932         Add possibly-forward decl.
933         * src/syntax.h: Include buffer.h, for BVAR.
934         * src/sysselect.h: Include lisp.h, for eassume.
935         * src/termchar.h: Include <stdio.h>, for FILE.
936         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
937         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
939 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
941         Handle symlink targets containing spaces in tramp-gvfs.el
943         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
944         Handle symlink targets containing spaces.
946 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
948         * custom.el (custom-theme-load-path): Demote to defvar
950         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
951         same reason that `load-path' shouldn't.  Setting it via the customize
952         interface is a trap for the user.
954         Installed themes commonly add themselves to this variable, which means
955         its value is not fit for being saved (it will permanently remember dirs
956         that don't exist anymore).
958         This is aggravated by the fact that Emacs always applies the `user'
959         theme on top of any theme that's loaded, since this will apply the old
960         variable value and remove any new directories that had been recently
961         added by themes themselves.
963         Not to mention, we already have `custom-theme-directory', which is safe
964         to customize.
966 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
968         * lisp/mpc.el: Rename the new toggling commands
970         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
971         (mpc-toggle-shuffle): Add "-toggle" in the name.
973 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
975         Improve the doc string of 'completion-boundaries'
977         * lisp/minibuffer.el (completion-boundaries): Rename the argument
978         TABLE to COLLECTION, for consistency with other high-level
979         completion functions.  Document how COLLECTION is called if it
980         is a function.  (Bug#21644)
982 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
984         lisp/dired-aux.el (dired-shell-command): Fix compile warning
986 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
988         Make dired-do-compress work for *.zip files
990         * lisp/dired-aux.el (dired-check-process): Transform the top-level
991           comment into a docstring.
992         (dired-shell-command): New command. This mirrors
993         `dired-check-process', but is more user-friendly for passing
994         arguments.
995         (dired-compress-file-suffixes): Allow to specify the command switches
996         along with input (%i) and output (%o) inside the PROGRAM part.
997         Add an entry for *.zip files, and update the entry for *.tar.gz files
998         to the new style. Update the docstring.
999         (dired-compress-file): When PROGRAM matches %i or %o, use the new
1000         logic.
1001         (dired-update-file-line): Avoid an error when at end of buffer.
1003         Fixes Bug#21637
1005 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
1007         Minor improvement in documentation of internals
1009         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
1011 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
1013         Improve documentation of COLLECTION in completion functions
1015         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
1016         cross-reference to "Programmed Completion".
1018         * src/minibuf.c (Fcompleting_read): Improve the doc string.
1019         (Bug#21644)
1021 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
1023         Add more release info to etc/HISTORY
1025         * etc/HISTORY: Add more release information about 19.x and 20.x
1026         versions.
1028 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
1030         New file etc/HISTORY
1032         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
1033         * etc/HISTORY: New file.
1034         * etc/NEWS: Mention it.
1036 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
1038         js-mode: Don't misindent generator methods
1040         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
1041         generator methods from multiplication operator
1042         (https://github.com/mooz/js2-mode/issues/275).
1044 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
1046         Fix animation timeout delay calculation
1048         * lisp/image.el (image-animate-timeout):
1049         Don’t assume speed is floating-point.
1051 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
1053         Add commands for controlling MPD modes
1055         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
1056         (mpc-cmd-single): New functions.
1057         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
1058         (mpc-mode-menu): Add new commands as menu items.
1060 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
1062         Refer to `(elisp)Basic Completion' in completing-read docstring
1064         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
1065         Completion' in the docstring (bug#21644).
1067 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
1069         * lisp/mpc.el (mpc-format): Always push form to pred
1071 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
1073         Spelling fixes
1075         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
1076         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
1077         Fix misspelling of nonexistent file name.
1079 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
1081         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
1083 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
1085         Some editing fixes in Tramp
1087         * lisp/net/tramp-gvfs.el:
1088         * doc/misc/tramp.texi: "customer option" -> "custom option".
1090         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
1092 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
1094         Use proper localization in tramp-gvfs.el
1096         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
1097         Suppress localized settings in order to proper parse gfvs output.
1099 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
1101         Fix Bug#21562
1103         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
1104         Quote argument in proper order.  (Bug#21562)
1106 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
1108         Fix typos in docstrings
1110         * lisp/emacs-lisp/map.el:
1111         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
1112           macros.
1114 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
1116         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
1118 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
1120         Make dired-jump work with tar-subfile-mode
1122         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
1123           emitting an error, switch to `tar-superior-buffer'.
1125 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
1127         * .gitignore: Add build-aux/ar-lib.
1129 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
1131         Better docstrings in seq.el and map.el
1133         * lisp/emacs-lisp/map.el:
1134         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
1136 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
1138         Merge from gnulib
1140         This incorporates:
1141         2015-10-13 binary-io, u64, unistd: port to strict C
1142         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
1143         2015-09-25 c-ctype: port better to z/OS EBCDIC
1144         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
1145         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
1146         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
1147         Copy from gnulib.
1149 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
1151         Take XPNTR private
1153         * src/alloc.c (PURE_POINTER_P): Remove.
1154         All uses replaced with PURE_P.
1155         (XPNTR_OR_SYMBOL_OFFSET): New function.
1156         (XPNTR): Move here from lisp.h.
1157         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
1158         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
1159         Remove unnecessary cast.
1160         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
1161         to avoid an unnecessary runtime test for symbols.
1162         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
1163         Only alloc.c needs XPNTR now.
1165 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
1167         Add MPC play/pause command
1169         * lisp/mpc.el (mpc-toggle-play): New command.
1170         (mpc-mode-map): Bind it to "s".
1171         (mpc-mode-menu): Add corresponding menu item.
1173 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
1175         Add bindings and menu items for prev and next tracks
1177         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
1178         "<" to mpc-prev.
1179         (mpc-mode-menu): Add corresponding menu items
1181 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
1183         Reduce face-related consing during frame creation.
1185         * faces.el (face--attributes-unspecified): Compute the "unspecified"
1186         attribute list once.
1187         (face-spec-reset-face): Use it instead of building the list.
1189 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
1191         Do process ConfigureNotify events indicating size changes.
1193         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
1194         events don't have the same size, process each one.
1196 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
1198         Derive mpc-mode from special-mode
1200         lisp/mpc.el (mpc-mode-map): Make from sparse keymap. Unbind g.
1201         (mpc-mode): Derive from special mode.
1202         (mpc-songs-mode-map): Don't set parent keymap.
1204 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
1206         Fix error messages for when covers are not found.
1208         The last change to mpc-format let the binding to file call
1209         mpc-file-local-copy with nil argument. Instead, employ if-let here so
1210         nil bindings don't result in needless computation and errors.
1211         * lisp/mpc.el: Require 'subr-x at compile time.
1212         * lisp/mpc.el (mpc-format): Use if-let.
1214 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
1216         Make dired-do-compress work for *.tar.gz files
1218         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
1219           "tar -zxvf" to *.tar.gz; update docstring.
1221         (dired-compress-file): Allow to specify switches after the command in
1222         `dired-compress-file-suffixes'.
1224 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
1226         Make dired-do-compress work for directories
1228         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
1229           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
1230         Also convert the top comment into a docstring.
1232 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
1234         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
1236         ... since it might come straight from the memoizing table.
1238 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
1240         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
1242 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
1244         Use special-mode in eww list modes
1246         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
1247         (eww-buffers-mode): Derive from special-mode and remove redundant
1248         setting of buffer-read-only.
1249         (eww-mode-map): Remove redundant keymap parent setting.
1250         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
1251         Remove redundant keymap suppressions and mappings.
1253 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
1255         Allow setting frame pixel sizes from frame parameters (Bug#21415)
1257         Also fix some misfeatures in frame (re-)sizing code, add more
1258         debugging information and remove some dead code.
1260         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
1261         parameter names when setting `frame-size-history'.
1262         (frame--size-history): New function.
1264         * src/frame.c (frame_inhibit_resize): If frame has not been made
1265         yet, return t if inhibit_horizontal_resize or
1266         inhibit_vertical_resize bit have been set.
1267         (adjust_frame_size): Simplify.
1268         (make_frame): Initialize inhibit_horizontal_resize,
1269         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
1270         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
1271         inhibit_vertical_resize slots.
1272         (x_set_frame_parameters): Handle `text-pixels' specification for
1273         width and height parameters.  Don't consider new_height or
1274         new_width changes.  Call adjust_frame_size instead of
1275         Fset_frame_size.
1276         (x_figure_window_size): Two new arguments x_width and y_width
1277         returning frame's figures width and height.  Calculate tool bar
1278         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
1279         Handle `text-pixels' specification for width and height
1280         parameters.
1281         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
1282         (Qx_set_window_size_1, Qx_set_window_size_2)
1283         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
1284         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
1285         (Qfree_frame_menubar_2): New symbols.
1286         * src/frame.h (structure frame): New booleans
1287         tool_bar_redisplayed, tool_bar_resized,
1288         inhibit_horizontal_resize, inhibit_vertical_resize.
1289         (x_figure_window_size): Update external declaration.
1290         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
1291         calling gtk_window_resize.
1292         (update_frame_tool_bar): Make inhibiting of frame resizing more
1293         discriminative.  Set tool_bar_resized bit.
1294         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
1295         resizing more discriminative.  Call adjust_frame_size instead of
1296         x_set_window_size.
1297         (Fx_create_frame): Handle x_width and x_height if
1298         set by x_figure_window_size.
1299         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
1300         subtract 3 from tool bar height.
1301         (x_set_window_size): Add frame_size_history_add call.
1302         (x_new_font): Call adjust_frame_size instead of
1303         x_set_window_size.
1304         * src/w32fns.c (x_change_tool_bar_height): Reset
1305         tool_bar_redisplayed and tool_bar_resized bits when adding tool
1306         bar.  Make inhibiting of frame resizing more discriminative.
1307         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
1308         (Fx_create_frame): Handle x_width and x_height if set by
1309         x_figure_window_size.  Set size hints before adjusting frame size.
1310         (x_create_tip_frame): Adjust x_figure_window_size call.
1311         * src/w32term.c (x_set_window_size): Add frame_size_history_add
1312         call.
1313         * src/widget.c (set_frame_size): Remove dead code.  Add
1314         frame_size_history_add call.  When frame_resize_pixelwise is t
1315         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
1316         pixel_width and pixel_height.
1317         (update_various_frame_slots): Remove dead code.
1318         (EmacsFrameResize): Add more information in
1319         frame_size_history_add call.
1320         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
1321         is not set.
1322         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
1323         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
1324         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
1325         tool_bar_resized bits when adding tool bar.  Make inhibiting of
1326         frame resizing more discriminative.
1327         (Fx_create_frame): Handle x_width and x_height if set by
1328         x_figure_window_size.  Set size hints before adjusting frame size.
1329         (x_create_tip_frame): Adjust x_figure_window_size call.
1330         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
1331         (set_frame_menubar): On Lucid never add core-border-width to
1332         avoid that adding XtNinternalBorderWidth adds it again.
1333         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
1334         * src/xterm.c (x_new_font): In non-toolkit case handle size
1335         change of menu bar.
1336         (x_set_window_size_1): Fix calls to frame_size_history_add.
1337         (x_wm_set_size_hint): Remove dead code.  Set
1338         size_hints.min_width and size_hints.min_height to base_width and
1339         base_height.
1341 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
1343         * test/automated/file-notify-tests.el (file-notify--test-timeout):
1345         Add docstring.  Increase to 10 seconds for remote
1346         directories.  (Bug#21669)
1348 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1350         Unmacroize ebrowse.c and etags.c a bit
1352         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
1353         (streq, filename_eq, set_flag, has_flag): Now inline functions.
1354         (set_flag): First arg is now an address, not an lvalue.
1355         All callers changed.
1356         (filename_eq, set_flag, has_flag):
1357         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
1358         All callers changed.
1359         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
1360         Now inline functions.  Remove asserts that are unnecessary these
1361         days (and in some cases were too-generous anyway).
1363 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
1365         Use highlight for current items.
1367         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
1368         Apply highlight face instead of region face.
1370 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
1372         Search for more cover image names in MPC
1374         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
1375         case insensitively
1377 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
1379         Remove or comment out unused variables
1381         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
1382         nontext_cursor, mode_cursor, hand_cursor and count.
1383         (x_change_tool_bar_height): Remove variable old_text_height.
1384         (deliver_wm_chars): Remove variable strip_Alt.
1385         (Fw32_shell_execute): Remove variable document_a.
1386         (Fw32_frame_geometry): Remove variable fullboth.
1387         * src/w32term.c (w32_setup_relief_color): Comment out variable
1388         w32_display_info.
1389         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
1390         (w32_read_socket): Comment out variables rows, columns.
1391         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
1393 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
1395         * src/w32proc.c (sys_select): Fix bitwise test.
1397 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
1399         Minor typo corrections in doc strings
1401         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
1402         Doc fixes.
1404 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
1406         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
1408 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
1410         Attempt to avoid crashes in plist-member
1412         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
1413         and a call to XCDR.  (Bug#21655)
1415 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
1417         In gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
1419         * lisp/select.el (gui-get-primary-selection): In gui-get-primary-selection
1420         use gui--selection-value-internal (Bug#20906)
1422 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
1424         Support RTF in doc-view
1426         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
1428 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
1430         * w32fns.c (get_wm_chars): Increment counter, not pointer.
1432 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
1434         Replace the usage of an obsolete function in auth-source.el
1436         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token): Replace an
1437           usage of `epg-context-set-armor' with `setf'.
1439 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
1441         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
1443 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
1445         Have calc-yank recognize numbers in different bases.
1447         * lisp/calc/calc-yank.el (math-number-regexp): New function.
1448         (calc-yank): Use `math-number-regexp' to recognize numbers.
1450 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
1452         Handle an opaque-move X11 window manager operation more efficiently.
1454         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
1455         followed by more ConfigureNotify events for the same window, process
1456         only the last one.
1458 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
1460         Fix cursor setting for tip frame; re-enable cursor generation.
1462         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
1463         attributes sent when creating the new X window.  Don't skip setting
1464         the pointerColor parameter.
1466 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
1468         Rewrite x_set_mouse_color to sync less.
1470         We can track serial numbers of X requests and correlate error events
1471         with the associated requests.  This way we can identify errors for
1472         specific calls without having to use XSync after every one.
1474         * src/xfns.c (enum mouse_cursor): New type.
1475         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
1476         (mouse_cursor_types): New array listing the Lisp variables and default
1477         cursor appearances for each cursor type.
1478         (x_set_mouse_color_handler): New function; checks error event serial
1479         number against submitted requests.
1480         (x_set_mouse_color): Updated to use the new error handler callback,
1481         and to be more table-driven, to simplify repetitious code.
1483 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
1485         Add x_catch_errors_with_handler.
1487         * src/xterm.c (struct x_error_message_stack): Add new fields for a
1488         callback function and associated data pointer.
1489         (x_error_catcher): If the callback function is set, call it after
1490         saving the error message string.
1491         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
1492         accepts a callback function and data pointer.
1493         (x_catch_errors): Now a wrapper function.
1494         * src/xterm.h (x_special_error_handler): New typedef.
1495         (x_catch_errors_with_handler): Declare.
1497 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
1499         Introduce x_uncatch_errors_after_check to reduce XSync calls.
1501         Both x_had_errors_p and x_check_errors call XSync, so if they're
1502         immediately followed by x_uncatch_errors, its XSync call will be
1503         redundant, resulting in a wasted round trip to the X server.
1505         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
1506         x_uncatch_errors without the XSync call.
1507         (XTmouse_position, x_wm_supports):
1508         * src/xfns.c (x_set_mouse_color):
1509         * src/xmenu.c (Fx_menu_bar_open_internal):
1510         * src/xselect.c (x_own_selection, x_get_foreign_selection):
1511         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
1512         * src/xterm.h (x_uncatch_errors_after_check): Declare.
1514 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
1516         Document the optional prefix to `calc-yank'.
1518         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
1519         prefix to `calc-yank'.
1520         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
1521         the Calc buffer are yanked back unchanged.
1523 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
1525         * lisp/calendar/calendar.el: Display buffer before executing body.
1527         In each use of this macro, the modeline is derived from a window width
1528         calculation, which will be wrong if (display-buffer) splits the window
1529         horizontally.
1531 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
1533         Use ‘echo’ safely with ‘\’ or leading ‘-’
1535         POSIX says that ‘echo FOO’ produces implementation-defined output
1536         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
1537         behavior in that case.
1538         * Makefile.in (removenullpaths): Remove.
1539         (epaths-force): Rewrite to avoid the need for ‘echo’.
1540         (install-etc): Be clearer about escaping the shell metacharacters
1541         ‘\’ and ‘$’.
1542         * Makefile.in (install-arch-indep, install-etcdoc):
1543         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
1544         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
1545         * configure.ac, lib-src/rcs2log, make-dist:
1546         * src/Makefile.in (lisp.mk):
1547         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
1548         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
1549         if $foo can contain arbitrary characters.
1550         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
1551         * doc/lispref/two-volume.make (vol1.pdf):
1552         * test/etags/make-src/Makefile (web ftp publish):
1553         Use ‘printf’ rather than ‘echo -e’.
1555 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
1557         Allow numbers with different radixes to be yanked.
1559         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
1560         default base 10.
1562 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
1564         Improve CHECK_IMPURE and PURE_P speedup
1566         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
1568 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
1570         Use events instead of chars to keep track of steps.
1572         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
1573         to keep track of steps.
1575 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
1577         Fix --enable-gcc-warnings problem with older GCC
1579         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
1580         This is for building with --enable-gcc-warnings with
1581         GCC 4.6 through 5.0.
1583 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
1585         Fix vertical-motion in truncated lines that end in a stretch
1587         * src/indent.c (Fvertical_motion): Expect overshoot when point is
1588         beyond window margin and lines are truncated, even if we have a
1589         stretch at point.  (Bug#21468)
1591 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
1593         Avoid link-time errors due to inline functions
1595         * src/emacs.c: Include puresize.h, to avoid link-time errors in
1596         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
1597         inline functions.
1599 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
1601         * src/data.c (Faset): Fix last change.
1603 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
1605         CHECK_IMPURE and PURE_P speedup
1607         * src/intervals.c (create_root_interval):
1608         Do CHECK_IMPURE only for strings; not needed for buffers.
1609         Prefer ! STRINGP to BUFFERP, for a tad more speed.
1610         * src/puresize.h (CHECK_IMPURE, PURE_P):
1611         Now inline functions instead of macros.
1612         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
1613         All callers changed.
1614         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
1615         All callers changed.
1617 2015-10-09  Noah Friedman  <friedman@splode.com>
1619         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
1621 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
1623         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
1625         our after-change-function, rather than re-adding it if it was removed.
1627 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
1629         * lisp/cedet/ede: Silence some compiler warnings
1631         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
1632         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
1633         (ede-apply-object-keymap, ede-reset-all-buffers)
1634         (ede-auto-add-to-target): Use dolist.
1635         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
1636         Use field names rather than initarg names in `oref'.
1637         (ede-load-project-file): Remove unused var `file'.
1638         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
1639         (ede-set): Remove unused var `a'.
1641         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
1642         (ede-project-autoload): Avoid the old-style "name" argument.
1643         (ede-emacs-find-matching-target): Use field names rather than initarg
1644         names in `oref'.
1646         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
1647         (ede-linux-load, ede-project-autoload): Avoid the old-style "name" argument.
1648         (ede-linux-find-matching-target): Use field names rather than initarg
1649         names in `oref'.
1651 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
1653         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
1655 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
1657         * lisp/progmodes/prolog.el: Avoid indenting too much, after ":-"
1659         (prolog-smie-rules): Try and avoid indenting too far after ":-".
1661 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
1663         Update case-table and categories of recently added characters
1665         * lisp/international/characters.el: Update information about Latin
1666         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
1667         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
1668         blocks.  (Byug#21654)
1670 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
1672         In adjust_frame_size don't count minibuffer height twice (Bug#21643)
1674         * src/frame.c (adjust_frame_size): In minibuffer-only windows
1675         don't count minibuffer height twice.  (Bug#21643)
1677 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
1679         Avoid inflooping in font-lock
1681         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
1682         inhibit-field-text-motion around the call to
1683         line-beginning-position, to avoid inflooping.  (Bug#21615)
1685 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
1687         Refactor duplicated code; ensure default is in completions
1689         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps): New function.
1690         (reftex-extract-bib-entries): Use it.
1691         (reftex-extract-bib-entries-from-thebibliography): Use it.
1693 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1695         Typo in example
1697         * autotype.texi (Skeletons as Abbrevs): "if" -> "ifst" in the example.
1699 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
1701         * lisp/calc/calc.el: Silence byte-compiler warnings
1703         (calc-scan-for-dels): Use ignore-errors.
1704         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
1705         (calc-read-key-sequence): Remove unused var `prompt2'.
1706         (calc-kill-stack-buffer): Remove unused var `buflist'.
1707         (calc): Remove unused var `oldbuf'.
1708         (calc-refresh): Use inhibit-read-only.
1709         (calc-can-abbrev-vectors): Declare.
1710         (calc-record): Remove unused var `mainbuf'.
1711         (math-sub-bignum): Remove unused var `sum'.
1712         (math-svo-c, math-svo-wid, math-svo-off): Declare.
1714 2015-10-08  Daiki Ueno  <ueno@gnu.org>
1716         Use g_clear_error instead of g_error_free
1718         * src/image.c: Define g_clear_error instead of g_error_free.
1719         (init_svg_functions): Resolve symbol g_clear_error instead of
1720         g_error_free.
1721         (svg_load_image): Use g_clear_error instead of g_error_free, to
1722         suppress GLib warnings when ERR is not set.  See bug#21641.
1724 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
1726         * src/image.c (image_size_error): Simplify.
1728 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
1730         Fix problems caught with --enable-gcc-warnings
1732         * src/image.c (lookup_rgb_color):
1733         * src/xfns.c (x_defined_color):
1734         * src/xterm.c (x_parse_color):
1735         Remove unused locals.
1737 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
1739         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
1741 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
1743         Format initial input uniformly.
1745         * lisp/calc/calc.el (calc-digit-start-entry): New function.
1746         * lisp/calc/calc.el (calcDigit-start):
1747         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
1748         Use `calc-digit-start-entry' to format input.
1750 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
1752         Disable non-working pointerColor setting for X tooltip frame.
1754         It generates a bunch of server traffic, but there's some bug wherein
1755         the new mouse cursor settings don't seem to get used.  In most
1756         situations the cursor isn't likely to be seen anyway, so it's not
1757         urgent to fix.
1759         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
1761 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
1763         Reduce some unnecessary X calls.
1765         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
1766         call.  If border width is wanted, get it from the XGetGeometry call
1767         instead of calling XGetWindowAttributes on the same window.  Skip some
1768         X calls if we've already detected an error from the X server.
1769         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
1770         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
1772 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
1774         Reduce color allocation/query traffic in the TrueColor case.
1776         When working with an X visual with TrueColor class, pixel values can
1777         be generated from the RGB values according to mask value provided by
1778         the server on connection.  Some of the image-handling code was already
1779         doing this.
1781         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
1782         lookup_rgb_color.
1783         (x_mutable_colormap): New function.
1784         * src/image.c (lookup_rgb_color): Move pixel composition code to
1785         x_make_truecolor_pixel.
1786         (x_kill_gs_process): Call x_mutable_colormap.
1787         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
1788         x_mutable_colormap.
1789         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
1790         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
1791         pixel value into RGB values directly, and don't send a request to the
1792         server.
1793         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
1794         value with x_make_truecolor_pixel.
1795         (x_copy_color): For an immutable color map, just return the provided
1796         pixel value.
1798 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
1800         Cache XParseColor results in the X display info structure.
1802         With repeated lookups of foreground and background colors for multiple
1803         faces per frame, we issue a lot of redundant color name lookups to the
1804         X server, waiting every time for the response.  On a remote network
1805         with, say, 30ms round-trip time, this can add nearly a full second to
1806         creation of a new frame.
1808         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
1809         * src/image.c (get_spec_bg_or_alpha_as_argb):
1810         (xpm_init_color_cache, xpm_lookup_color):
1811         * src/xfns.c (x_defined_color):
1812         * src/xterm.c (x_parse_color): New function; caches color names not
1813         starting with "#" in the display-info structure.
1814         (x_delete_display): Delete the cache content.
1815         * src/xterm.h (struct color_name_cache_entry): New type.
1816         (x_parse_color): Declare.
1817         (struct x_display_info): Add a new field for the cache.
1819 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
1821         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local
1823 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
1825         Fix segfault in image_size_error
1827         * src/image.c (image_size_error): Pass a Lisp string to
1828         image_error, not a C string.  (Bug#21641)
1830 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
1832         Highlight CSS variable definitions
1834         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
1835         CSS variables.  (Bug#21638)
1837 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
1839         * test/automated/tabulated-list-test.el: New file
1841         Test bug#21639 and some basic functionality.
1843 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
1845         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
1847         Check if column can be sorted before trying.  (Bug#21639)
1849 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
1851         Add test for `self-insert-command' (bug#21633)
1853         * test/automated/cmds-tests.el: New file.
1855 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
1857         In resize_frame_windows don't set a top position when resizing horizontally.
1859         * src/window.c (resize_frame_windows): Don't set root window's
1860         top position when resizing horizontally.
1862 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
1864         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
1866         Document more possible values.
1868 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
1870         * lisp/textmodes/tex-mode.el: Use lexical-binding
1872 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
1874         * lisp/indent.el (indent--default-inside-comment): New function
1876         (indent-for-tab-command): Use it for `noindent' indentation.
1878 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
1880         Fix bug in GC_CHECK_MARKED_OBJECTS check
1882         * src/alloc.c (mark_object): Fix bug in checking code.
1883         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
1884         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
1885         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
1886         bucket.  The bug did not affect behavior either in the normal case
1887         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
1888         not have an internal error that a properly-written
1889         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
1891 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
1893         Add prettified version of \\Bbb{Q}.
1895         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Add
1896         prettified version for \\Bbb{Q}.
1898 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
1900         * test/automated/package-test.el (package-test-install-single):
1902         Add a test for bug#21625.
1904 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
1906         lisp/emacs-lisp/package.el (package-install): Fix name error
1908         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
1909           not a package-desc object.  Also clarify documentation.  (Bug#21625)
1911 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
1913         Fix display of characters adjacent to ZWJ and ZWNJ
1915         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
1916         characters the same as directional formatting controls.
1917         (bidi_level_of_next_char): Include all Bn characters in rule L1,
1918         as mandated by the UBA.
1920 2015-10-06  Andreas Schwab  <schwab@suse.de>
1922         Don't use XFASTINT on a negative number
1924         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
1925         number.  (Bug#21633)
1927 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
1929         * doc/lispref/objects.texi (Window Type): Add a cross reference.
1931         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
1933 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
1935         Fix composition-function-table for Arabic and Syriac
1937         * lisp/language/misc-lang.el (composition-function-table): Fix
1938         entries for Arabic and Syriac.
1940 2015-10-05  Damien Cassou  <damien@cassou.me>
1942         Add first unit tests for auth-source.el
1944         * test/automated/auth-source-tests.el: New file.
1946 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
1948         Remove redundant redisplay code
1950         * src/xdisp.c (redisplay_internal, try_cursor_movement)
1951         (try_window_reusing_current_matrix, try_window_id): Remove
1952         redundant restrictions on redisplay optimizations based on the
1953         frame's 'redisplay' flag.  See
1954         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
1955         discussions.
1957 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
1959         * src/xdisp.c (windows_or_buffers_changed): Improve docstring
1961 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
1963         Update tutorials/TUTORIAL.cn
1965         * etc/tutorials/TUTORIAL.cn: Improve translation.
1967 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1969         * src/macfont.m (macfont_encode_char, syms_of_macfont): Remove unused vars.
1971 2015-10-04  Stefan Merten  <stefan@merten-home.de>
1973         Pull in version numbers from rst.el upstream release.
1975                 * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
1976                 (rst-svn-timestamp, rst-official-version)
1977                 (rst-official-cvs-rev, rst-package-emacs-version-alist):
1978                 Update version numbers.
1980 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
1982         * test/automated/coding-tests.el: New file.
1984 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
1986         Improve XEmacs compatibility of Tramp
1988         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
1989         Declare if it doesn't exist.
1990         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
1991         (redisplay): Make it an alias if it doesn't exist.
1993         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
1994         `file-remote-p' (due to XEmacs compatibility).
1996         * lisp/net/trampver.el (locate-dominating-file)
1997         (tramp-compat-replace-regexp-in-string): Autoload.
1998         (tramp-repository-get-version): Do not dupe byte-compiler.
2000 2015-09-02  K. Handa  <handa@gnu.org>
2002         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
2004         * ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
2005         Adjusted for the change of type of elements in the array
2006         MFLTGlyphString.glyphs.
2008 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
2009             Michael Heerdegen  <michael_heerdegen@web.de>
2011         shr: fix too long lines in rendered buffers (Bug#21012)
2013         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
2014         Correct calculation of available width.
2015         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
2016         is nil.
2018 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2020         Restore blank line before next section, erroneously erased in my previous commit
2022         * 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
2024 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2026         Support MSW filename style for ant compilation error regexp
2028         * etc/compilation.txt (symbol ant):
2029         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist): Support MSW filename style
2031 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
2033         * nt/INSTALL: Minor spelling and quote fixes.
2035         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
2037 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
2039         Maintain ordering of JSON object keys by default
2041         * lisp/json.el (json-object-type): Mention order handling in doc-string.
2042         (json--plist-reverse): New utility function.
2043         (json-read-object): Maintain ordering for alists and plists.
2044         (json-pretty-print): Ensure that ordering is maintained.
2046         * test/automated/json-tests.el (test-json-plist-reverse): New test for
2047         `json--plist-reverse'.
2048         (json-read-simple-alist): Update test to accommodate for changes in
2049         `json-read-object'.
2051         * etc/NEWS: Document the new behavior of the pretty printing functions.
2053 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
2055                 * src/coding.c (complement_process_encoding_system): Revert last
2056                 change.
2058 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
2060         Add entry for Ulf Jasper.
2062 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
2064         Doc fix for `defmacro'
2066         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
2068 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
2070         More validatation of coding systems
2072         * src/fileio.c (Finsert_file_contents): Remove redundant
2073         coding-system check.
2074         (choose_write_coding_system): Likewise.
2075         * src/coding.c (complement_process_encoding_system): Check
2076         argument for valid coding system.
2078 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
2080         Avoid crashes in coding_inherit_eol_type
2082         * src/coding.c (coding_inherit_eol_type): Check the validity of
2083         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
2084         (Bug#21602)
2086 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
2088         More validatation of coding system in 'write-region'
2090         * src/coding.c (choose_write_coding_system): More validation of
2091         coding-system from various sources.  Suggested by Andreas Schwab
2092         <schwab@linux-m68k.org>.  (Bug#21602)
2094 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
2096         Avoid crashes due to invalid coding-system
2098         * src/fileio.c (choose_write_coding_system)
2099         (Finsert_file_contents): Check validity of coding-system-for-write
2100         and coding-system-for-read bound by the caller.  (Bug#21602)
2102 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
2104         Adapt to new prettify-symbols-unprettify-at-point default
2106         * etc/NEWS: Mention that unprettication of symbol at point is off by
2107         default.
2109 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
2111         Revert my two recent process.c changes
2113         Revert "Improve last commit to process.c" and "Remove callback-handled
2114         channels from Available set" because they did not fix bug#21313.
2116         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
2117         27f871907cc24f33a7d12ac3a4ab71a88f0bc554..
2119 2015-10-02  Markus Triska  <triska@metalevel.at>
2121         * prolog.el: Update and extend operator table
2123         (prolog-smie-grammar): Add multifile, public etc.
2125 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
2127         Allow autogen even when Git is not installed
2129         * autogen.sh: Test ‘git status’ before trying to use Git.
2131 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
2133         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes
2135         Adjust lto/lfrom when we have uncommitted changes.
2137 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
2139         Fix problems found by clang 3.5.0
2141         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
2142         * src/font.c (font_parse_family_registry):
2143         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
2145 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
2147         * nt/INSTALL: Update instructions for running autogen.sh
2149         * nt/INSTALL: Point to ezwinports for libXpm binaries.
2151 2015-10-02  Daniel Colascione  <dancol@dancol.org>
2153         Fix winner in cl-lib not loaded case
2155         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
2156         without requiring CL
2158 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
2160         Fix a few problems with directed quotes
2162         This is in response to a problem report by Kaushal Modi in:
2163         http://bugs.gnu.org/21588#25
2164         * lisp/cedet/mode-local.el (describe-mode-local-overload):
2165         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
2166         * lisp/info-xref.el (info-xref-check-all-custom):
2167         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
2168         Prefer directed to undirected single quotes in diagnostics.
2170 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
2172         Revert "Attempt to fix slow redisplay caused by last changes"
2174         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
2175         (try_cursor_movement): Don't relax requirements for redisplay
2176         optimizations for the selected frame.  (Bug#21597)
2178         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
2180 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
2182         Fix slow redisplay when daemon frame exists
2184         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
2185         when looking for frames that need to be redisplayed.  (Bug#21597)
2187 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
2189         Attempt to fix slow redisplay caused by last changes
2191         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
2192         (try_cursor_movement): Relax requirements for redisplay
2193         optimizations for the selected frame.  (Bug#21597)
2195 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
2197         Improve doc strings in dired.c
2199         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
2200         Improve doc string.
2202 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
2204         Set default base-size in minibuffer-completion-help
2206         * lisp/minibuffer.el (minibuffer-completion-help): Set default base-size,
2207         in case completion table does not set it.
2209 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
2211         Fix GUD display of GDB output with non-ASCII text
2213         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
2214         (gdb-mi-decode): New function.
2215         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
2216         decode octal escapes in GDB output.  (Bug#21572)
2218 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
2220         * nt/INSTALL: Document where to find XPM support files
2222 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
2224         Un- and re-prettification are not exclusive
2226         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
2227         Re-apply prettification to previous symbol also when unprettifying next
2228         one.
2230 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
2232         Don't unprettify symbol at point by default
2234         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
2235         Default to disabled (nil).
2237 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2239         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
2241         Support unprettifying when point is after a symbol.
2243         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'
2245 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
2247         Avoid assertion violations in push_prefix_prop
2249         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
2250         a line that has a line-prefix defined starts with an image.  (Bug#21428)
2252 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
2254         Disable some display optimizations when frames need redisplay
2256         These optimizations were previously disabled by the
2257         windows_or_buffers_changed flag, which now is not set
2258         when only some frames need to be redrawn.
2259         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
2260         'redisplay' flag is set.
2261         (try_window_reusing_current_matrix, try_window_id)
2262         (try_cursor_movement): Disable these optimizations when the
2263         frame's 'redisplay' flag is set.
2265 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
2267         Don't modify buffer by unprettification
2269         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
2270         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
2271         modify buffer when setting/removing custom prettify-symbols-start/end
2272         text properties.  Add them to font-lock-extra-managed-props, too.
2274 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
2276         Try to avoid redisplaying all frames when creating a new one
2278         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
2279         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
2280         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
2281         * src/frame.c (x_set_screen_gamma): Set the specific frame's
2282         `redisplay' bit rather than windows_or_buffers_changed.
2284         * src/window.c (apply_window_adjustment): Remove redundant setting of
2285         windows_or_buffers_changed.
2287         * src/xdisp.c (redisplay_internal): Set the specific frame's
2288         `redisplay' bit rather than update_mode_lines in response to
2289         cursor_type_changed.
2290         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
2291         (AINC): Adjust accordingly.
2293 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
2295         Implement unprettification of symbol at point
2297         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
2298         symbol at point.
2299         (prettify-symbols--current-symbol-bounds): New variable.
2300         (prettify-symbols--post-command-hook): New function.
2301         (prettify-symbols-unprettify-at-point): New defcustom.
2302         (prettify-symbols-mode): Use it.
2303         (prettify-symbols--compose-symbol): Use them.
2305 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2307         * src/macfont.m (mac_font_descriptor_supports_languages): Regard "zh" as synonym of "zh-Hans".
2309 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2311         Work around crash when displaying etc/HELLO on OS X 10.11
2313         * src/macfont.m (mac_font_get_weight)
2314         (mac_font_descriptor_get_adjusted_weight): New functions.
2315         (macfont_store_descriptor_attributes): Adjust weight.
2317 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2319         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
2321 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
2323         * lisp/arc-mode.el (archive-rar-summarize): Better alignment of the columns.
2325 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
2327         Use unar and lsar to handle RAR archives in arc-mode
2329         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
2330         on unar and lsar instead of unrar-free for RAR archives (Bug#17663).
2332 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
2334         Clarify :create in auth-source's docs
2336         * auth-source.el (auth-source-search): Clarify :create's meaning.
2338 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
2340         Avoid empty -path arguments in rgrep
2342         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
2343         the list produced according to grep-find-ignored-directories,
2344         before passing it to Find/Grep invocation.  (Bug#21548)
2346 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
2348         Clarify documentation of pos-visible-in-window-p
2350         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
2351         t for POS.  See
2352         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
2353         for the original report.
2355         * doc/lispref/windows.texi (Window Start and End): Clarify the
2356         meaning of t for the POSITION argument of pos-visible-in-window-p.
2358 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2360         * lisp/progmodes/prolog.el: Fix various indentation cases
2362         (prolog-operator-chars): New const (add \\).
2363         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
2364         (prolog-smie-rules): Add rules according to bug#21526.
2366 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2368         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent
2370         (sh-indent-after-continuation): Add new value `always' (bug#17620)
2371         (sh-smie-sh-rules): Remove old handling of continued lines.
2372         (sh-smie--indent-continuation): New function.
2373         (sh-set-shell): Use it.
2375 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2377         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun
2379         Remove redundant :group keyword args.
2380         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
2381         Remove variables.
2382         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
2383         turn them into compile-time variables.
2384         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
2385         Add rules for break, continue, return, global, and persistent.
2386         Refine the rule for "until".
2387         (octave-smie--funcall-p, octave-smie--end-index-p)
2388         (octave-smie--in-parens-p): New functions.
2389         (octave-smie-backward-token, octave-smie-forward-token): Use them to
2390         distinguish the "enumeration" function and the "end" index from
2391         their corresponding keywords.
2392         (octave--block-offset-keywords): New constant.
2393         (octave-smie-rules): Use it.  Adjust rules for new global/persistent parsing.
2394         (octave-reserved-words): Redefine using octave-smie-grammar.
2395         (octave-font-lock-keywords): Use octave-smie--funcall-p and
2396         octave-smie--end-index-p.
2398 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2400         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*
2402 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
2404         nt/INSTALL: Remove references to GTK site
2406         That site no longer offers Windows downloads.
2408 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
2410         * nt/INSTALL: Add instructions for installing Git.
2412 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
2414         * net/shr.el (shr-colorize-region): Allow 88-color tty to use colors.
2415         Suggested by Eli Zaretskii.
2417 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
2419         * net/shr.el (shr-colorize-region):
2420         Don't do it on a system not supporting 256 above colors (bug#21557).
2422 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
2424         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
2426         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
2428 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
2430         Add documentation for seq.el
2432         * doc/lispref/sequences.texi: Add documentation regarding extending
2433         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
2434         seq-do and seq-map.
2436 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
2438         Better documentation for seq-some
2440         * doc/lispref/sequences.texi:
2441         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
2442         guarantee that the returned value is the first non-nil value that
2443         resulted from applying the predicate.
2445 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
2447         * lisp/arc-mode.el: Sharp-quote function arguments.
2449 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
2451         Avoid redisplay error in ediff-regions-wordwise
2453         * lisp/vc/ediff-util.el
2454         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
2455         set before activating it.  (Bug#21567)
2457 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
2459         Another attempt to fix crashes due to prematurely freed faces
2461         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
2462         faces for as long as we might have desired matrices that reference
2463         those faces.  (Bug#21428)
2465 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
2467         Add auctex development list email address
2469 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
2471         Add admin/MAINTAINERS entries
2473         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
2475 2015-09-28  (tiny change) Arash Esbati  <esbati@gmx.de>  (tiny change)
2477         Improve wrapfig package support and caption parsing
2479         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin): Correct
2480         description string and add wraptable environment.
2481         (reftex-default-context-regexps): Improve caption regexp.
2483 2015-09-28  Anders Lindgren  <andlind@gmail.com>
2485         Respect value of frame_resize_pixelwise when handling fullscreen state.
2487         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
2488         setting size increments.
2490 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
2492         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
2494 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
2496         Add prettify-symbols-alist for js-mode
2498         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
2499         (js-mode): Use it.
2501 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
2503         * nt/subdirs.el: File deleted (no longer used).
2505 2015-09-26  Alan Mackenzie  <acm@muc.de>
2507         Fix follow-scroll-up/down, making them replacements for scroll-up/down.
2509         1. Allow point to move between follow windows in scroll operations.
2510         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
2511         when EOB was isolated in the last follow window.
2513         lisp/follow.el (follow-fixed-window): New variable.
2514         (follow-get-scrolled-point): New function.
2515         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
2516         Reformulate
2517         the code.  Put `scroll-command' properties on the functions.  Correct
2518         minor errors in ...-down's doc string and code.
2519         (follow-calc-win-end): Amend incomplete doc string.  Use
2520         `pos-visible-in-window-p' to check whether EOB is in the window.
2521         (follow-estimate-first-window-start): Correct an off-by-1 error.
2522         (follow-adjust-window): Add handling for explicit scrolling operations.
2524 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
2526         * admin/MAINTAINERS: Add self, plus list some more files sans maintaners.
2528 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
2530         New DWIM commands for changing letter-case
2532         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
2533         New functions.  (Bug#21501)
2535 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
2537         * etc/PROBLEMS: Document problems with pasting on MS-Windows
2539 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
2541         Make face realization be more frame-specific
2543         * src/frame.h (struct f): New flag face_change.
2544         * src/xfaces.c (Finternal_make_lisp_face)
2545         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
2546         (update_face_from_frame_parameter): Set the face_change flag only
2547         for the frame whose faces are affected.
2548         * src/xdisp.c (init_iterator): If a frame's face_change flag is
2549         set, free faces only on that frame.
2550         (redisplay_internal): Disable "display optimization 1" if the
2551         frame's face_change flag is set.
2552         (redisplay_window): Don't allow skipping a window's redisplay if
2553         its frame's face_change flag is set.
2554         * src/frame.c (x_set_screen_gamma): Instead of calling
2555         Fclear_face_cache, call clear_face_cache and set
2556         windows_or_buffers_changed to a non-zero value.  This avoids
2557         setting the global face_change flag that triggers face realization
2558         on all frames and thorough redisplay of all of them.
2560         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
2561         clear face cache if the selected frame is a GUI frame.
2563 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
2565         Remove font-latex specific check
2567         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p): Use
2568         syntax-ppss data to identify verbatim contents.
2570 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
2572         Fix false negatives in tex--prettify-symbols-compose-p.
2574         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p): Fix some
2575         false negatives.
2577 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
2579         Reorder Windows version in Emacs manifests
2581         * nt/emacs-x64.manifest:
2582         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
2583         highest.
2585 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
2587         Update Emacs manifest files for Windows 10
2589         * nt/emacs-x86.manifest:
2590         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
2592 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
2594         Avoid non-ASCII decoding errors in C src files
2596         * src/nsterm.m:
2597         * src/lisp.h:
2598         * src/editfns.c:
2599         * src/doprnt.c: Add 'coding' cookies -- these files include
2600         Unicode characters and should be decoded as UTF-8.
2602 2015-09-25  Alan Mackenzie  <acm@muc.de>
2604         Resurrect edebug-set-initial-mode, repurposing it to set the global mode.
2606         lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
2607         amend to match current modes and functions.
2608         (edebug-set-initial-mode): Uncomment and change from setting a defun's
2609         `edebug-initial-mode''s property to setting the variable
2610         `edebug-initial-mode'.
2611         (top level): Create new binding C-x C-a C-m for
2612         `edebug-set-initial-mode'.
2614         doc/lispref/edebug.texi (Edebug Execution Modes): document
2615         `edebug-set-initial-mode' and its new key binding.
2616         (Edebug Options): Mention the new command in the pertinent place.
2618         etc/NEWS: Write entry for this change.
2620 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
2622         Avoid non-ASCII decoding errors in Texinfo files
2624         * doc/misc/tramp.texi:
2625         * doc/lispref/strings.texi:
2626         * doc/lispref/positions.texi:
2627         * doc/lispref/help.texi:
2628         * doc/lispref/functions.texi:
2629         * doc/lispintro/emacs-lisp-intro.texi:
2630         * doc/emacs/text.texi:
2631         * doc/emacs/modes.texi:
2632         * doc/emacs/mini.texi:
2633         * doc/emacs/display.texi:
2634         * doc/emacs/custom.texi:
2635         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
2636         Unicode characters and should be decoded as UTF-8.
2637         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
2638         apostrophe unnecessarily.
2640 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
2642         Merge from gnulib
2644         This incorporates:
2645         2015-09-25 c-ctype: rewrite to use inline functions
2646         2015-09-24 maint: add coding cookies to non-ASCII sources
2647         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
2648         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
2649         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
2650         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
2651         * lib/set-permissions.c:
2652         Copy from gnulib.
2654 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
2656         Update publicsuffix.txt from upstream
2658         * etc/publicsuffix.txt: Update from
2659         https://publicsuffix.org/list/effective_tld_names.dat
2660         dated 2015-09-24 17:29:21 UTC.
2662 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
2664         Prevent timers from messing up TTY menus
2666         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
2667         the TTY menu is open.  (Bug#21530)
2669 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
2671         No need to mention K&R C in c-mode intro
2673 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
2675         Fix recent bootstrap problems
2677         * src/syntax.c (parse_sexp_propertize): Fix last fix.
2678         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
2679         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
2681 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
2683         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
2685 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
2687         Properly quote nested xml comments (Bug#6267) (Bug#20001)
2689         * nxml-mode.el (nxml-comment-quote-nested): New function
2690         (nxml-mode): Set comment-quote-nested-function
2692 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
2694         Allow major-modes full control over quoting nested comments
2696         * newcomment.el (comment-quote-nested-function): New variable.
2697         (comment-quote-nested-default): New function.
2698         (comment-quote-nested): Use `comment-quote-nested-function'.
2700 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
2702         Prefer CALLN in a few more places
2704         * src/macfont.m (macfont_set_family_cache):
2705         * src/nsterm.m (append2):
2706         * src/xterm.c (x_cr_export_frames):
2707         Prefer CALLN to allocating the arg arrays by hand.
2709 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
2711         Adapt file-notify-test02-events test case
2713         * test/automated/file-notify-tests.el (file-notify-test02-events):
2714         Create a new watch for every test.
2716 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
2718         Continue gfilenotify.c implementation of missing parts
2720         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
2721         `gfile-add-watch' call.
2722         (file-notify-rm-watch): Modify `file-notify-descriptors' only
2723         after calling the low level functions.
2725         * src/gfilenotify.c (dir_monitor_callback): Check, whether
2726         event_type is expected.
2727         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
2728         (Fgfile_rm_watch): Fix typo.
2729         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
2731 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
2733         * src/syntax.c: Handle spurious e_property_truncated flag
2735         * src/syntax.c (parse_sexp_propertize): Handle spurious
2736         e_property_truncated flag.
2737         (update_syntax_table_forward): Remove invalid assertion.
2739 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
2741         Support ':relative-width' space display spec on text-mode terminals
2743         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
2744         space display spec on text-mode terminals, by calling
2745         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the HAVE_WINDOW_SYSTEM
2746         guards from the supporting code, as well as the test for a GUI frame.
2748 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
2750         Move let-when-compile to lisp-mode.el
2752         This fixes the bootstrapping problem of `let-when-compile' using
2753         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
2755 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
2757         Do not include authorization header in an HTTP redirect
2759         * lisp/url/url-http.el (url-http-parse-headers): Do not
2760         automatically include Authorization header in redirect.
2761         (Bug#21350)
2763 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
2765         Clarify documentation of ':relative-width'
2767         * doc/lispref/display.texi (Specified Space): Document that
2768         ':relative-width' is only supported on GUI frames.
2770 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
2772         Fix 'current-column' in presence of :relative-width
2774         * src/indent.c (check_display_width): Support ':relative-width'
2775         in a display spec that specifies a stretch glyph.  (Bug#21533)
2777 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
2779         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
2781         ... to conform better to CONTRIBUTE guidelines.
2783 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
2785         * prolog.el: Fix indentation of empty line
2787         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
2788         `empty-line-token' element.
2789         (smie-indent-empty-line): New function.
2790         (smie-indent-functions): Add it.
2792         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro behavior
2793         and use the new `empty-line-token' element (bug#21526).
2794         (prolog-mode-variables): Fix comment-start-skip setting to match
2795         comment-start.
2797         * test/indent/prolog.prolog: Add nested indentation tests.
2799         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
2800         comment-start-skip not to misuse submatch 1.
2802 2015-09-22  Alan Mackenzie  <acm@muc.de>
2804         Make description of `edebug-initial-mode' user friendly.
2806         Fixes debbugs#21365.
2808         dec/lispref/edebug.texi (Edebug Execution Modes): Change the
2809         desscription
2810         of `edebug-initial-mode' from that of its implementation to that of its
2811         visual effect and use.  Move the paragraph higher up.
2813 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
2815         lisp/progmodes/gud.el (gud-format-command): Fix last commit
2817         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
2818         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
2820 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
2822         Improve last commit to process.c
2824 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
2826         Implement gfile-valid-p
2828         * lisp/filenotify.el (file-notify-callback): Fix typo.
2829         (gfile-valid-p): Remove defalias.
2831         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
2832         the file or directory to be watched is deleted.
2833         (Fgfile_add_watch): Make watch_object a triple.
2834         (Fgfile_rm_watch): Check, whether watch is cancelled already.
2835         (Fgfile_valid_p): New defun.
2836         (syms_of_gfilenotify): Declare Sgfile_valid_p.
2838 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
2840         Remove callback-handled channels from Available set
2842         * src/process.c (wait_reading_process_output): Remove channel from
2843         Available set if it is handled by a callback, e.g., dbus or
2844         inotify (bug#21313).
2846 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
2848         Use lunate epsilon for TeX \epsilon
2850         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Add
2851         \varepsilon using GREEK SMALL LETTER EPSILON, and change \epsilon to use
2852         GREEK LUNATE EPSILON SYMBOL
2854 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
2856         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
2858         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
2859         rather than outermost paren (bug#21526).
2861 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
2863         Improve git diff hunk headers for .el, .texi
2865         Problem reported by Alan Mackenzie in:
2866         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
2867         * .gitattributes (*.el, *.texi): New patterns.
2868         * autogen.sh: Configure diff.elisp.xfuncname and
2869         diff.texinfo.xfuncname if using Git.
2871 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
2873         Don't rely on defaults in decoding UTF-8 encoded Lisp files
2875         * lisp/replace.el:
2876         * lisp/textmodes/rst.el:
2877         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
2879 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
2881         Clarify or replace a few \u escapes.
2883         * doc/lispref/nonascii.texi (Character Properties)
2884         More-detailed commentary for \u escapes.
2885         * lisp/progmodes/python.el (python--prettify-symbols-alist):
2886         * lisp/replace.el (query-replace-from-to-separator):
2887         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
2888         (rst-mode-syntax-table):
2889         * lisp/whitespace.el (whitespace-display-mappings):
2890         Prefer actual character to \u escape when this makes the code
2891         easier to follow in the usual case where Unicode chars can be
2892         displayed.
2894 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
2896         Pacify GCC -Wmaybe-uninitialized in xdisp.c
2898         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
2899         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
2900         charpos.  The loop should always execute at least once anyway.
2902 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
2904         Signal error on invalid regexp
2906         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries): Signal an
2907         error when the user tries searching with a regexp matching the empty
2908         string.
2910 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
2912         Another fix of file-notify-tests for w32notify
2914         * test/automated/file-notify-tests.el (file-notify-test02-events):
2915         Further adaptation for w32notify: reduce the number of expected
2916         'changed' events.  (Bug#21435)
2918 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
2920         Adapt tests and manual for w32notify
2922         * doc/lispref/os.texi (File Notifications): w32notify does not
2923         send `attribute-changed' events.
2925         * test/automated/file-notify-tests.el (file-notify--test-with-events):
2926         Simplify parameters.  Adapt all callees.
2927         (file-notify-test02-events): w32notify does not send
2928         `attribute-changed' events.
2929         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
2930         Do not skip in case of w32notify.  Simply ignore this part of the test.
2932 2015-09-21  Dima Kogan  <dima@secretsauce.net>
2934         Fix setting breakpoints when remote-debugging
2936         * lisp/progmodes/gud.el (gud-format-command): Send localized file
2937         names to the debugger running on the remote.  (Bug#13304)
2939 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
2941         Better docstring and parameter name for seq-find
2943         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
2944         the parameter `sentinel' to `default'.
2946         * doc/lispref/sequences.texi (Sequence Functions): Update the
2947           documentation for `seq-find' accordingly.
2949 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
2951         Avoid infinite recursion while displaying box face
2953         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
2954         the previous string/buffer character position under bidi
2955         iteration.  (Bug#21428)
2957 2015-09-21  Anders Lindgren  <andlind@gmail.com>
2959         Keep upper edge unchanged when changing size of NS frame (Bug#21415)
2961         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
2962         (Bug#21415).
2964 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
2966         Subject: * lisp/progmodes/prolog.el: Improve handling of if/then/else
2968         (prolog-smie-rules): Accomodate standard if/then/else special indentation.
2969         (prolog-mode): Add . to electric-indent-chars.
2970         (prolog-electric--if-then-else): Re-indent the line before adding space
2971         after the new char (bug#21526).
2973 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
2975         Add prettify symbols to python-mode
2977         lisp/progmodes/python.el (python-prettify-symbols-alist): New variable
2978         lisp/progmodes/python.el (python-mode): Use it
2980 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
2982         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete
2984 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
2986         (compilation-error-regexp-alist-alist): Tone down guile-file
2988         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
2989         Make guile-file a bit less enthusiastic (bug#21496).
2991 2015-09-20  Drew Csillag  <drew@thecsillags.com>
2993         * m4-mode.el (m4-font-lock-keywords): Fix m4_* highlighting
2995         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
2996         of commands when they have a "m4_" prefix.
2998 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
3000         '.' -> `.' in doc string
3002         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
3003         individual chars with grave quotes instead of straight quotes, as
3004         this works better when they are translated to curved quotes.
3006 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
3008         Improve file notifications, especially for Tramp
3010         * doc/lispref/files.texi (Magic File Names):
3011         Mention `file-notify-valid-p'.
3013         * doc/lispref/os.texi (File Notifications):
3014         Describe `file-notify-valid-p'.
3016         * etc/NEWS: Add `file-notify-valid-p'.
3018         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
3019         Improve implementation.
3020         (tramp-gvfs-monitor-file-process-filter): Rename from
3021         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
3022         process if appropriate.
3024         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
3025         Improve implementation.
3026         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
3027         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
3028         if appropriate.
3029         (tramp-sh-inotifywait-process-filter): Rename from
3030         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
3031         appropriate.
3033         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
3034         Use `delete-process'
3035         (tramp-handle-file-notify-valid-p): Check also, that file or
3036         directory to be watched still exists.
3038         * test/automated/file-notify-tests.el (file-notify--test-timeout):
3039         New defun.  Use it at all places a timeout is needed.
3040         (file-notify--test-cleanup): Delete directories recursively.
3041         Cleanup also Tramp connections.
3042         (file-notify-test02-events): Add tests for `attribute-change'.
3043         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
3044         Add tests for `file-notify-rm-watch'.
3046 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
3048         Use %s to format strings instead of splicing them
3050         If FOO might contain quotes that are part of a file or variable
3051         name, the quotes should not be translated when showing FOO’s name
3052         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
3053         is not quite right, as it would translate FOO’s quotes.
3054         Change it to (message "%s: bar" FOO) instead.
3055         * lisp/allout.el (allout-process-exposed):
3056         * lisp/calc/calc-ext.el (calc-do-prefix-help):
3057         * lisp/calc/calc-store.el (calc-store-into):
3058         * lisp/calendar/todo-mode.el (todo-category-completions):
3059         * lisp/cedet/semantic/complete.el (semantic-completion-message):
3060         * lisp/org/ob-latex.el (convert-pdf):
3061         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
3062         * lisp/org/ox-latex.el (org-latex-compile):
3063         * lisp/org/ox-man.el (org-man-compile):
3064         * lisp/org/ox-odt.el (org-odt--export-wrap):
3065         * lisp/org/ox-texinfo.el (org-texinfo-compile):
3066         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
3067         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
3068         (verilog-signals-combine-bus, verilog-read-defines)
3069         (verilog-getopt-file, verilog-expand-dirnames)
3070         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
3071         * lisp/term/ns-win.el (ns-spi-service-call):
3072         Use %s to avoid translating quotes of file names etc. in diagnostics.
3074 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
3076         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
3078         (js-mode): Don't set syntax-begin-function.
3080 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
3082         Don't assume syntax-begin-function is a symbol.
3084         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
3085         syntax-begin-function is a symbol.
3087 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
3089         Improve documentation of 'run-at-time'
3090         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
3091         In particular, don't refer to 'diary-entry-time', because it is
3092         unavailable until diary-lib is loaded.  Also, refer to
3093         'timer-duration-words', not 'timer-duration', as the latter's doc
3094         string says nothing about the accepted strings.
3096 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
3098         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
3100 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
3102         Repair pdbtrack remote file tracking
3103         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
3104         Rectify pdbtrack so it follows transitions from one remote source
3105         file to the next.
3107 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
3109         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting
3111 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
3113         Adapt vc-src to the old-new vc-checkin API
3114         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
3115         additional optional parameter.
3117 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
3119         Add overflow module to CSS property list
3120         * lisp/textmodes/css-mode.el (css-property-ids): Add properties from CSS
3121         Overflow Module Level 3.
3123 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
3125         Fix documentation of "C-u C-x v v"
3126         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
3127         documentation of "C-u C-x v v" match what the code does.
3129         Resurrect the ability to specify a revision in vc-next-action
3130         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
3131         * lisp/vc/vc-dav.el (vc-dav-checkin):
3132         * lisp/vc/vc-git.el (vc-git-checkin):
3133         * lisp/vc/vc-hg.el (vc-hg-checkin):
3134         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
3135         an additional optional argument, the revision to checkin.
3136         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
3137         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
3138         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
3139         a revision to checkin.
3140         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
3141         revision when checking in files.
3142         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
3143         for the details.
3145 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
3147         Fix checkdoc warnings.
3148         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
3149         (verilog-decls-princ, verilog-modport-princ)
3150         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
3152 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
3154         Fix the routine for help on Calc's prefixes.
3155         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
3156         (calc-do-prefix-help): Use `read-char' to determine the next Calc
3157         command.
3159 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
3161         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove
3162         (font-lock-fontify-block): Don't let-bind it.
3163         (font-lock-compile-keywords): Don't use it.
3164         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
3165         start one slot earlier, instead.
3166         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
3167         Don't declare.
3168         (syntax-ppss): Don't use it either.
3169         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
3170         from docstring.
3171         * doc/emacs/display.texi (Font Lock): Don't mention
3172         font-lock-beginning-of-syntax-function.
3173         * doc/lispref/modes.texi (Font Lock Basics): Update description of
3174         font-lock-defaults.
3175         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
3176         * lisp/loadhist.el (unload-feature-special-hooks):
3177         Remove font-lock-beginning-of-syntax-function.
3178         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
3179         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
3180         font-lock-beginning-of-syntax-function.
3182 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
3184         Backslash cleanup in Elisp source files
3185         This patch should not change behavior.  It typically omits backslashes
3186         where they are redundant (e.g., in the string literal "^\$").
3187         In a few places, insert backslashes where they make regular
3188         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
3189         "^\\*", which has the same effect as a regular expression.
3190         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
3191         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
3192         RCS IDs, as that makes it clearer that the backslash is intended.
3194         Some more minor backslash fixes
3195         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
3196         * test/automated/info-xref.el (info-xref-test-write-file):
3197         Double backslashes in strings.
3199         Fix several backslash typos in Elisp strings
3200         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
3201         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
3202         (todo-reset-done-string, todo-reset-comment-string)
3203         (todo-reset-highlight-item):
3204         * lisp/erc/erc-networks.el (erc-networks-alist):
3205         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
3206         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
3207         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
3208         (nntp-telnet-shell-prompt):
3209         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
3210         * lisp/image-dired.el (image-dired-rotate-original):
3211         (image-dired-get-exif-file-name):
3212         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
3213         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
3214         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
3215         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
3216         * lisp/net/shr-color.el (shr-color->hexadecimal):
3217         * lisp/org/org-bibtex.el (org-bibtex-fields):
3218         * lisp/org/org-docview.el (org-docview-export):
3219         * lisp/org/org-entities.el (org-entities):
3220         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
3221         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
3222         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
3223         (ebnf-style-database):
3224         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
3225         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
3226         * lisp/progmodes/sql.el (sql-product-alist):
3227         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
3228         (verilog-error-font-lock-keywords)
3229         (verilog-assignment-operator-re):
3230         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
3231         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
3232         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
3233         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
3234         For example, to get the regular expression ‘\.’ use the string
3235         literal "\\.", not "\." (which is equivalent to ".").
3236         * lisp/emulation/viper-util.el (viper-glob-unix-files):
3237         Remove stray ‘\j’ from string.
3238         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
3239         (nntp-telnet-shell-prompt):
3240         Treat > like $ when matching a shell prompt.
3241         * lisp/progmodes/make-mode.el (makefile-browse):
3242         Properly quote a diagnostic.
3244         Fix minor quoting problems in diagnostics
3245         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
3246         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
3247         Follow text-quoting-style in diagnostic, and quote a file name.
3249 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
3251         * doc/lispref/frames.texi (Cursor Parameters): Document 'x-stretch-cursor'.
3253 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
3255         Omit unnecessary \ before paren in C docstrings
3256         Although \( is needed in docstrings in Elisp code, it is not needed in
3257         docstrings in C code, since C function definitiions do not start with
3258         a parenthesis.  The backslashes made the docstrings a bit harder to
3259         read and to format in columns.  Also, some C docstrings had ( in
3260         column 1 and this did not appear to be causing any problems.  So,
3261         simplify C docstrings by replacing \( with ( and \) with ).
3263         A few more minor quoting fixes in a script and a text file
3265         Minor quoting fixes in scripts and doc
3266         Prefer straight quotes in random script files, as they are not converted.
3267         Prefer grave quotes in a couple of places in the manual that were missed
3268         earlier, as these quotes are converted.
3270         Minor backslash fixes in manuals and scripts
3271         * Makefile.in (install-arch-indep):
3272         * admin/charsets/compact.awk:
3273         * admin/charsets/gb180302.awk (gb_to_index):
3274         * admin/charsets/gb180304.awk (gb_to_index):
3275         Avoid undefined behavior in Awk regular expression backslashes.
3276         * doc/misc/efaq.texi (Matching parentheses):
3277         Omit unnecessary backslashes.
3278         * doc/misc/gnus-faq.texi (FAQ 5-8):
3279         Avoid undefined behavior in suggested sed backslash usage.
3281         Add -Wswitch to --enable-gcc-warnings
3282         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
3283         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
3284         * lib-src/etags.c (main, consider_token, C_entries):
3285         * src/coding.c (encode_invocation_designation):
3286         * src/data.c (Ftype_of):
3287         * src/eval.c (Fdefvaralias, default_toplevel_binding)
3288         (Fbacktrace__locals, mark_specpdl):
3289         * src/lisp.h (record_xmalloc):
3290         * src/syntax.c (scan_lists, scan_sexps_forward):
3291         * src/window.c (window_relative_x_coord):
3292         * src/xdisp.c (push_it, pop_it):
3293         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
3294         Error out or do nothing (as appropriate) if a switch statement
3295         with an enum value does not cover all of the enum.
3296         * src/dispextern.h (struct iterator_stack_entry.u.comp):
3297         Remove unused member discovered by using -Wswitch.
3298         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
3299         * src/vm-limit.c (check_memory_limits):
3300         Simplify warning-diagnostic computation by using a table.
3302         etags ‘fatal’ function is now printf-like
3303         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
3304         Also, now static; not clear why it needed to be extern.
3305         (verror): New function, with most of the old contents of ‘error’.
3306         (fatal, error): Use it.
3308 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
3310         More adaptations in file-notify-tests.el
3311         * test/automated/file-notify-tests.el
3312         (file-notify-test05-dir-validity): Skip for w32notify in
3313         batch-mode.  (Bug#21432)
3315 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
3317         Adapt test in file-notify-tests.el
3318         * test/automated/file-notify-tests.el
3319         (file-notify-test04-file-validity): Skip for w32notify in
3320         batch-mode.  Add test lost last commit.
3322 2015-09-16  Dima Kogan  <dima@secretsauce.net>
3324         winner no longer holds on to dead frames
3325         * lisp/winner.el (winner-change-fun): Cull dead frames.
3326         This prevents a potentially massive memory leak.  See:
3327         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
3329 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
3331         Use common report_file_notify_error function
3332         * src/fileio.c (report_file_notify_error): New function.
3333         * src/inotify.c (report_inotify_error): Remove function.
3334         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
3335         (Finotify_rm_watch): Use report_file_notify_error.
3336         * src/lisp.h (report_file_notify_error): Declare external function.
3337         * src/w32notify.c (report_w32notify_error): Remove function.
3338         (Fw32notify_add_watch, Fw32notify_rm_watch):
3339         Use report_file_notify_error.
3341 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
3343         Fix documentation.
3344         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
3345         the documentation of the root mean square.
3347 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
3349         Remove tool_bar_redisplayed_once and associated code.
3350         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
3351         * src/frame.c (make_frame, x_set_font): Remove initialization of
3352         f->tool_bar_redisplayed_once.
3353         * src/w32fns.c (x_change_tool_bar_height):
3354         * src/xfns.c (x_change_tool_bar_height): Don't check for
3355         f->tool_bar_redisplayed_once.
3356         * src/xdisp.c (redisplay_internal): Remove handling of
3357         f->tool_bar_redisplayed_once.
3359 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
3361         Restore some of the quoting in the manuals
3362         * doc/lispref/windows.texi (Coordinates and Windows)
3363         (Coordinates and Windows):
3364         * doc/lispref/variables.texi (Lexical Binding)
3365         (File Local Variables):
3366         * doc/lispref/text.texi (Format Properties):
3367         * doc/lispref/symbols.texi (Symbol Components):
3368         * doc/lispref/strings.texi (Creating Strings):
3369         * doc/lispref/sequences.texi (Sequence Functions):
3370         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
3371         (Search and Replace):
3372         * doc/lispref/processes.texi (Bindat Spec):
3373         * doc/lispref/os.texi (Idle Timers):
3374         * doc/lispref/objects.texi (Basic Char Syntax):
3375         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
3376         * doc/lispref/nonascii.texi (Character Properties):
3377         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
3378         (Mode Line Variables):
3379         * doc/lispref/minibuf.texi (Text from Minibuffer):
3380         * doc/lispref/loading.texi (Autoload):
3381         * doc/lispref/keymaps.texi (Controlling Active Maps):
3382         * doc/lispref/frames.texi (Frame Layout, Size and Position)
3383         (Size Parameters, Implied Frame Resizing):
3384         * doc/lispref/files.texi (Changing Files, Magic File Names):
3385         * doc/lispref/eval.texi (Self-Evaluating Forms):
3386         * doc/lispref/display.texi (Progress, Abstract Display)
3387         (Abstract Display Example, Bidirectional Display):
3388         * doc/lispref/commands.texi (Event Mod):
3389         * doc/emacs/windows.texi (Displaying Buffers):
3390         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
3391         * doc/emacs/text.texi (Enriched Text):
3392         * doc/emacs/programs.texi (MixedCase Words):
3393         * doc/emacs/picture-xtra.texi (Insert in Picture)
3394         (Tabs in Picture):
3395         * doc/emacs/misc.texi (Emacs Server, Printing):
3396         * doc/emacs/mini.texi (Minibuffer History):
3397         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
3398         (Pulling / Pushing):
3399         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
3400         * doc/emacs/help.texi (Help, Help Echo):
3401         * doc/emacs/glossary.texi (Glossary):
3402         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
3403         (Frame Commands):
3404         * doc/emacs/files.texi (Reverting, Saving, Directories):
3405         * doc/emacs/entering.texi (Exiting):
3406         * doc/emacs/emacs.texi (Top):
3407         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
3408         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
3409         appropriate or replace quoting with @dfn.
3410         * doc/misc/ediff.texi (Window and Frame Configuration):
3411         * doc/lispref/processes.texi (Network Feature Testing):
3412         * doc/lispref/display.texi (Display Margins): Quote the phrase
3413         after "a.k.a." where appropriate.
3415 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
3417         Clarify reftex-extra-bindings docs.
3418         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
3419         * doc/misc/reftex.texi (Key Bindings): Document that the variable
3420         only has an effect at load-time.
3422 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
3424         Fix search argument in ‘lisp--el-match-keyword’ (Bug#21492) (Bug#21493)
3425         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
3426         search argument.  (Bug#21492) (Bug#21493)
3428 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
3430         Add pretty symbols for \qquad and \varrho.
3431         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Add pretty
3432         symbols for \qquad and \varrho.
3434 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
3436         Add new functions for the root mean square of a (Calc) vector
3437         * lisp/calc/calc-stats.el (calcFunc-rms, calc-vector-rms):
3438         New functions.
3439         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
3440         `calc-vector-rms', add autoloads for `calc-vector-rms' and
3441         `calcFunc-rms'.
3442         * lisp/calc/calc-map.el (calc-u-oper-keys):  Add entry for
3443         `calcFunc-rms'.
3444         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
3445         `calc-vector-rms'.
3446         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
3447         command.
3449 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
3451         Add monotone EDE generic project
3452         * lisp/cedet/ede/generic.el (ede-enable-generic-projects): Add monotone
3453         generic project.
3455         Revert premature commit
3456         * doc/lispref/files.texi: Revert premature commit of change to
3457         file-name-all-completions.
3459         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
3460         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
3461         with cl-generic defaults.
3462         (elisp--xref-find-references): Add doc string.
3463         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
3464         tests to find bug.
3466         Fix bugs in eieio-oref-default related to class symbols
3467         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
3468         (eieio-oref-default): Handle class properly.
3470 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
3472         Quote “fullboth” when defining it
3473         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
3474         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
3476 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
3478         Minor doc fix in emacs/ack.texi
3479         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
3480         first argument.
3482 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
3484         Adapt tests in auto-revert-tests.el
3485         * test/automated/auto-revert-tests.el (auto-revert--timeout):
3486         Make it a defconst.
3487         (auto-revert--wait-for-revert): New defun.
3488         (auto-revert-test00-auto-revert-mode)
3489         (auto-revert-test01-auto-revert-tail-mode)
3490         (auto-revert-test02-auto-revert-mode-dired): Use it.
3492 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
3494         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const
3495         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
3496         (cl-lib-fdefs): Add defgeneric.
3497         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
3498         (eieio-kw, cl-lib-kw, el-kw): Remove.
3500 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
3502         Quote less in manuals
3503         The manuals often used quotes ``...'' when it is better to use @dfn or
3504         @code or capitalized words or no quoting at all.  For example, there is
3505         no need for the `` and '' in “if a variable has one effect for
3506         @code{nil} values and another effect for ``non-@code{nil}'' values”.
3507         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
3508         unnecessary quoting like this, and to use @dfn etc. instead when called
3509         for (Bug#21472).
3511 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
3513         lisp/custom.el (load-theme): Only compute hash when needed.
3515 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
3517         Pacify --enable-gcc-warnings
3518         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
3520 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
3522         Improve error reports in inotify.c
3523         * src/inotify.c (report_inotify_error): New function.  Clone of
3524         report_w32notify_error.
3525         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
3526         (Finotify_rm_watch): Use it.
3528 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
3530         Fix the file-notify tests for watch validation on w32
3531         * test/automated/file-notify-tests.el
3532         (file-notify-test04-file-validity): Move the directory deletion
3533         out of the file-notify--test-with-events macro.
3534         (file-notify-test04-file-validity)
3535         (file-notify-test05-dir-validity): Enlarge the timeout of
3536         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
3538 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
3540         Use OPEN BOX instead of space for \quad.
3541         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
3542         character for \quad instead of a space.
3544 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
3546         Add missing *.pbm images
3547         * etc/images/connect.pbm: New file.
3548         * etc/images/custom/down-pushed.pbm: New file.
3549         * etc/images/custom/down.pbm: New file.
3550         * etc/images/custom/right-pushed.pbm: New file.
3551         * etc/images/custom/right.pbm: New file.
3552         * etc/images/describe.pbm: New file.
3553         * etc/images/disconnect.pbm: New file.
3554         * etc/images/ezimage/bits.pbm: New file.
3555         * etc/images/ezimage/bitsbang.pbm: New file.
3556         * etc/images/ezimage/box-minus.pbm: New file.
3557         * etc/images/ezimage/box-plus.pbm: New file.
3558         * etc/images/ezimage/box.pbm: New file.
3559         * etc/images/ezimage/checkmark.pbm: New file.
3560         * etc/images/ezimage/dir-minus.pbm: New file.
3561         * etc/images/ezimage/dir-plus.pbm: New file.
3562         * etc/images/ezimage/dir.pbm: New file.
3563         * etc/images/ezimage/doc-minus.pbm: New file.
3564         * etc/images/ezimage/doc-plus.pbm: New file.
3565         * etc/images/ezimage/doc.pbm: New file.
3566         * etc/images/ezimage/info.pbm: New file.
3567         * etc/images/ezimage/key.pbm: New file.
3568         * etc/images/ezimage/label.pbm: New file.
3569         * etc/images/ezimage/lock.pbm: New file.
3570         * etc/images/ezimage/mail.pbm: New file.
3571         * etc/images/ezimage/page-minus.pbm: New file.
3572         * etc/images/ezimage/page-plus.pbm: New file.
3573         * etc/images/ezimage/page.pbm: New file.
3574         * etc/images/ezimage/tag-gt.pbm: New file.
3575         * etc/images/ezimage/tag-minus.pbm: New file.
3576         * etc/images/ezimage/tag-plus.pbm: New file.
3577         * etc/images/ezimage/tag-type.pbm: New file.
3578         * etc/images/ezimage/tag-v.pbm: New file.
3579         * etc/images/ezimage/tag.pbm: New file.
3580         * etc/images/ezimage/unlock.pbm: New file.
3581         * etc/images/gnus/important.pbm: New file.
3582         * etc/images/gnus/mail-send.pbm: New file.
3583         * etc/images/gnus/receipt.pbm: New file.
3584         * etc/images/gnus/toggle-subscription.pbm: New file.
3585         * etc/images/gnus/unimportant.pbm: New file.
3586         * etc/images/gud/all.pbm: New file.
3587         * etc/images/gud/rcont.pbm: New file.
3588         * etc/images/gud/recstart.pbm: New file.
3589         * etc/images/gud/recstop.pbm: New file.
3590         * etc/images/gud/rfinish.pbm: New file.
3591         * etc/images/gud/rnext.pbm: New file.
3592         * etc/images/gud/rnexti.pbm: New file.
3593         * etc/images/gud/rstep.pbm: New file.
3594         * etc/images/gud/rstepi.pbm: New file.
3595         * etc/images/gud/thread.pbm: New file.
3596         * etc/images/lock-broken.pbm: New file.
3597         * etc/images/lock-ok.pbm: New file.
3598         * etc/images/lock.pbm: New file.
3599         * etc/images/mail/copy.pbm: New file.
3600         * etc/images/mail/forward.pbm: New file.
3601         * etc/images/mail/not-spam.pbm: New file.
3602         * etc/images/mail/outbox.pbm: New file.
3603         * etc/images/mail/preview.pbm: New file.
3604         * etc/images/mail/save-draft.pbm: New file.
3605         * etc/images/mh-logo.pbm: New file.
3606         * etc/images/mpc/add.pbm: New file.
3607         * etc/images/mpc/ffwd.pbm: New file.
3608         * etc/images/mpc/next.pbm: New file.
3609         * etc/images/mpc/pause.pbm: New file.
3610         * etc/images/mpc/play.pbm: New file.
3611         * etc/images/mpc/prev.pbm: New file.
3612         * etc/images/mpc/rewind.pbm: New file.
3613         * etc/images/mpc/stop.pbm: New file.
3614         * etc/images/redo.pbm: New file.
3615         * etc/images/smilies/braindamaged.pbm: New file.
3616         * etc/images/smilies/cry.pbm: New file.
3617         * etc/images/smilies/dead.pbm: New file.
3618         * etc/images/smilies/evil.pbm: New file.
3619         * etc/images/smilies/forced.pbm: New file.
3620         * etc/images/smilies/grin.pbm: New file.
3621         * etc/images/smilies/indifferent.pbm: New file.
3622         * etc/images/sort-ascending.pbm: New file.
3623         * etc/images/sort-column-ascending.pbm: New file.
3624         * etc/images/sort-criteria.pbm: New file.
3625         * etc/images/sort-descending.pbm: New file.
3626         * etc/images/sort-row-ascending.pbm: New file.
3627         * etc/images/unchecked.pbm: New file.
3628         * etc/images/zoom-in.pbm: New file.
3629         * etc/images/README: Update instructions for PBM files.
3631         Add separator.pbm tool-bar image
3632         * etc/images/separator.pbm: New file.  Having it avoids the side
3633         effect of changing the tool-bar height when the default font's size
3634         changes and XPM image support is not available, due to the SPC
3635         characters that are left in the Lisp string used to display the tool
3636         bar, because there are no images to display instead of those SPC
3637         characters.
3639         Make show-paren-match face visible on mono-color displays
3640         * lisp/faces.el (show-paren-match): Use the underline face for
3641         mono-color displays.  (Bug#21481)
3643 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
3645         Don’t double-encode non-ASCII mail clipboard
3646         * lisp/mail/mailclient.el (mailclient-send-it):
3647         Also fix the case when mailclient-place-body-on-clipboard-flag
3648         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
3650 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
3652         Adapt file-notify-tests.el test cases
3653         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
3654         * src/inotify.c (Finotify_valid_p): Adapt docstring.
3655         * test/automated/file-notify-tests.el ()
3656         (file-notify-test03-autorevert)
3657         (file-notify-test04-file-validity)
3658         (file-notify-test04-file-validity-remote)
3659         (file-notify-test05-dir-validity)
3660         (file-notify-test05-dir-validity-remote): Adapt docstring.
3661         (file-notify-test04-file-validity): Let events arrive before
3662         calling final `file-notify-valid-p'.  Do not ignore errors.
3663         (file-notify-test05-dir-validity): Do not manipulate
3664         `temporary-file-directory', it isn't necessary.  Let events arrive
3665         before calling final `file-notify-valid-p'.  Do not ignore errors.
3667 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
3669         Don’t double-encode non-ASCII for mail client
3670         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
3671         Use RFC 6068’s list of unreserved characters.
3672         (mailclient-send-it): When encoding the body as a URL,
3673         first decode it as per Content-Type: and Content-Transfer-Encoding:,
3674         as URLs must use percent-encoded UTF-8 (Bug#21471).
3675         * doc/misc/url.texi (mailto): Update RFC number.
3677 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
3679         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
3681 2015-09-14  Alan Mackenzie  <acm@muc.de>
3683         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs.
3684         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
3685         `cadr/car'.
3687 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
3689         Clarify documentation of char-table extra slots
3690         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
3691         slot numbers are zero-based.  (Bug#21467)
3693 2015-09-14  Alan Mackenzie  <acm@muc.de>
3695         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
3696         Fixes debbugs#21449.
3697         lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
3698         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
3699         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
3700         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
3701         Insert "\\|\\\\." into regexps which match symbols.
3703 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
3705         Improve the doc string of w32notify-valid-p
3706         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
3707         that removing a watch makes its object invalid.
3709 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
3711         Fix tests for file-notify-valid-p.
3712         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
3713         Use delete-directory to delete file-notify--test-tmpfile if it is
3714         a directory.  Likewise for file-notify--test-tmpfile1.
3715         (file-notify-test04-file-validity)
3716         (file-notify-test05-dir-validity): Delete the parent directory of
3717         the test.  Ignore errors when cleaning up after the test.
3719 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
3721         Report file-notify-error in w32notify.c
3722         * src/w32notify.c (report_w32notify_error): New function.
3723         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
3724         errors, instead of calling report_file_error.  (Bug#21432)
3726         Implement w32notify-valid-p
3727         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
3728         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
3729         'identity'.
3731 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
3733         Test file-notify-valid-p.
3734         * test/automated/file-notify-tests.el
3735         (file-notify-test04-file-validity, file-notify-test05-dir-validity): New
3736         tests.
3738 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
3740         Fix markup in ELisp manual
3741         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
3742         of the 'alpha' parameter value.  (Bug#21470)
3744 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
3746         Introduce `file-notify-valid-p'
3747         * lisp/filenotify.el (file-notify-valid-p): New defun.
3748         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
3749         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
3750         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
3751         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
3752         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
3753         <file-notify-valid-p>: Add handler.
3754         * lisp/net/tramp.el (tramp-file-name-for-operation):
3755         Add `file-notify-valid-p'.
3756         (tramp-handle-file-notify-valid-p): New defun.
3757         * src/inotify.c (Finotify_valid_p): New defun.
3758         (syms_of_inotify): Declare Sinotify_valid_p.
3760 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
3762         Port Unicode char detection to FreeBSD+svgalib
3763         Problem reported by Ashish SHUKLA in:
3764         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
3765         * configure.ac: Check for struct unipair.unicode instead of for
3766         <linux/kd.h>, since that’s more specific to what the code actually needs.
3767         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
3769         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
3771 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
3773         Fix vertical cursor motion across overlay strings with newlines
3774         * src/indent.c (Fvertical_motion): Don't leave point in the middle
3775         of an overlay string with newlines, as that will position the
3776         cursor after the string at whatever column is there.  (Bug#21468)
3778 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
3780         Fix tests in file-notify-tests.el
3781         * test/automated/file-notify-tests.el: Remove Tramp declarations.
3782         (file-notify-test00-availability): Print remote command w/o Tramp
3783         internal functions.
3784         (file-notify-test02-events, file-notify-test02-events-remote):
3785         Adapt docstring.
3786         (file-notify-test03-autorevert): Use `format-message' when
3787         inspecting *Messages* buffer.
3789 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
3791         Bind inhibit-modification-hooks rather than a/b-c-f
3792         * lisp/wid-edit.el (widget-editable-list-insert-before)
3793         (widget-editable-list-delete-at):
3794         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
3795         (cperl-font-lock-unfontify-region-function):
3796         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
3797         * lisp/obsolete/longlines.el (longlines-mode):
3798         * lisp/obsolete/fast-lock.el (save-buffer-state):
3799         * lisp/mouse.el (mouse-save-then-kill-delete-region):
3800         * lisp/gnus/message.el (message-hide-headers):
3801         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
3802         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
3803         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
3804         than after/before-change-functions to nil.
3806 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
3808         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
3809         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
3810         the buffers, even if the forced redisplay is interrupted.
3812         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
3814         Merge syntax-propertize--done and parse-sexp-propertize-done
3815         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
3816         (syntax-propertize): Set syntax-propertize--done even if
3817         syntax-propertize-function is nil.  Avoid recursive invocations.
3818         (syntax-propertize-chunks): New var.
3819         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
3820         Simplify.
3821         (parse-sexp-propertize-function): Don't set any more.
3822         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
3823         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
3824         Call Qinternal__syntax_propertize instead of
3825         Vparse_sexp_propertize_function.  Truncate e_property if needed.
3826         (update_syntax_table_forward): Streamline.
3827         (syms_of_syntax): Define Qinternal__syntax_propertize.
3828         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
3830 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
3832         Prefer straight quoting in some text files
3833         Mostly this just changes ` to ' in static text.  Some exceptions:
3834         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
3835         typically does that now.
3836         * admin/quick-install-emacs (TRY, top level):
3837         Use straight quoting in diagnostics.
3838         * src/README: Fix working-directory confusion.
3840         * CONTRIBUTE: Move send-email here from git-workflow.
3842 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
3844         Improve file notifications in Tramp
3845         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
3846         Set proper events to watch for.
3847         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
3848         watched events.
3850 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
3852         Fix NS build with --enable-checking='glyphs'
3853         * src/nsfns.m (unwind_create_frame): Make the preprocessor
3854         conditionals for referencing 'dpyinfo' consistent throughout the
3855         function.  (Bug#21426)
3857 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
3859         Add seq-find
3860         This function is similar to `seq-some' but returns the found element.
3861         In the cases where nil can be the found element, a sentinel optional
3862         argument can be provided to avoid ambiguities.
3863         * lisp/emacs-lisp/seq.el (seq-find): New function.
3864         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
3865         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
3866         seq-find.
3868 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
3870         Document file-notify--test-with-events.
3871         * test/automated/file-notify-tests.el (file-notify--test-with-events):
3872         Add docstring.
3874 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
3876         Report used native library in file-notify-tests.el
3877         * test/automated/file-notify-tests.el
3878         (tramp-get-remote-gvfs-monitor-dir)
3879         (tramp-get-remote-inotifywait): Declare them.
3880         (file-notify-test00-availability): Print used native library.
3882 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
3884         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
3885         (mpc-file-local-copy): Check for absolute path.  Check more config
3886         locations.
3888 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
3890         Improve documentation of categories
3891         * doc/lispref/syntax.texi (Categories): Clarify the example of
3892         using define-category and modify-category-entry.  (Bug#21448)
3894 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
3896         Revert some stray curved quotes I missed earlier
3897         Problem reported by David Kastrup in:
3898         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
3899         * lisp/international/mule-cmds.el (leim-list-header):
3900         Use format-message with an ASCII-only format.
3902         Prefer NUMBERP to spelling it out
3903         * src/editfns.c (styled_format):
3904         * src/frame.h (NUMVAL):
3905         * src/image.c (parse_image_spec):
3906         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
3907         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
3908         * src/process.c (Fsignal_process):
3909         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
3910         * src/xfaces.c (check_lface_attrs):
3911         * src/xselect.c (x_fill_property_data, x_send_client_event):
3912         Use NUMBERP rather than INTEGERP || FLOATP.
3914 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
3916         Improve file-notify-tests
3917         * test/automated/file-notify-tests.el: Use lexical-binding
3918         (file-notify--test-cleanup): New function.
3919         (file-notify-test00-availability, file-notify-test01-add-watch)
3920         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
3921         (file-notify--test-with-events): New macro.
3922         (file-notify-test02-events): Use it.
3924 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
3926         Add patch-sending instructions to git-workflow
3927         From a suggestion by Mitchel Humpherys in:
3928         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
3929         * admin/notes/git-workflow (Sending patches): New section.
3931         Port to GIFLIB 5.0.6 and later
3932         Problem reported by Mitchel Humpherys in:
3933         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
3934         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
3935         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
3936         (gif_load) [HAVE_GIF]: Use it.
3938 2015-09-10  Glenn Morris  <rgm@gnu.org>
3940         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
3942 2015-09-09  Glenn Morris  <rgm@gnu.org>
3944         * test/automated/file-notify-tests.el (file-notify-test02-events):
3945         Fix recent change.
3947 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
3949         Refix movemail GCC pacification
3950         Problem reported by Ken Brown in:
3951         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
3952         * lib-src/movemail.c (main): Fix previous change.
3954 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3956         (time-to-seconds, time-less-p): Mark unused vars with underscore
3957         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
3958         Mark unused vars with underscore.
3960         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
3961         (parse_sexp_propertize): ...from here.
3963         * lisp/filenotify.el: Use lexical-binding
3964         (file-notify-add-watch): Avoid add-to-list.
3966 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
3968         Start checking event types in file-notify tests
3969         * test/automated/file-notify-tests.el (file-notify--test-events): New
3970         variable.
3971         (file-notify--test-event-handler): Append received event to
3972         file-notify--test-events for later analysis.
3973         (file-notify-test02-events): Assert that the expected notifications have
3974         arrived in the expected order.
3976 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
3978         Merge from gnulib and texinfo
3979         This incorporates:
3980         2015-08-03 Improve port of stdalign to C++11
3981         * lib/stdalign.in.h: Copy from gnulib.
3982         * doc/misc/texinfo.tex: Copy from texinfo.
3984 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3986         Make syntax.c call syntax-propertize on demand
3987         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
3988         (parse-sexp-propertize-function): Use it.
3989         (syntax-propertize): Disable parse-sexp-propertize-function.
3990         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
3991         New functions.
3992         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
3993         `parse-sexp-propertize-function'.
3994         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
3995         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
3996         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
3997         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
3998         Don't assume `point' is set.
4000 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
4002         Fix indentation of an @example in ELisp manual
4003         * doc/lispref/syntax.texi (Categories): Untabify the example.
4004         (Bug#21448)
4006 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
4008         Define internal-char-font even if --without-x
4009         The function is used now even in non-graphical environments.
4010         Problem reported by Glenn Morris in:
4011         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
4012         * src/font.c (Finternal_char_font): Move here ...
4013         * src/fontset.c (Finternal_char_font): ... from here.
4015 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
4017         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers): Remove
4018         warning.
4020 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
4022         Fix display of complex local data types in GDB-MI
4023         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
4024         variable has no value, display "<complex data type>" as a
4025         placeholder, instead of a confusing "nil".  (Bug#21438)
4027 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
4029         Remove redundant redefinition of seq-drop-while from seq.el
4030         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
4032 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
4034         * lisp/emacs-lisp/package.el (package--ensure-init-file)
4035         More robust check for `package-initialize' calls in init file.
4036         This function accepts an optional argument, but calls passing
4037         an argument would not have been detected.
4039 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
4041         Port movemail to RHEL 6 with --enable-gcc-warnings
4042         * lib-src/movemail.c (main): Declare local only if needed.
4044         Port recent Linux console changes to RHEL 6
4045         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
4047         Improvements for curved quotes on Linux consule
4048         This should help Emacs work better out-of-the-box on Linux consoles,
4049         which have only limited support for displaying Unicode characters.
4050         Also, undo the recent change that caused text-quoting-style to
4051         affect quote display on terminals, so that the two features are
4052         independent.  See Alan Mackenzie in:
4053         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
4054         Finally, add a style parameter to startup--setup-quote-display,
4055         so that this function can also be invoked after startup, with
4056         different styles depending on user preference at the time.
4057         * configure.ac: Check for linux/kd.h header.
4058         * doc/emacs/display.texi (Text Display): Document quote display.
4059         * doc/lispref/display.texi (Active Display Table):
4060         * etc/NEWS:
4061         * lisp/startup.el (startup--setup-quote-display, command-line):
4062         text-quoting-style no longer affects quote display.
4063         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
4064         * lisp/international/mule-util.el (char-displayable-p):
4065         * lisp/startup.el (startup--setup-quote-display):
4066         On a text terminal supporting glyph codes, use the reported
4067         glyph codes instead of the terminal coding system, as this
4068         is more accurate on the Linux console.
4069         * lisp/startup.el (startup--setup-quote-display):
4070         New optional arg STYLE.
4071         * src/fontset.c (Finternal_char_font):
4072         Report glyph codes for a text terminal, if they are available.
4073         Currently this is supported only for the Linux console.
4074         * src/termhooks.h (struct terminal): New member glyph-code-table.
4075         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
4076         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
4077         (terminal_glyph_code): New function.
4079 2015-09-08  Juri Linkov  <juri@linkov.net>
4081         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
4082         underline.  (Bug#21433)
4084 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
4086         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
4088 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
4090         Fix double-reporting of rename events with inotify
4091         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
4092         of rename events with inotify (bug#21435).
4094 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
4096         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
4097         (tetris-mode-map): Use it.
4099 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
4101         Remove a few simple cases of global redisplay
4102         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
4103         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
4104         rather than returning a "resized_p" boolean.
4105         (redisplay_internal): Adjust call accordingly.
4106         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
4107         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
4108         tracking of this undesirable situation.
4110         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
4111         * src/process.c (status_notify): Only set the update_mode_line on the
4112         relevant buffers rather than setting it globally.
4114 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
4116         * lisp/electric.el (electric-quote-post-self-insert-function):
4117         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
4118         (electric-quote-mode): Activate everywhere in message-mode.
4120 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
4122         Go back to grave quoting in source-code docstrings etc.
4123         This reverts almost all my recent changes to use curved quotes
4124         in docstrings and/or strings used for error diagnostics.
4125         There are a few exceptions, e.g., Bahá’í proper names.
4126         * admin/unidata/unidata-gen.el (unidata-gen-table):
4127         * lisp/abbrev.el (expand-region-abbrevs):
4128         * lisp/align.el (align-region):
4129         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
4130         (outlineify-sticky):
4131         * lisp/apropos.el (apropos-library):
4132         * lisp/bookmark.el (bookmark-default-annotation-text):
4133         * lisp/button.el (button-category-symbol, button-put)
4134         (make-text-button):
4135         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
4136         * lisp/calc/calc-embed.el (calc-do-embedded):
4137         * lisp/calc/calc-ext.el (calc-user-function-list):
4138         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
4139         * lisp/calc/calc-help.el (calc-describe-key)
4140         (calc-describe-thing, calc-full-help):
4141         * lisp/calc/calc-lang.el (calc-c-language)
4142         (math-parse-fortran-vector-end, math-parse-tex-sum)
4143         (math-parse-eqn-matrix, math-parse-eqn-prime)
4144         (calc-yacas-language, calc-maxima-language, calc-giac-language)
4145         (math-read-giac-subscr, math-read-math-subscr)
4146         (math-read-big-rec, math-read-big-balance):
4147         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
4148         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
4149         (calc-auto-recompute):
4150         * lisp/calc/calc-prog.el (calc-fix-token-name)
4151         (calc-read-parse-table-part, calc-user-define-invocation)
4152         (math-do-arg-check):
4153         * lisp/calc/calc-store.el (calc-edit-variable):
4154         * lisp/calc/calc-units.el (math-build-units-table-buffer):
4155         * lisp/calc/calc-vec.el (math-read-brackets):
4156         * lisp/calc/calc-yank.el (calc-edit-mode):
4157         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
4158         * lisp/calendar/appt.el (appt-display-message):
4159         * lisp/calendar/diary-lib.el (diary-check-diary-file)
4160         (diary-mail-entries, diary-from-outlook):
4161         * lisp/calendar/icalendar.el (icalendar-export-region)
4162         (icalendar--convert-float-to-ical)
4163         (icalendar--convert-date-to-ical)
4164         (icalendar--convert-ical-to-diary)
4165         (icalendar--convert-recurring-to-diary)
4166         (icalendar--add-diary-entry):
4167         * lisp/calendar/time-date.el (format-seconds):
4168         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
4169         (timeclock-make-hours-explicit, timeclock-log-data):
4170         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
4171         (todo-item-mark, todo-check-format)
4172         (todo-insert-item--next-param, todo-edit-item--next-key)
4173         (todo-mode):
4174         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
4175         * lisp/cedet/mode-local.el (describe-mode-local-overload)
4176         (mode-local-print-binding, mode-local-describe-bindings-2):
4177         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
4178         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
4179         * lisp/cus-start.el (standard):
4180         * lisp/cus-theme.el (describe-theme-1):
4181         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
4182         (custom--sort-vars-1, load-theme):
4183         * lisp/descr-text.el (describe-text-properties-1, describe-char):
4184         * lisp/dired-x.el (dired-do-run-mail):
4185         * lisp/dired.el (dired-log):
4186         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
4187         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
4188         (ad-disable-advice, ad-remove-advice, ad-set-argument)
4189         (ad-set-arguments, ad--defalias-fset, ad-activate)
4190         (ad-deactivate):
4191         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
4192         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
4193         (byte-optimize-while, byte-optimize-apply):
4194         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
4195         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
4196         (byte-compile-log-file, byte-compile-format-warn)
4197         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
4198         (byte-compile-cl-warn)
4199         (byte-compile-warn-about-unresolved-functions)
4200         (byte-compile-file, byte-compile--declare-var)
4201         (byte-compile-file-form-defmumble, byte-compile-form)
4202         (byte-compile-normal-call, byte-compile-check-variable)
4203         (byte-compile-variable-ref, byte-compile-variable-set)
4204         (byte-compile-subr-wrong-args, byte-compile-setq-default)
4205         (byte-compile-negation-optimizer)
4206         (byte-compile-condition-case--old)
4207         (byte-compile-condition-case--new, byte-compile-save-excursion)
4208         (byte-compile-defvar, byte-compile-autoload)
4209         (byte-compile-lambda-form)
4210         (byte-compile-make-variable-buffer-local, display-call-tree)
4211         (batch-byte-compile):
4212         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
4213         * lisp/emacs-lisp/chart.el (chart-space-usage):
4214         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
4215         (check-declare-warn, check-declare-file)
4216         (check-declare-directory):
4217         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
4218         (checkdoc-message-text-engine):
4219         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
4220         (cl--describe-class):
4221         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
4222         (cl--generic-describe, cl-generic-generalizers):
4223         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
4224         (cl-symbol-macrolet):
4225         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
4226         * lisp/emacs-lisp/copyright.el (copyright)
4227         (copyright-update-directory):
4228         * lisp/emacs-lisp/edebug.el (edebug-read-list):
4229         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
4230         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
4231         (eieio-oref):
4232         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
4233         * lisp/emacs-lisp/eieio-speedbar.el:
4234         (eieio-speedbar-child-make-tag-lines)
4235         (eieio-speedbar-child-description):
4236         * lisp/emacs-lisp/eieio.el (defclass, change-class):
4237         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
4238         (elint-init-form, elint-check-defalias-form)
4239         (elint-check-let-form):
4240         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
4241         (ert-results-pop-to-backtrace-for-test-at-point)
4242         (ert-results-pop-to-messages-for-test-at-point)
4243         (ert-results-pop-to-should-forms-for-test-at-point)
4244         (ert-describe-test):
4245         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
4246         (find-function-library):
4247         * lisp/emacs-lisp/generator.el (iter-yield):
4248         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
4249         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
4250         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
4251         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
4252         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
4253         (advice--make, define-advice):
4254         * lisp/emacs-lisp/package-x.el (package-upload-file):
4255         * lisp/emacs-lisp/package.el (package-version-join)
4256         (package-disabled-p, package-activate-1, package-activate)
4257         (package--download-one-archive)
4258         (package--download-and-read-archives)
4259         (package-compute-transaction, package-install-from-archive)
4260         (package-install, package-install-selected-packages)
4261         (package-delete, package-autoremove, describe-package-1)
4262         (package-install-button-action, package-delete-button-action)
4263         (package-menu-hide-package, package-menu--list-to-prompt)
4264         (package-menu--perform-transaction)
4265         (package-menu--find-and-notify-upgrades):
4266         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
4267         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
4268         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
4269         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
4270         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
4271         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
4272         (rx-form):
4273         * lisp/emacs-lisp/smie.el (smie-config-save):
4274         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
4275         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
4276         * lisp/emacs-lisp/testcover.el (testcover-1value):
4277         * lisp/emacs-lisp/timer.el (timer-event-handler):
4278         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
4279         (viper-toggle-search-style, viper-kill-buffer)
4280         (viper-brac-function):
4281         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
4282         * lisp/env.el (setenv):
4283         * lisp/erc/erc-button.el (erc-nick-popup):
4284         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
4285         * lisp/eshell/em-dirs.el (eshell/cd):
4286         * lisp/eshell/em-glob.el (eshell-glob-regexp)
4287         (eshell-glob-entries):
4288         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
4289         * lisp/eshell/esh-opt.el (eshell-show-usage):
4290         * lisp/facemenu.el (facemenu-add-new-face)
4291         (facemenu-add-new-color):
4292         * lisp/faces.el (read-face-name, read-face-font, describe-face)
4293         (x-resolve-font-name):
4294         * lisp/files-x.el (modify-file-local-variable):
4295         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
4296         (set-auto-mode, hack-one-local-variable--obsolete)
4297         (dir-locals-set-directory-class, write-file, basic-save-buffer)
4298         (delete-directory, copy-directory, recover-session)
4299         (recover-session-finish, insert-directory)
4300         (file-modes-char-to-who, file-modes-symbolic-to-number)
4301         (move-file-to-trash):
4302         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
4303         * lisp/find-cmd.el (find-generic, find-to-string):
4304         * lisp/finder.el (finder-commentary):
4305         * lisp/font-lock.el (font-lock-fontify-buffer):
4306         * lisp/format.el (format-write-file, format-find-file)
4307         (format-insert-file):
4308         * lisp/frame.el (get-device-terminal, select-frame-by-name):
4309         * lisp/fringe.el (fringe--check-style):
4310         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
4311         * lisp/help-fns.el (help-fns--key-bindings)
4312         (help-fns--compiler-macro, help-fns--parent-mode)
4313         (help-fns--obsolete, help-fns--interactive-only)
4314         (describe-function-1, describe-variable):
4315         * lisp/help.el (describe-mode)
4316         (describe-minor-mode-from-indicator):
4317         * lisp/image.el (image-type):
4318         * lisp/international/ccl.el (ccl-dump):
4319         * lisp/international/fontset.el (x-must-resolve-font-name):
4320         * lisp/international/mule-cmds.el (prefer-coding-system)
4321         (select-safe-coding-system-interactively)
4322         (select-safe-coding-system, activate-input-method)
4323         (toggle-input-method, describe-current-input-method)
4324         (describe-language-environment):
4325         * lisp/international/mule-conf.el (code-offset):
4326         * lisp/international/mule-diag.el (describe-character-set)
4327         (list-input-methods-1):
4328         * lisp/mail/feedmail.el (feedmail-run-the-queue):
4329         * lisp/mouse.el (minor-mode-menu-from-indicator):
4330         * lisp/mpc.el (mpc-playlist-rename):
4331         * lisp/msb.el (msb--choose-menu):
4332         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
4333         * lisp/net/imap.el (imap-interactive-login):
4334         * lisp/net/mairix.el (mairix-widget-create-query):
4335         * lisp/net/newst-backend.el (newsticker--sentinel-work):
4336         * lisp/net/newst-treeview.el (newsticker--treeview-load):
4337         * lisp/net/rlogin.el (rlogin):
4338         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
4339         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
4340         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
4341         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
4342         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
4343         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
4344         (org-babel-goto-named-result):
4345         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
4346         * lisp/org/ob-ref.el (org-babel-ref-resolve):
4347         * lisp/org/org-agenda.el (org-agenda-prepare):
4348         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
4349         (org-clock-resolve):
4350         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
4351         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
4352         * lisp/org/org-habit.el (org-habit-parse-todo):
4353         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
4354         (org-mouse-context-menu):
4355         * lisp/org/org-table.el (org-table-edit-formulas):
4356         * lisp/org/ox.el (org-export-async-start):
4357         * lisp/proced.el (proced-log):
4358         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
4359         (ada-check-matching-start, ada-goto-matching-start):
4360         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
4361         * lisp/progmodes/ada-xref.el (ada-find-executable):
4362         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
4363         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
4364         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
4365         (flymake-start-syntax-check-process):
4366         * lisp/progmodes/python.el (python-shell-get-process-or-error)
4367         (python-define-auxiliary-skeleton):
4368         * lisp/progmodes/sql.el (sql-comint):
4369         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
4370         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
4371         * lisp/recentf.el (recentf-open-files):
4372         * lisp/replace.el (query-replace-read-from)
4373         (occur-after-change-function, occur-1):
4374         * lisp/scroll-bar.el (scroll-bar-columns):
4375         * lisp/server.el (server-get-auth-key):
4376         * lisp/simple.el (execute-extended-command)
4377         (undo-outer-limit-truncate, list-processes--refresh)
4378         (compose-mail, set-variable, choose-completion-string)
4379         (define-alternatives):
4380         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
4381         (command-line-1):
4382         * lisp/subr.el (noreturn, define-error, add-to-list)
4383         (read-char-choice, version-to-list):
4384         * lisp/term/common-win.el (x-handle-xrm-switch)
4385         (x-handle-name-switch, x-handle-args):
4386         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
4387         * lisp/textmodes/reftex-ref.el (reftex-label):
4388         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
4389         * lisp/textmodes/two-column.el (2C-split):
4390         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
4391         (tutorial--find-changed-keys):
4392         * lisp/type-break.el (type-break-noninteractive-query):
4393         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
4394         (wdired-do-perm-changes):
4395         * lisp/whitespace.el (whitespace-report-region):
4396         Prefer grave quoting in source-code strings used to generate help
4397         and diagnostics.
4398         * lisp/faces.el (face-documentation):
4399         No need to convert quotes, since the result is a docstring.
4400         * lisp/info.el (Info-virtual-index-find-node)
4401         (Info-virtual-index, info-apropos):
4402         Simplify by generating only curved quotes, since info files are
4403         typically that ways nowadays anyway.
4404         * lisp/international/mule-diag.el (list-input-methods):
4405         Don’t assume text quoting style is curved.
4406         * lisp/org/org-bibtex.el (org-bibtex-fields):
4407         Revert my recent changes, going back to the old quoting style.
4409 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
4411         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling
4412         (package--autoloads-file-name)
4413         (package--activate-autoloads-and-load-path): New function.
4414         (package-activate-1): Delegate autoloading and load-path
4415         configuration to `package--activate-autoloads-and-load-path'.
4416         (package--compile): Before compilation, call
4417         `package--activate-autoloads-and-load-path' instead of
4418         `package-activate-1'.
4420 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
4422         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
4424 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
4426         Fix deletion of symlinks to directories on MS-Windows
4427         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
4428         symlink to a directory, try again with 'rmdir'.
4429         (is_symlink): If the argument is a symlink to a directory, set a
4430         bit in the return value to indicate that fact.
4432 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
4434         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
4435         When `package-initialize' is called as part of loading the init file,
4436         the user probably doesn't want it to be called again afterwards. In this
4437         situation, `package-initialize' now sets `package-enable-at-startup' to
4438         nil to prevent that. The user can have the old behaviour by setting this
4439         variable to t after the call to `package-initialize'.  (Bug#21423)
4440         * doc/emacs/package.texi (Package Installation): Document it.
4441         * doc/lispref/package.texi (Packaging Basics): Document it.
4442         * etc/NEWS: Document it.
4444 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
4446         Bump version of ntlm.el to 2.00
4447         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.  Add comm
4448         keyword.
4450 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
4452         * doc/misc/gnus.texi (Mail Source Specifiers):
4453         Allow :mailbox to be a list.
4455 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
4457         Allow even one non-regular character before the implicit tag name
4458         * lisp/progmodes/etags.el (etags-tags-completion-table):
4459         Allow even one non-regular character before the implicit tag name.
4460         Reported at http://emacs.stackexchange.com/questions/15269/.
4462 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
4464         Add support for NTLMv2 authentication
4465         * net/ntlm.el (ntlm): New customization group.
4466         (ntlm-compatibility-level): New defcustom.
4467         (ntlm-compute-timestamp): New function.
4468         (ntlm-generate-nonce): Likewise.
4469         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
4471 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
4473         * lisp/emacs-lisp/package.el: Rename custom faces
4474         All of the recently introduced faces, like `package-name-face', have
4475         been renamed to no end in `-face' to comply with the convention
4476         described in (info "(elisp) Defining Faces").
4477         (package-name, package-description)
4478         (package-status-built-in, package-status-external)
4479         (package-status-available, package-status-new)
4480         (package-status-held, package-status-disabled)
4481         (package-status-installed, package-status-dependency)
4482         (package-status-unsigned, package-status-incompat)
4483         (package-status-avail-obso): New faces.
4484         (package-menu--print-info-simple): Use them.
4486 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
4488         mail-source.el: Make the imap mail-source's :mailbox handle a list
4489         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
4490         Allow :mailbox to be  a list.
4492 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
4494         nnimap.el:  Handle nil arg to nnimap-request-group
4495         * lisp/gnus/nnimap.el (nnimap-request-group):  Handle nil "info" arg.
4496         This arg isn't always passed in, check it's not nil before making it
4497         into a list.  The active arg will also be nil if the group is new,
4498         check for that.
4500 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
4502         File notifications: Support renaming over directory boundaries
4503         * lisp/filenotify.el (file-notify-handle-event):
4504         (file-notify--pending-event): Adapt docstring.
4505         (file-notify--descriptor, file-notify-callback): Reimplement in
4506         order to support renaming over directory boundaries.
4507         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
4508         * doc/lispref/os.texi (File Notifications): Remove limitation of
4509         file renaming to the same directory.
4511 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
4513         Spelling fix (Bug#21420)
4515 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
4517         Improve the semantic of map-some
4518         Update map-some to return the returned by the predicate, similar to
4519         seq-some.
4520         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
4521           return value of the predicate.
4522         * test/automated/map-tests.el (test-map-some): Update the test to check
4523           for non-nil values only.
4525         Rename map-contains-key-p and map-some-p
4526         Remove the "-p" suffix from both function names.
4527         * lisp/emacs-lisp/map.el (map-contains-key, map-some): Rename the functions.
4528         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
4529           Update both test functions.
4531         Improve the semantic of seq-some
4532         Update seq-some to return non-nil if the predicate returns non-nil for
4533         any element of the seq, in which case the returned value is the one
4534         returned by the predicate.
4535         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
4536           docstring.
4537         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
4538         * doc/lispref/sequences.texi (Sequence Functions): Update the
4539           documentation for seq-some.
4541         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
4542         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
4543           without the "-p" prefix.
4544         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
4545           the tests accordingly.
4546         * doc/lispref/sequences.texi (Sequence Functions): Update the
4547           documentation for seq.el.
4549 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
4551         text-quoting-style for usage of fn names with ‘’
4552         * lisp/help.el (help--docstring-quote): Don’t assume
4553         text-quoting-style is ‘curve’ when generating usage strings for
4554         functions whose names contain curved quotes.
4556 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
4558         Fix fix for describe-function keybinding confusion
4559         This fixes a bug introduced by the previous patch.
4560         * lisp/help-fns.el (help-fns--signature):
4561         Last arg of help-fns--signature is now a buffer, or nil if a
4562         raw signature is wanted.  All callers changed.
4563         (describe-function-1): Use this to do the right thing with signatures.
4565 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
4567         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
4569         Use PAT rather than UPAT in pcase macros
4570         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
4571         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
4572           than UPAT.
4574 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
4576         Fix describe-function keybinding confusion
4577         * lisp/help-fns.el (describe-function-1): Compute signature
4578         in the original buffer, not in standard-output, so that
4579         substitute-command-keys uses the proper keybindings.
4580         This fixes Bug#21412, introduced in commit
4581         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
4583 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
4585         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
4587 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
4589         Avoid read error messages from 'inotify'
4590         * src/process.c (wait_reading_process_output): Add a
4591         'tls_available' set and manipulate it instead of 'Available' when
4592         checking TLS inputs.  Assign the value to 'Available' only if we
4593         find any TLS data waiting to be read.  This avoids error messages
4594         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
4596 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
4598         Avoid errors in thing-at-point with 2nd argument non-nil
4599         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
4600         sequences.  (Bug#21391)
4602 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
4604         Fix segfaults due to using a stale face ID
4605         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
4606         (display_echo_area_1, redisplay_internal): Call it to avoid
4607         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
4608         faces, which could case a segfault if the frame's face cache was
4609         freed since the last redisplay.  (Bug#21394)
4610         * src/xfaces.c (free_realized_faces): Call
4611         forget_escape_and_glyphless_faces.
4612         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
4614 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
4616         Fix minor problems with " in manual
4618 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
4620         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
4621         multi-hop files.
4623 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
4625         Support automated ‘make check’ in non-C locale
4626         This lets the builder optionally test Emacs behavior in other locales.
4627         The C locale is still the default for tests.
4628         * test/automated/Makefile.in (TEST_LOCALE): New macro.
4629         (emacs): Use it.
4630         * test/automated/flymake-tests.el (flymake-tests--current-face):
4631         Use C locale for subprocesses so that tests behave as expected.
4632         * test/automated/python-tests.el:
4633         (python-shell-prompt-validate-regexps-1)
4634         (python-shell-prompt-validate-regexps-2)
4635         (python-shell-prompt-validate-regexps-3)
4636         (python-shell-prompt-validate-regexps-4)
4637         (python-shell-prompt-validate-regexps-5)
4638         (python-shell-prompt-validate-regexps-6)
4639         (python-shell-prompt-set-calculated-regexps-1):
4640         Adjust expected output to match locale.
4641         * test/automated/tildify-tests.el (tildify-test--test)
4642         (tildify-space-test--test, tildify-space-undo-test--test):
4643         This test assumes UTF-8 encoding.
4645 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
4647         Fix some more docstring etc. quoting problems
4648         Mostly these fixes prevent the transliteration of apostrophes
4649         that should stay apostrophes.  Also, prefer curved quotes in
4650         Bahá’í proper names, as that’s the preferred Bahá’í style and
4651         these names are chock-full of non-ASCII characters anyway.
4652         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
4653         (eieio-defclass-internal):
4654         * lisp/emacs-lisp/eieio.el (defclass):
4655         * lisp/hi-lock.el (hi-lock-mode):
4656         Don’t transliterate Lisp apostrophes when generating a
4657         doc string or diagnostic.
4658         * lisp/international/mule-diag.el (list-coding-systems-1):
4659         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
4660         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
4661         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
4662         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
4663         Substitute quotes before putting them in the help buffer.
4665 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
4667         Re-add the notion of echo_prompt lost in the translation
4668         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
4669         echo_prompt which contains the actual string.  Update all uses.
4670         * src/keyboard.c (kset_echo_prompt): New function.
4671         (echo_update): Add echo_prompt at the very beginning.
4672         (read_char): Remove workaround for bug#19875, not needed any more.
4673         (read_key_sequence): Set echo_prompt rather than echo_string (bug#21403).
4674         (mark_kboards): Mark echo_prompt.
4676         Fix disassembly of non-compiled lexical functions (bug#21377)
4677         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
4678         * lisp/emacs-lisp/disass.el: Use lexical-binding.
4679         (disassemble): Recognize `closure's as well.
4680         (disassemble-internal): Use indirect-function and
4681         help-function-arglist, and accept `closure's.
4682         (disassemble-internal): Use interactive-form.
4683         (disassemble-1): Use functionp.
4685         (tex--prettify-symbols-compose-p): Don't compose in verbatim blocks!
4686         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
4687         Don't compose inside verbatim blocks!
4689 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
4691         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
4692         (bug#19441)
4694         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394)
4696 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
4698         vc-git-mode-line-string: Explicitly re-apply the face
4699         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
4700         the face (bug#21404).
4702 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
4704         Treat initial-scratch-message as a doc string
4705         * doc/emacs/building.texi (Lisp Interaction):
4706         * doc/lispref/os.texi (Startup Summary):
4707         * etc/NEWS: Document this.
4708         * lisp/startup.el (initial-scratch-message):
4709         Look up find-file’s key rather than hardcoding it.
4710         (command-line-1): Substitute the doc string.
4711         This also substitutes the quotes, which will help test display
4712         quoting at startup.
4714         Fix describe-char bug with glyphs on terminals
4715         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
4716         buffers too, so don’t treat them differently from graphic displays.
4717         Without this fix, describe-char would throw an error on a terminal
4718         if given a glyph with a non-default face.
4720         Follow text-quoting-style in display table init
4721         This attempts to fix a problem reported by Alan Mackenzie in:
4722         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
4723         * doc/lispref/display.texi (Active Display Table):
4724         Mention how text-quoting-style affects it.
4725         * doc/lispref/help.texi (Keys in Documentation):
4726         Say how to set text-quoting-style in ~/.emacs.
4727         * etc/NEWS: Document the change.
4728         * lisp/startup.el (startup--setup-quote-display):
4729         Follow user preference if text-quoting-style is set.
4730         (command-line): Setup quote display again if user expresses
4731         a preference in .emacs.
4733 2015-09-02  K. Handa  <handa@gnu.org>
4735         Fix typo
4736         * ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask -> OTF_positioning_type_components_mask.
4738         Fix previous change
4739         * ftfont.c (ftfont_drive_otf): Remember some bits of
4740         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
4742 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
4744         * lisp/vc/vc-hooks.el (vc-refresh-state): New command
4745         (vc-refresh-state): Rename from vc-find-file-hook and make interactive.
4746         (vc-find-file-hook): Redefine as obsolete alias.
4748 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
4750         Escape ` and ' in doc
4751         Escape apostrophes and grave accents in docstrings if they are
4752         are supposed to stand for themselves and are not quotes.  Remove
4753         apostrophes from docstring examples like ‘'(calendar-nth-named-day
4754         -1 0 10 year)’ that confuse source code with data.  Do some other
4755         minor docstring fixups as well, e.g., insert a missing close
4756         quote.
4758 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
4760         Generalize the prefix-command machinery of C-u
4761         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
4762         (prefix-command-preserve-state-hook): New hooks.
4763         (internal-echo-keystrokes-prefix): New function.
4764         (prefix-command--needs-update, prefix-command--last-echo): New vars.
4765         (prefix-command-update, prefix-command-preserve): New functions.
4766         (reset-this-command-lengths): New compatibility definition.
4767         (universal-argument--mode): Call prefix-command-update.
4768         (universal-argument, universal-argument-more, negative-argument)
4769         (digit-argument): Call prefix-command-preserve-state.
4770         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
4771         the "prefix argument" to echo.
4772         (this_command_key_count_reset, before_command_key_count)
4773         (before_command_echo_length): Delete variables.
4774         (echo_add_key): Always add a space.
4775         (echo_char): Remove.
4776         (echo_dash): Don't give up when this_command_key_count is 0, since that
4777         is now the case after a prefix command.
4778         (echo_update): New function, extracted from echo_now.
4779         (echo_now): Use it.
4780         (add_command_key, read_char, record_menu_key): Remove old disabled code.
4781         (command_loop_1): Don't refrain from pushing an undo boundary when
4782         prefix-arg is set.  Remove other prefix-arg special case, now handled
4783         directly in the prefix commands instead.  But call echo_now if there's
4784         a prefix state to echo.
4785         (read_char, record_menu_key): Use echo_update instead of echo_char.
4786         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
4787         (Freset_this_command_lengths): Delete function.
4788         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
4789         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
4790         * lisp/simple.el: Use those new hooks for C-u.
4791         (universal-argument--description): New function.
4792         (prefix-command-echo-keystrokes-functions): Use it.
4793         (universal-argument--preserve): New function.
4794         (prefix-command-preserve-state-hook): Use it.
4795         (command-execute): Call prefix-command-update if needed.
4796         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
4797         (kmacro-step-edit-prefix-index): Delete variables.
4798         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
4799         support for prefix arg commands.
4800         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
4801         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
4802         (cua--shift-control-prefix): Use prefix-command-preserve-state.
4803         Remove now unused arg `arg'.
4804         (cua--prefix-override-handler, cua--prefix-repeat-handler)
4805         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
4806         Update accordingly.
4807         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
4808         any more.
4809         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
4810         if the mark is not set.
4812 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
4814         Rework quoting in Emacs Lisp Introduction
4815         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
4816         (if in more detail, type-of-animal in detail, else): Rework the
4817         early example to use " rather than ' so that we don’t burden
4818         complete novices with the low-priority detail of text quoting style.
4819         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
4820         (kill-new function, kill-ring-yank-pointer)
4821         (Complete forward-sentence, Loading Files)
4822         (Code for current-kill, Code for current-kill, yank):
4823         Resurrect the Emacs 22 versions of the code, which uses grave
4824         quoting style in doc strings.
4825         (Complete zap-to-char): Mention how quoting works in doc strings.
4827         Setup quote display only if interactive
4828         * lisp/startup.el (command-line):
4829         Skip call to startup--setup-quote-display if noninteractive.
4830         Without this change, python-shell-prompt-validate-regexps-1
4831         fails in test/automated/python-tests.el when run in an
4832         en_US.utf8 locale on Fedora.
4834 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
4836         Use defalias at the top level
4837         * lisp/gnus/gnus-util.el (gnus-format-message):
4838         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
4839         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
4841 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
4843         terminal-init-w32console mimicks command-line
4844         Problem reported by Eli Zaretskii.
4845         * lisp/startup.el (startup--setup-quote-display):
4846         New function, refactored from a part of ‘command-line’.
4847         (command-line): Use it.
4848         * lisp/term/w32console.el (terminal-init-w32console):
4849         Use it, so that this function stays consistent with ‘command-line’.
4851         Display replacement quotes with shadow glyphs
4852         * lisp/startup.el (command-line): When displaying ASCII
4853         replacements for curved quotes, use a shadow glyph instead of a
4854         regular one, to avoid ambiguity.
4856 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
4858         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
4860 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
4862         Docstring fixes re quotes in C code
4863         Fix some docstring quoting problems, mostly by escaping apostrophe.
4865 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
4867         Some Tramp password fixes
4868         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
4869         of the hops.
4870         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
4871         at the beginning of the command.  Otherwise, it could be
4872         interpreted as password prompt if the remote host echoes the
4873         command.
4874         (tramp-remote-coding-commands): Add "openssl enc -base64".
4876 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
4878         Make vc-git-working-revision always return the commit hash
4879         * lisp/vc/vc-git.el (vc-git-working-revision):
4880         Return the commit hash (bug#21383).
4881         (vc-git--symbolic-ref): New function, extracted from above.
4882         (vc-git-mode-line-string): Use it.
4884 2015-09-01  K. Handa  <handa@gnu.org>
4886         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs.
4887         * ftfont.c (MFLTGlyphFT): New type.
4888         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
4889         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
4890         elements in the array MFLTGlyphString.glyphs.
4892 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
4894         Improve comments in elisp-mode.el, elisp-mode-tests.el
4895         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
4897         Delete Emacs 25 test in mode-local.el
4898         * lisp/cedet/mode-local.el (describe-mode-local-overload): Fix missed an
4899         edit in previous commit.
4901         Show all known mode-local overrides in *Help*
4902         * lisp/cedet/mode-local.el (describe-mode-local-overload): Assume Emacs
4903         25. Add all known mode-local overrides.
4905 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
4907         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
4908         Ensure that the article where the search word is found is displayed
4909         and pointed to in the summary buffer.
4911 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
4913         * lisp/newcomment.el (comment-dwim): Use `use-region-p'
4914         When the region is active, but is empty (length 0), act as though
4915         the region was not active; that is, put a comment at the end of
4916         the line.  (Bug#21119)
4918 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
4920         Port tls.el to older Emacs
4921         * lisp/net/tls.el (tls-format-message):
4922         Alias to format-message, or format if not available.
4923         (open-tls-stream): Use it.
4925 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
4927         hideif.el: Recognize .h++ as C++ header.
4928         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
4930         isearch: Document character folding mode.
4931         * isearch.el (isearch-forward): Mention `isearch-toggle-character-fold'
4932         in doc string.
4934 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
4936         Quoting fixes in ERC and Eshell
4937         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
4938         * lisp/erc/erc-backend.el (define-erc-response-handler):
4939         * lisp/erc/erc-fill.el (erc-fill-static-center):
4940         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
4941         * lisp/eshell/em-glob.el (eshell-glob-entries):
4942         * lisp/eshell/em-hist.el (eshell-save-some-history):
4943         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
4944         (eshell-shuffle-files):
4945         * lisp/eshell/esh-cmd.el (eshell-do-eval):
4946         * lisp/eshell/esh-proc.el (eshell-process-interact)
4947         (eshell-query-kill-processes):
4948         Respect ‘text-quoting-style’ in diagnostics and doc strings.
4950         Quoting fixes in Gnus
4951         * lisp/gnus/gnus-agent.el:
4952         (gnus-agent-possibly-synchronize-flags-server):
4953         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
4954         * lisp/gnus/gnus-eform.el (gnus-edit-form):
4955         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
4956         (gnus-group-nnimap-edit-acl):
4957         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
4958         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
4959         * lisp/gnus/message.el (message-strip-subject-encoded-words)
4960         (message-check-recipients, message-send-form-letter):
4961         * lisp/gnus/mm-decode.el (mm-display-part):
4962         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
4963         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
4964         (mml-smime-get-ldap-cert):
4965         * lisp/gnus/spam-report.el (spam-report-process-queue):
4966         Respect ‘text-quoting-style’ in diagnostics.
4967         * lisp/gnus/gnus-art.el (article-display-face)
4968         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
4969         Use straight quoting in email.
4970         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
4971         Escape apostrophes in doc strings.
4973         Quoting fixes in lisp mail, mh-e, net, url
4974         * lisp/mail/emacsbug.el (report-emacs-bug)
4975         (report-emacs-bug-hook): Use straight quotes in outgoing email,
4976         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
4977         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
4978         * lisp/mail/rmailout.el (rmail-output-read-file-name):
4979         * lisp/net/imap.el (imap-interactive-login):
4980         * lisp/net/tls.el (open-tls-stream):
4981         * lisp/url/url-auth.el (url-register-auth-scheme):
4982         Respect ‘text-quoting-style’ in diagnostics.
4983         * lisp/mh-e/mh-e.el (mh-sortm-args):
4984         Quote docstring example using text quotes, not as a Lisp quote.
4986 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
4988         Fix some byte-compiler warnings in EDE
4989         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
4990         existing autoloader list, rather than add to it.
4991         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
4992         argument to eieio class constructor.
4993         (ede-show-supported-projects): New.
4994         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
4995         with (oref ... name).
4996         (ede-auto-load-project): Use slot name, not initarg key.
4997         * lisp/cedet/ede/generic.el (ede-generic-load,
4998         ede-generic-find-matching-target): Use slot name, not initarg key.
4999         (ede-find-target): Use oref-default on class name.
5000         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
5001         class constructor.
5002         (ede-enable-generic-projects): Make project type names unique.
5004 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
5006         Fix directory accessibility tests for w32 network volumes
5007         * src/w32.c (faccessat): Don't fail with network volumes without a
5008         share.
5009         (w32_accessible_directory_p): Handle network volumes without a
5010         share.
5012         Fix handling long file names in readdir on MS-Windows
5013         * src/w32.c (sys_readdir): Append "\*" to the directory after
5014         converting it to UTF-16/ANSI, not before, to avoid overflowing the
5015         260-character limit on file names in filename_to_utf16/ansi.
5017         Make file-accessible-directory-p reliable on MS-Windows
5018         * src/w32.c (w32_accessible_directory_p): New function.
5019         * src/w32.h (w32_accessible_directory_p): Add prototype.
5020         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
5021         w32_accessible_directory_p to test a directory for accessibility
5022         by the current user.  (Bug#21346)
5023         (Ffile_accessible_directory_p): Remove the w32 specific caveat
5024         from the doc string.
5026 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
5028         Don't call do_pending_window_change in signal handlers (Bug#21380)
5029         * src/gtkutil.c (xg_frame_resized):
5030         * src/xterm.c (x_set_window_size):
5031         * src/w32term.c (x_set_window_size): Don't call
5032         do_pending_window_change.
5034 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
5036         Quoting fixes in lisp/org
5037         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
5038         (org-tags-view):
5039         * lisp/org/org-capture.el (org-capture-mode)
5040         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
5041         (org-ctags-ask-append-topic):
5042         * lisp/org/org.el (org-time-string-to-time)
5043         (org-time-string-to-absolute):
5044         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
5045         (org-ctags-ask-append-topic):
5046         * lisp/org/org.el (org-time-string-to-time)
5047         (org-time-string-to-absolute):
5048         Respect ‘text-quoting-style’ in diagnostics.
5049         * lisp/org/org-agenda.el (org-agenda-custom-commands)
5050         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
5051         * lisp/org/org-capture.el (org-capture-fill-template):
5052         Avoid contraction in output file that might be ASCII.
5053         * lisp/org/org-compat.el (format-message):
5054         Define if not already defined, for backward compatibility.
5055         * lisp/org/org-src.el (org-edit-src-save):
5056         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
5057         Escape apostrophes in diagnostics.
5059         Treat “instead” strings as docstrings
5060         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
5061         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
5062         Substitute quotes in instead strings.
5064 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
5066         Better documentation of seq-let
5067         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
5068         documentation of seq-let.
5070 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
5072         * lisp/international/ccl.el: Fix quoting.
5074         Quoting fixes in lisp/international and lisp/leim
5075         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
5076         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
5077         * lisp/international/mule-cmds.el:
5078         (select-safe-coding-system-interactively, leim-list-file-name):
5079         * lisp/international/quail.el (quail-use-package, quail-help):
5080         * lisp/international/titdic-cnv.el (tit-process-header)
5081         (miscdic-convert):
5082         Respect text quoting style in doc strings and diagnostics.
5083         * lisp/international/quail.el (lisp/international/quail.el):
5084         * lisp/leim/quail/ethiopic.el ("ethiopic"):
5085         Escape apostrophes in doc strings.
5087         Make ‘text-quoting-style’ a plain defvar
5088         It doesn’t need customization, as it’s likely useful only by experts.
5089         Suggested by Stefan Monnier in:
5090         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
5091         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
5093         Quoting fixes in lisp/textmodes
5094         * lisp/textmodes/bibtex.el (bibtex-validate)
5095         (bibtex-validate-globally, bibtex-search-entries):
5096         * lisp/textmodes/ispell.el (ispell-command-loop):
5097         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
5098         * lisp/textmodes/texinfmt.el (texinfmt-version)
5099         (texinfo-format-region, texinfo-format-buffer-1):
5100         * lisp/textmodes/two-column.el (2C-split):
5101         Respect text quoting style in doc strings and diagnostics.
5102         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
5103         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
5104         Escape apostrophes in doc strings.
5106         Documentation fixes re quotes
5107         Prefer curved quotes in examples if users will typically see
5108         curved quotes when the examples run.
5109         Mention format-message when appropriate.
5110         Don’t use @code in examples.
5111         Quote an apostrophe with @kbd.
5113         Quoting fixes in lisp/progmodes
5114         * lisp/progmodes/cc-engine.el (c-bos-report-error):
5115         * lisp/progmodes/cpp.el (cpp-edit-reset):
5116         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
5117         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
5118         (etags-tags-apropos, list-tags, tags-apropos):
5119         * lisp/progmodes/executable.el (executable-set-magic):
5120         * lisp/progmodes/octave.el (octave-sync-function-file-names)
5121         (octave-help, octave-find-definition-default-filename)
5122         (octave-find-definition):
5123         Respect text quoting style in doc strings and diagnostics.
5124         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
5125         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
5126         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
5127         Escape apostrophes in doc strings.
5128         * lisp/progmodes/cmacexp.el (c-macro-expansion):
5129         Use straight quoting in ASCII comment.
5130         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
5131         (idlwave-pad-keyword):
5132         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
5133         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
5134         (vhdl-electric-semicolon, vhdl-electric-comma)
5135         (vhdl-electric-period, vhdl-electric-equal):
5136         Use directed quotes in diagnostics and doc strings.
5138 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
5140         Minor documentation and NEWS tweak
5141         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let): Add an index
5142         entry.
5143         * NEWS: Fix a typo in character-fold-to-regexp.
5145 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
5147         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
5148         Revert patch from 2015-08-24.  Tramp shall be have like for local files.
5149         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
5150         Adapt test.
5152 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
5154         Text quoting fixes in cedet, emulation, emacs-lisp
5155         * lisp/cedet/ede.el (ede-check-project-directory):
5156         * lisp/cedet/semantic/analyze/debug.el:
5157         (semantic-analyzer-debug-insert-include-summary):
5158         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
5159         * lisp/cedet/semantic/decorate/include.el:
5160         (semantic-decoration-unknown-include-describe)
5161         (semantic-decoration-all-include-summary):
5162         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
5163         * lisp/emulation/edt.el (edt-load-keys):
5164         * lisp/emulation/viper-cmd.el:
5165         (viper-display-current-destructive-command)
5166         (viper-query-replace, viper-brac-function):
5167         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
5168         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
5169         Respect text quoting style in doc string or diagnostic.
5170         * lisp/cedet/mode-local.el (describe-mode-local-overload):
5171         Use format-message to avoid overtranslating quotes.
5172         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
5173         Escape an apostrophe in a docstring.
5174         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
5176 2015-08-29  Daniel Colascione  <dancol@dancol.org>
5178         Fix which-func for curly quotes: look for symbol, not message
5179         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
5180         imenu-unavailable error symbol instead of trying to match message
5181         exactly.
5182         * lisp/imenu.el (imenu-unavailable): New error.
5183         (imenu-unavailable-error): New function.
5185 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
5187         Fix Python tests on MS-Windows
5188         * test/automated/python-tests.el
5189         (python-shell-calculate-command-1): Run python-shell-interpreter
5190         through shell-quote-argument before comparing with what
5191         python-shell-calculate-command returns.
5192         (python-shell-calculate-pythonpath-1)
5193         (python-shell-calculate-pythonpath-2)
5194         (python-shell-calculate-process-environment-2): Use path-separator
5195         instead of a literal ':'.
5196         (python-shell-calculate-exec-path-2)
5197         (python-shell-calculate-exec-path-3)
5198         (python-shell-calculate-exec-path-4)
5199         (python-shell-with-environment-1)
5200         (python-shell-with-environment-2): Run "/env/bin" through
5201         expand-file-name before comparing with exec-path.  (Bug#21375)
5203 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5205         Use Core Text types/functions/variables/enumerators directly
5206         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
5207         (CharacterCollection): Remove typedefs.  All uses replaced with
5208         definitions.
5209         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
5210         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
5211         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
5212         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
5213         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
5214         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
5215         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
5216         definitions.
5217         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
5218         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
5219         (MAC_FONT_FORMAT_BITMAP)
5220         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
5221         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.  All
5222         uses replaced with definitions.
5223         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
5224         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
5225         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault): Add
5226         compatibility enumerators for older versions.
5227         (mac_font_descriptor_create_with_attributes)
5228         (mac_font_descriptor_create_matching_font_descriptors)
5229         (mac_font_descriptor_create_matching_font_descriptor)
5230         (mac_font_descriptor_copy_attribute)
5231         (mac_font_descriptor_supports_languages)
5232         (mac_font_create_with_name, mac_font_get_size)
5233         (mac_font_copy_family_name, mac_font_copy_character_set)
5234         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
5235         (mac_font_get_descent, mac_font_get_leading)
5236         (mac_font_get_underline_position)
5237         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
5238         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
5239         replaced with definitions.
5240         (mac_font_create_preferred_family_for_attributes)
5241         (mac_font_get_advance_width_for_glyph)
5242         (mac_font_get_bounding_rect_for_glyph)
5243         (mac_font_create_available_families, mac_font_shape): Remove
5244         macros for renamed functions.
5245         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
5246         * src/macterm.m (mac_font_descriptor_supports_languages): Rename
5247         from mac_ctfont_descriptor_supports_languages.
5248         (mac_font_create_preferred_family_for_attributes): Rename from
5249         mac_ctfont_create_preferred_family_for_attributes.
5250         (mac_font_get_advance_width_for_glyph): Rename from
5251         mac_ctfont_get_advance_width_for_glyph.  Use
5252         kCTFontOrientationDefault also for older versions.
5253         (mac_font_get_bounding_rect_for_glyph): Rename from
5254         mac_ctfont_get_bounding_rect_for_glyph. Use
5255         kCTFontOrientationDefault also for older versions.
5256         (mac_font_create_available_families): Rename from
5257         mac_ctfont_create_available_families.
5258         (mac_font_equal_in_postscript_name): Rename from
5259         mac_ctfont_equal_in_postscript_name.  All uses changed.
5260         (mac_font_create_line_with_string_and_font): Rename from
5261         mac_ctfont_create_line_with_string_and_font.  All uses changed.
5262         (mac_font_shape): Rename from mac_ctfont_shape.
5263         (mac_font_family_compare): Remove unused declaration.
5265 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
5267         Fix minor text quoting in calc, calendar, vc
5268         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
5269         * lisp/calc/calc-help.el (calc-j-prefix-help):
5270         * lisp/calc/calc-misc.el (calc-help):
5271         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
5272         Escape an apostrophe in a docstring.
5273         * lisp/calc/calc-forms.el (calc-hms-notation):
5274         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
5275         Escape an apostrophe in a diagnostic.
5276         * lisp/calc/calc-misc.el (calc-help):
5277         * lisp/calendar/diary-lib.el (diary-include-files):
5278         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
5279         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
5280         * lisp/vc/ediff-diff.el (ediff-same-contents):
5281         * lisp/vc/ediff-merg.el (ediff-re-merge):
5282         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
5283         * lisp/vc/ediff-util.el (ediff-test-save-region)
5284         (ediff-status-info):
5285         * lisp/vc/ediff.el (ediff-merge-revisions)
5286         (ediff-merge-revisions-with-ancestor):
5287         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
5288         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
5289         Respect text quoting style in doc string or diagnostic.
5290         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
5291         * lisp/vc/add-log.el (change-log-goto-source):
5292         Avoid double-formatting.
5293         * lisp/vc/ediff-init.el (format-message):
5294         New backward-compatibility alias.
5296 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
5298         Fix minor text quoting problems in lisp top level
5299         * lisp/apropos.el (apropos-describe-plist):
5300         * lisp/cus-theme.el (customize-themes):
5301         * lisp/dired.el (dired-log):
5302         * lisp/help-fns.el (describe-variable):
5303         * lisp/hexl.el (hexl-insert-multibyte-char):
5304         * lisp/info.el (Info-finder-find-node):
5305         * lisp/json.el (json-read-string):
5306         * lisp/novice.el (disabled-command-function)
5307         (disabled-command-function):
5308         * lisp/startup.el (normal-mouse-startup-screen):
5309         * lisp/woman.el (WoMan-log, WoMan-warn):
5310         Respect text quoting style in doc string or diagnostic.
5311         * lisp/replace.el (replace-character-fold):
5312         * src/syntax.c (Fmodify_syntax_entry):
5313         Escape an apostrophe in a docstring.
5314         * lisp/tempo.el (tempo-define-template):
5315         Remove confusing apostrophe from docstring.
5316         * lisp/whitespace.el (whitespace-mark-x):
5317         Use directed quotes in docstring.
5319 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
5321         Fix indentation rule in css-mode
5322         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
5323         brackets in presence of pseudo-selectors.  (Bug#21328)
5325 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
5327         Fix a bug in recording a macro while flyspell-mode is active
5328         * lisp/subr.el (sit-for): Don't call read-event when recording a
5329         macro.  (Bug#21329)
5331 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
5333         Tweak startup screen quoting
5334         * lisp/startup.el (normal-splash-screen): Use standard
5335         "M-" abbrevation rather than a confusingly-different one.
5336         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
5338 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
5340         Add test case for ‘format’ bug and refactor
5341         * src/editfns.c (styled_format): Refactor internally, mostly by
5342         moving declarations closer to uses.  This should not affect behavior.
5343         * test/automated/textprop-tests.el (textprop-tests-format): New test.
5345         Fix ‘format’ bug with property offsets
5346         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
5347         bug in calculating string property offsets (Bug#21351).
5349         Use straight quotes in lib-src diagnostics
5350         These auxiliary programs can’t use Emacs’s text-quoting-style,
5351         and it’s too much trouble to redo that mechanism by hand.
5352         So just use straight quotes for now.
5353         * lib-src/ebrowse.c (main):
5354         * lib-src/emacsclient.c (decode_options, main):
5355         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
5356         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
5357         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
5358         (none_help, print_language_names, print_help, add_regex)
5359         (suggest_asking_for_help):
5360         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
5361         Use straight quotes in diagnostics.
5363         ‘text-quoting-style’ fixes for admin
5364         * admin/admin.el (cusver-scan, cusver-check):
5365         * admin/authors.el (authors-canonical-file-name):
5366         * admin/bzrmerge.el (bzrmerge-missing):
5367         Respect ‘text-quoting-style’ in diagnostics.
5369 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
5371         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
5372         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
5373         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
5374         * doc/lispref/internals.texi (Writing Emacs Primitives):
5375         * etc/NEWS:
5376         Document the change.
5377         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
5378         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
5379         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
5380         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
5381         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
5382         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
5383         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
5384         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
5385         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
5386         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
5387         Remove.  All uses removed.  The code now assumes
5388         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
5389         * src/bytecode.c (relocate_byte_stack):
5390         Rename from unmark_byte_stack, since it now only relocates.
5391         All callers changed.
5392         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
5393         with GCPROs removed.
5394         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
5395         * test/automated/finalizer-tests.el (finalizer-basic)
5396         (finalizer-circular-reference, finalizer-cross-reference)
5397         (finalizer-error):
5398         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
5399         Remove tests, as they depend on gc-precise.
5401 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
5403         Improve seq-concatenate for new sequence types
5404         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
5405         ensure that concatenation happens on sequences only.  This makes it
5406         possible to use `seq-concatenate' for new types of seqs.
5407         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate): New
5408         function used in `seq-concatenate'.
5409         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
5410         for seq-into-sequence.
5412 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
5414         Add mode local overrides to xref-find-definitions
5415         * lisp/cedet/mode-local.el (xref-mode-local--override-present,
5416         xref-mode-local-overload): New; add mode local overrides to
5417         xref-find-definitions.
5418         * test/automated/elisp-mode-tests.el: Add mode local override tests.
5419         (xref-elisp-test-run): Handle indented defuns.
5420         (xref-elisp-generic-*): Improve doc strings.
5421         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
5422         (elisp--xref-find-definitions): Use it.
5424         Add mode local overrides to describe-function
5425         * lisp/cedet/mode-local.el (describe-mode-local-overload): New; add mode
5426         local overrides to describe-function.
5427         * etc/NEWS: Document change.
5429 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
5431         Prefer straight quoting in some etc text files
5432         These files are plain text and might be used by non-Emacs apps.
5433         They’re mostly ASCII, so just use straight quotes.
5435         Fix quoting in ‘message_with_string’
5436         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
5437         should work now.
5438         * src/xdisp.c (message_to_stderr): New function, refactored from
5439         part of ‘message3_nolog’.
5440         (message3_nolog): Use it.
5441         (message_with_string): Use it.  Don’t mishandle NUL bytes when
5442         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
5443         Use ‘format-message’, not ‘format’, so that quotes are translated.
5445 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
5447         Mention false positives of file-accessible-directory on w32
5448         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
5449         (Bug#21346)
5451 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
5453         Treat error strings as help
5454         * src/print.c (print_error_message): Translate quotes and command
5455         keys in errmsg so that users see, e.g., "Symbol’s value as
5456         variable is void: foo" when text-quoting-style is curved.
5458 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
5460         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
5462 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
5464         Top-level elisp files respect ‘text-quoting-style’
5465         In top-level elisp files, use format-message in diagnostic formats,
5466         so that they follow user preference as per ‘text-quoting-style’
5467         rather than being hard-coded to quote `like this'.
5468         * lisp/allout.el (allout-get-configvar-values):
5469         * lisp/apropos.el (apropos-symbols-internal):
5470         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
5471         (dired-do-create-files-regexp, dired-create-files-non-directory):
5472         * lisp/dired-x.el (dired-do-run-mail):
5473         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
5474         * lisp/disp-table.el (standard-display-european):
5475         * lisp/find-dired.el (find-dired):
5476         * lisp/forms.el (forms-mode):
5477         * lisp/ido.el (ido-buffer-internal):
5478         * lisp/info.el (Info-index-next):
5479         * lisp/outline.el (outline-invent-heading):
5480         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
5481         * lisp/proced.el (proced-log):
5482         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
5483         * lisp/recentf.el (recentf-open-files, recentf-save-list):
5484         * lisp/savehist.el (savehist-save):
5485         * lisp/server.el (server-ensure-safe-dir):
5486         * lisp/ses.el (ses-rename-cell):
5487         * lisp/simple.el (list-processes--refresh):
5488         * lisp/startup.el (command-line):
5489         * lisp/strokes.el (strokes-unset-last-stroke)
5490         (strokes-execute-stroke):
5491         Use format-message so that quotes are restyled.
5492         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
5493         Don’t quote ‘raised’.
5494         * lisp/descr-text.el (describe-char):
5495         * lisp/dirtrack.el (dirtrack-debug-message):
5496         * lisp/hexl.el (hexl-insert-multibyte-char):
5497         Apply substitute-command-keys to help string.
5498         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
5499         (wdired-do-perm-changes):
5500         Let dired-log do the formatting.
5502 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
5504         Go back to grave quoting in Tramp
5505         * lisp/net/tramp-adb.el:
5506         * lisp/net/tramp-cache.el:
5507         * lisp/net/tramp-compat.el:
5508         * lisp/net/tramp-gvfs.el:
5509         * lisp/net/tramp-gw.el:
5510         * lisp/net/tramp-sh.el:
5511         * lisp/net/tramp-smb.el:
5512         * lisp/net/tramp.el:
5513         Stick with grave quoting in diagnostics strings.  This is more
5514         portable to older Emacs, desirable for Tramp.
5515         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
5516         for diagnostic that needs requoting.
5517         * lisp/net/tramp-compat.el (format-message):
5518         Fall back on simple ‘format’, since that’s good enough now.
5520         Go back to grave quoting in Gnus
5521         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
5522         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
5523         (gnus-agent-fetch-headers):
5524         * lisp/gnus/gnus-int.el (gnus-start-news-server):
5525         * lisp/gnus/gnus-registry.el:
5526         (gnus-registry--split-fancy-with-parent-internal)
5527         (gnus-registry-post-process-groups):
5528         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
5529         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
5530         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
5531         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
5532         * lisp/gnus/spam.el (spam-check-blackholes):
5533         Stick with grave quoting in diagnostics strings.  This is more
5534         portable to older Emacs, desirable for Gnus.
5536         Fix customization of text-quoting-style
5537         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
5538         * lisp/wid-edit.el (widget-docstring):
5539         Get raw docstring here since it’s cooked later and should not be
5540         cooked twice.
5541         * lisp/cus-edit.el (custom-group-value-create):
5542         Cook the docstring before inserting it.
5543         * lisp/cus-start.el (text-quoting-style): Quote the customization
5544         docstrings according to the new rules.  Give curved examples.
5546         format-message now curves ` and '
5547         That way, the caller doesn’t have to use curved quotes to
5548         get diagnostics that match the text-quoting-style preferences.
5549         Suggested by Dmitry Gutov in:
5550         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
5551         This means we no longer need %qs, so remove that format.
5552         While we’re at it, fix an unlikely bug and lessen the pressure
5553         on the garbage collector by processing the string once rather
5554         than twice in the usual case.
5555         * doc/lispref/strings.texi (Formatting Strings):
5556         * etc/NEWS: Document this.
5557         * lisp/subr.el (format-message): Remove; now done in C.
5558         * src/callint.c (Fcall_interactively):
5559         * src/editfns.c (Fmessage, Fmessage_box):
5560         Use Fformat_message instead of Finternal__text_restyle
5561         followed by Fformat.
5562         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
5563         uLSQM and uRSQM.
5564         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
5565         when pure ASCII now suffices.  Fix unlikely bug when parsing
5566         unibyte string containing non-ASCII bytes.  Use inline code
5567         rather than memcpy, as it’s a tiny number of bytes.
5568         (Finternal__text_restyle): Remove; no longer used.
5569         (syms_of_doc): Don’t declare it.
5570         * src/editfns.c (Fformat): Rewrite in terms of new function
5571         ‘styled_format’.
5572         (Fformat_message): New function, moved here from subr.el.
5573         (styled_format): New function, with the old guts of Fformat,
5574         except it now optionally transliterates quotes, and it transliterates
5575         traditional grave accent and apostrophe quoting as well.
5576         Remove recently-added q flag; no longer needed or used.
5577         (syms_of_editfns): Define format-message.
5578         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
5579         Remove; no longer need to be global symbols.
5580         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
5581         so that callers can use `%s'.
5582         * src/image.c (image_size_error, xbm_load_image, xbm_load)
5583         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
5584         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
5585         (svg_load_image, gs_load, x_kill_gs_process):
5586         * src/lread.c (load_warn_old_style_backquotes):
5587         * src/xfaces.c (load_pixmap):
5588         * src/xselect.c (x_clipboard_manager_error_1):
5589         Use `%s' instead of %qs in formats.
5591 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
5593         Minor fixes in doc/emacs/search.texi
5594         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
5595         (Special Isearch): Use @w{} to generate several consecutive spaces
5596         with Texinfo 6.  (Bug#21345)
5598 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
5600         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
5601         (tramp-awk-coding-test): New defconsts.
5602         (tramp-remote-coding-commands): Use them.
5603         (tramp-find-inline-encoding): Check for Perl only if necessary.
5605 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
5607         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
5608         index entries for the special form `quote'.
5610 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
5612         Spelling fixes
5614         Gnus format-message typo fix
5615         * lisp/gnus/gnus-util.el (gnus-format-message):
5616         Fix typo when running in older Emacs.
5618         Prefer directed to neutral quotes
5619         Prefer directed to neutral quotes in docstings and diagnostics.
5620         In docstrings, escape apostrophes that would otherwise be translated
5621         to curved quotes using the newer, simpler rules.
5622         * admin/unidata/unidata-gen.el (unidata-gen-table):
5623         * lisp/align.el (align-region):
5624         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
5625         * lisp/bookmark.el (bookmark-default-annotation-text):
5626         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
5627         * lisp/calc/calc-lang.el (math-read-giac-subscr)
5628         (math-read-math-subscr):
5629         * lisp/calc/calc-misc.el (report-calc-bug):
5630         * lisp/calc/calc-prog.el (calc-fix-token-name)
5631         (calc-read-parse-table-part):
5632         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
5633         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
5634         * lisp/dabbrev.el (dabbrev-expand):
5635         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
5636         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
5637         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
5638         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
5639         * lisp/erc/erc-button.el (erc-nick-popup):
5640         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
5641         * lisp/eshell/em-dirs.el (eshell/cd):
5642         * lisp/eshell/em-glob.el (eshell-glob-regexp):
5643         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
5644         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
5645         * lisp/eshell/esh-opt.el (eshell-show-usage):
5646         * lisp/files-x.el (modify-file-local-variable):
5647         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
5648         (filesets-update-pre010505):
5649         * lisp/find-cmd.el (find-generic, find-to-string):
5650         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
5651         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
5652         (gnus-agent-fetch-headers):
5653         * lisp/gnus/gnus-int.el (gnus-start-news-server):
5654         * lisp/gnus/gnus-registry.el:
5655         (gnus-registry--split-fancy-with-parent-internal):
5656         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
5657         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
5658         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
5659         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
5660         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
5661         * lisp/gnus/spam.el (spam-check-blackholes):
5662         * lisp/mail/feedmail.el (feedmail-run-the-queue):
5663         * lisp/mpc.el (mpc-playlist-rename):
5664         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
5665         * lisp/net/mairix.el (mairix-widget-create-query):
5666         * lisp/net/tramp-cache.el:
5667         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
5668         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
5669         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
5670         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
5671         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
5672         (org-babel-goto-named-result):
5673         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
5674         * lisp/org/ob-ref.el (org-babel-ref-resolve):
5675         * lisp/org/org-agenda.el (org-agenda-prepare):
5676         * lisp/org/org-bibtex.el (org-bibtex-fields):
5677         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
5678         (org-clock-resolve):
5679         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
5680         * lisp/org/org-habit.el (org-habit-parse-todo):
5681         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
5682         (org-mouse-context-menu):
5683         * lisp/org/org-table.el (org-table-edit-formulas):
5684         * lisp/org/ox.el (org-export-async-start):
5685         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
5686         (dun-rooms, dun-endgame-questions):
5687         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
5688         * lisp/progmodes/ada-xref.el (ada-find-executable):
5689         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
5690         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
5691         (flymake-start-syntax-check-process):
5692         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
5693         * lisp/progmodes/sql.el (sql-comint):
5694         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
5695         * lisp/server.el (server-get-auth-key):
5696         * lisp/subr.el (version-to-list):
5697         * lisp/textmodes/reftex-ref.el (reftex-label):
5698         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
5699         * lisp/vc/ediff-diff.el (ediff-same-contents):
5700         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
5701         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
5702         Use directed rather than neutral quotes in diagnostics.
5704         Treat ' like ’ even when not matching `
5705         This is simpler and easier to explain, and should encourage better
5706         typography.  Do this in Electric Quote mode and when translating
5707         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
5708         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
5709         * doc/emacs/text.texi (Quotation Marks):
5710         * doc/lispref/help.texi (Keys in Documentation):
5711         * etc/NEWS:
5712         Document this.
5713         * lisp/electric.el (electric-quote-post-self-insert-function):
5714         * src/doc.c (Fsubstitute_command_keys):
5715         Always treat ' like ’ even when not matched by an open quote.
5717 2015-08-25  Glenn Morris  <rgm@gnu.org>
5719         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
5720         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
5722 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5724         * src/macfont.m (macfont_create_family_with_symbol): Accept
5725         localized names.
5727 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
5729         Tramp diagnostics as per ‘text-quoting-style’
5730         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
5731         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
5732         (tramp-adb-handle-delete-directory)
5733         (tramp-adb-handle-delete-file)
5734         (tramp-adb-handle-file-local-copy)
5735         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
5736         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
5737         (tramp-adb-maybe-open-connection):
5738         * lisp/net/tramp-cache.el:
5739         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
5740         (tramp-compat-octal-to-decimal)
5741         (tramp-compat-coding-system-change-eol-conversion):
5742         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
5743         (tramp-gvfs-do-copy-or-rename-file)
5744         (tramp-gvfs-handle-delete-directory)
5745         (tramp-gvfs-handle-delete-file)
5746         (tramp-gvfs-handle-expand-file-name)
5747         (tramp-gvfs-handle-file-local-copy)
5748         (tramp-gvfs-handle-file-notify-add-watch)
5749         (tramp-gvfs-handle-make-directory)
5750         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
5751         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
5752         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
5753         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
5754         (tramp-sh-handle-set-visited-file-modtime)
5755         (tramp-sh-handle-set-file-modes)
5756         (tramp-sh-handle-file-name-all-completions)
5757         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
5758         (tramp-do-copy-or-rename-file-directly)
5759         (tramp-do-copy-or-rename-file-out-of-band)
5760         (tramp-sh-handle-make-directory)
5761         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
5762         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
5763         (tramp-sh-handle-start-file-process)
5764         (tramp-sh-handle-file-local-copy)
5765         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
5766         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
5767         (tramp-find-file-exists-command, tramp-open-shell)
5768         (tramp-find-shell)
5769         (tramp-open-connection-setup-interactive-shell)
5770         (tramp-find-inline-encoding, tramp-find-inline-compress)
5771         (tramp-compute-multi-hops, tramp-maybe-open-connection)
5772         (tramp-wait-for-output, tramp-send-command-and-check)
5773         (tramp-send-command-and-read, tramp-get-remote-path)
5774         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
5775         (tramp-get-ls-command-with-quoting-style)
5776         (tramp-get-test-command, tramp-get-remote-ln)
5777         (tramp-get-remote-perl, tramp-get-remote-stat)
5778         (tramp-get-remote-readlink, tramp-get-remote-trash)
5779         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
5780         (tramp-get-remote-inotifywait, tramp-get-remote-id)
5781         (tramp-get-remote-python):
5782         * lisp/net/tramp-smb.el (tramp-smb-errors)
5783         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
5784         (tramp-smb-handle-delete-directory)
5785         (tramp-smb-handle-delete-file)
5786         (tramp-smb-handle-file-local-copy)
5787         (tramp-smb-handle-make-directory)
5788         (tramp-smb-handle-make-directory-internal)
5789         (tramp-smb-handle-make-symbolic-link)
5790         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
5791         (tramp-smb-handle-set-file-modes)
5792         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
5793         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
5794         (tramp-process-actions):
5795         Generate diagnostics according to ‘text-quoting-style’, by
5796         using curved quotes in format strings and ‘format-message’
5797         when appropriate.
5798         * lisp/net/tramp-compat.el (format-message):
5799         Define a replacement, if it’s an older version of Emacs
5800         that doesn’t have it already.
5802         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
5804 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
5806         Fix documentation for `save-excursion'
5807         * doc/lispref/positions.texi (Excursions):
5808         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
5809         (Template for save-excursion, Point and mark): `save-excursion'
5810         does not save&restore the mark any more.
5812 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
5814         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
5815         New defconsts.
5816         (tramp-do-file-attributes-with-stat)
5817         (tramp-do-directory-files-and-attributes-with-stat): Use them.
5818         (tramp-convert-file-attributes): Remove double slashes in symlinks.
5819         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
5820         Handle symlinks with "//" in the file name.
5822         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
5824 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
5826         Fix cl-subseq and cl-concatenate
5827         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
5828         seq functions.
5829         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
5830         seq-concatenate.
5832 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
5834         Fix full-screen code when there is no window manager (Bug#21317)
5835         * src/xterm.h (x_wm_supports): Declare external.
5836         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
5837         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
5838         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
5839         `fullscreen' frame parameter.
5840         * gtkutil.c (x_wm_set_size_hint): Set size hints when running
5841         without a window manager.
5843 2015-08-24  Glenn Morris  <rgm@gnu.org>
5845         * lisp/version.el (emacs-version): No longer include build host
5846         * doc/lispref/intro.texi (Version Info): Update example.
5848 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
5850         * doc/lispref/elisp.texi: Fix typo in previous change.
5852         More-conservative ‘format’ quote restyling
5853         Instead of restyling curved quotes for every call to ‘format’,
5854         create a new function ‘format-message’ that does the restyling,
5855         and using the new function instead of ‘format’ only in contexts
5856         where this seems appropriate.
5857         Problem reported by Dmitry Gutov and Andreas Schwab in:
5858         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
5859         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
5860         * doc/lispref/commands.texi (Using Interactive):
5861         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
5862         * doc/lispref/display.texi (Displaying Messages, Progress):
5863         * doc/lispref/elisp.texi:
5864         * doc/lispref/help.texi (Keys in Documentation):
5865         * doc/lispref/minibuf.texi (Minibuffer Misc):
5866         * doc/lispref/strings.texi (Formatting Strings):
5867         * etc/NEWS:
5868         Document the changes.
5869         * lisp/abbrev.el (expand-region-abbrevs):
5870         * lisp/apropos.el (apropos-library):
5871         * lisp/calc/calc-ext.el (calc-record-message)
5872         (calc-user-function-list):
5873         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
5874         * lisp/calc/calc-lang.el (math-read-big-balance):
5875         * lisp/calc/calc-store.el (calc-edit-variable):
5876         * lisp/calc/calc-units.el (math-build-units-table-buffer):
5877         * lisp/calc/calc-yank.el (calc-edit-mode):
5878         * lisp/calendar/icalendar.el (icalendar-export-region)
5879         (icalendar--add-diary-entry):
5880         * lisp/cedet/mode-local.el (mode-local-print-binding)
5881         (mode-local-describe-bindings-2):
5882         * lisp/cedet/semantic/complete.el (semantic-completion-message):
5883         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
5884         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
5885         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
5886         * lisp/descr-text.el (describe-text-properties-1, describe-char):
5887         * lisp/dframe.el (dframe-message):
5888         * lisp/dired-aux.el (dired-query):
5889         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
5890         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
5891         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
5892         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
5893         (cconv-analyze-form):
5894         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
5895         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
5896         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
5897         * lisp/emacs-lisp/edebug.el (edebug-format):
5898         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
5899         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
5900         (eldoc-message):
5901         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
5902         * lisp/emacs-lisp/find-func.el (find-function-library):
5903         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
5904         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
5905         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
5906         * lisp/emacs-lisp/package.el (package-compute-transaction)
5907         (package-install-button-action, package-delete-button-action)
5908         (package-menu--list-to-prompt):
5909         * lisp/emacs-lisp/timer.el (timer-event-handler):
5910         * lisp/emacs-lisp/warnings.el (lwarn, warn):
5911         * lisp/emulation/viper-cmd.el:
5912         (viper-toggle-parse-sexp-ignore-comments)
5913         (viper-kill-buffer, viper-brac-function):
5914         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
5915         * lisp/facemenu.el (facemenu-add-new-face):
5916         * lisp/faces.el (face-documentation, read-face-name)
5917         (face-read-string, read-face-font, describe-face):
5918         * lisp/files.el (find-alternate-file, hack-local-variables)
5919         (hack-one-local-variable--obsolete, write-file)
5920         (basic-save-buffer, delete-directory):
5921         * lisp/format.el (format-write-file, format-find-file)
5922         (format-insert-file):
5923         * lisp/help-fns.el (help-fns--key-bindings)
5924         (help-fns--compiler-macro, help-fns--obsolete)
5925         (help-fns--interactive-only, describe-function-1)
5926         (describe-variable):
5927         * lisp/help.el (describe-mode):
5928         * lisp/info-xref.el (info-xref-output):
5929         * lisp/info.el (Info-virtual-index-find-node)
5930         (Info-virtual-index, info-apropos):
5931         * lisp/international/kkc.el (kkc-error):
5932         * lisp/international/mule-cmds.el:
5933         (select-safe-coding-system-interactively)
5934         (select-safe-coding-system, describe-input-method):
5935         * lisp/international/mule-conf.el (code-offset):
5936         * lisp/international/mule-diag.el (describe-character-set)
5937         (list-input-methods-1):
5938         * lisp/international/quail.el (quail-error):
5939         * lisp/minibuffer.el (minibuffer-message):
5940         * lisp/mpc.el (mpc--debug):
5941         * lisp/msb.el (msb--choose-menu):
5942         * lisp/net/ange-ftp.el (ange-ftp-message):
5943         * lisp/net/gnutls.el (gnutls-message-maybe):
5944         * lisp/net/newst-backend.el (newsticker--sentinel-work):
5945         * lisp/net/newst-treeview.el (newsticker--treeview-load):
5946         * lisp/net/nsm.el (nsm-query-user):
5947         * lisp/net/rlogin.el (rlogin):
5948         * lisp/net/soap-client.el (soap-warning):
5949         * lisp/net/tramp.el (tramp-debug-message):
5950         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
5951         * lisp/nxml/nxml-parse.el (nxml-parse-error):
5952         * lisp/nxml/rng-cmpct.el (rng-c-error):
5953         * lisp/nxml/rng-match.el (rng-compile-error):
5954         * lisp/nxml/rng-uri.el (rng-uri-error):
5955         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
5956         * lisp/org/org-ctags.el:
5957         (org-ctags-ask-rebuild-tags-file-then-find-tag):
5958         * lisp/proced.el (proced-log):
5959         * lisp/progmodes/ebnf2ps.el (ebnf-log):
5960         * lisp/progmodes/flymake.el (flymake-log):
5961         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
5962         * lisp/replace.el (occur-1):
5963         * lisp/simple.el (execute-extended-command)
5964         (undo-outer-limit-truncate, define-alternatives):
5965         * lisp/startup.el (command-line):
5966         * lisp/subr.el (error, user-error, add-to-list):
5967         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
5968         (tutorial--find-changed-keys):
5969         * src/callint.c (Fcall_interactively):
5970         * src/editfns.c (Fmessage, Fmessage_box):
5971         Restyle the quotes of format strings intended for use as a
5972         diagnostic, when restyling seems appropriate.
5973         * lisp/subr.el (format-message): New function.
5974         * src/doc.c (Finternal__text_restyle): New function.
5975         (syms_of_doc): Define it.
5977 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
5979         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
5981 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
5983         python.el: Fix python-shell-buffer-substring on indented code
5984         (Bug#21086)
5985         * lisp/progmodes/python.el (python-shell-buffer-substring):
5986         Respect current line indentation when calculating string.
5987         * test/automated/python-tests.el
5988         (python-shell-buffer-substring-10)
5989         (python-shell-buffer-substring-11)
5990         (python-shell-buffer-substring-12): New tests.
5992 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
5994         Fix minor glitches from ‘format’ reversion
5995         * doc/lispref/strings.texi (Formatting Strings):
5996         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
5997         Documentation’, not below.
5998         * src/syntax.c (Finternal_describe_syntax_value):
5999         Prefer AUTO_STRING to build_string where either will do, as
6000         AUTO_STRING is a bit faster.
6002 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
6004         python.el: Defer shell setup code until first interactive prompt
6005         * lisp/progmodes/python.el
6006         (python-shell-comint-watch-for-first-prompt-output-filter): New
6007         function.
6008         (inferior-python-mode): Use it.
6009         (python-shell-first-prompt-hook): New hook.
6010         (python-shell-send-setup-code)
6011         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
6012         this hook instead of inferior-python-hook.
6014 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
6016         Remove the calls to `seq-into` from `seq-concatenate`
6017         Since most new types of seq would have to be defined as sequences (cons
6018         cells or CL structs, mostly), there is no need to convert the seqs to
6019         sequences (which can be a fairly expensive operation).
6020         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
6021         sequences.
6023 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
6025         python.el: Fix completion for pdb interactions
6026         * lisp/progmodes/python.el (python-shell-completion-setup-code):
6027         Simplify.  Toggle print_mode for native wrapped completer.
6028         (python-shell-completion-native-setup): Ensure process buffer.
6029         Add print_mode attribute to completer wrapper to toggle returning
6030         or printing candidates.
6031         (python-shell-completion-native-get-completions): Cleanup.
6032         (python-shell-completion-get-completions): Cleanup.
6033         (python-shell-completion-at-point): Perform prompt checks.  Force
6034         fallback completion in pdb interactions.
6036 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
6038         Make seq.el more extensible by using cl-defmethod
6039         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
6040         make it easier to extend seq.el with new "seq types".
6041         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
6042         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
6043         subseq in cl-extra.el, and use it in seq.el.
6045 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
6047         python.el: Fix prompt detection with user overridden interpreter
6048         * lisp/progmodes/python.el (python-shell-prompt-detect): Honor
6049         buffer local python-shell-interpreter and
6050         python-shell-interpreter-interactive-arg.
6052 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
6054         Support exec-directory with non-ASCII characters on Windows
6055         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
6056         in the system's ANSI codepage, when it is used for invoking
6057         cmdproxy.
6059 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
6061         Revert "Extend ‘format’ to translate curved quotes"
6062         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
6064         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
6065         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
6067 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
6069         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers): Clarify
6070         "invisible window".
6072 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
6074         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
6075         magic-fallback-mode-alist.
6077 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
6079         python.el: fallback completion, ffap and eldoc setup enhancements
6080         Setup codes are now sent continuously so that the current frame is
6081         always taken into account.  This allows working within debuggers
6082         and always keeping a fresh version of setup codes that will return
6083         proper results.
6084         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
6085         (python-shell-send-setup-code): Send code only when
6086         python-shell-setup-codes is non-nil.
6087         (python-shell-completion-string-code): Cleanup trailing newline.
6088         (python-shell-completion-get-completions): Always use
6089         python-shell-completion-setup-code.
6090         (python-ffap-setup-code): Work with any object, not only modules.
6091         (python-ffap-string-code): Cleanup trailing newline.
6092         (python-ffap-module-path): Always use python-ffap-setup-code.
6093         (python-eldoc-string-code): Cleanup trailing newline.
6094         (python-eldoc--get-doc-at-point): Always use
6095         python-eldoc-setup-code.  Return non-nil only if docstring is
6096         found.
6098         python.el: Increase native completion robustness.
6099         * lisp/progmodes/python.el (python-shell-completion-native-setup):
6100         Make completer print real candidates and just return dummy ones to
6101         avoid input modification.
6102         (python-shell-completion-native-get-completions): Set
6103         comint-redirect-insert-matching-regexp to non-nil and make
6104         comint-redirect-finished-regexp match the last dummy candidate.
6105         Use python-shell-accept-process-output to wait for the full list
6106         of candidates.
6108 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
6110         Fix invocation of programs via cmdproxy.exe
6111         * src/w32proc.c (sys_spawnve): Use exec-directory, not
6112         invocation-directory, for finding cmdproxy.exe.  When Emacs is
6113         run from the source tree, look for cmdproxy.exe in the same source
6114         tree.  (Bug#21323)
6116 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
6118         Handle comments inside unquoted URIs in css-mode
6119         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
6120         (css-syntax-propertize-function): New defconst.
6121         (css--font-lock-keywords): Handle parens around unquoted URIs.
6122         (css-mode): Set `syntax-propertize-function'.
6124 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
6126         Support invocation of Hunspell with multiple dictionaries
6127         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file): Support
6128         lists of dictionaries of the form "DICT1,DICT2,...".
6129         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
6131         Minor formatting changes in ispell.el
6132         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
6133         (ispell-print-if-debug, ispell-aspell-find-dictionary)
6134         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
6135         (ispell-hunspell-dictionary-alist)
6136         (ispell-hunspell-fill-dictionary-entry)
6137         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
6138         (ispell-buffer-with-debug, ispell-complete-word)
6139         (ispell-current-dictionary, ispell-current-personal-dictionary)
6140         (ispell-accept-output, ispell-minor-mode)
6141         (ispell-personal-dictionary, ispell-dictionary-alist)
6142         (ispell-really-aspell, ispell-really-hunspell)
6143         (ispell-encoding8-command, ispell-aspell-supports-utf8)
6144         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
6145         Fix whitespace, inconsistent capitalization, and arguments in doc
6146         strings.
6148 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
6150         In ‘adjust-window-trailing-edge’ fix bug with size-preserved windows.
6151         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
6152         function refused to resize a size-preserved window.
6154 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
6156         Improve documentation of 'window-use-time'
6157         * doc/lispref/windows.texi (Selecting Windows): Improve
6158         documentation and indexing of 'window-use-time'.
6160 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
6162         * lisp/progmodes/cc-*.el: Fix up commenting style
6163         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
6164         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
6165         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
6166         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
6167         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
6168         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
6169         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
6170         Fix up commenting style.
6172 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
6174         text-quoting-style in emacs-lisp diagnostics
6175         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
6176         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
6177         (ad-disable-advice, ad-remove-advice, ad-set-argument)
6178         (ad-set-arguments):
6179         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
6180         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
6181         (byte-optimize-while, byte-optimize-apply):
6182         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
6183         (byte-compile-log-file, byte-compile-format-warn)
6184         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
6185         (byte-compile-cl-warn)
6186         (byte-compile-warn-about-unresolved-functions)
6187         (byte-compile-file, byte-compile-fix-header)
6188         (byte-compile--declare-var, byte-compile-file-form-defmumble)
6189         (byte-compile-form, byte-compile-normal-call)
6190         (byte-compile-variable-ref, byte-compile-variable-set)
6191         (byte-compile-subr-wrong-args, byte-compile-setq-default)
6192         (byte-compile-negation-optimizer)
6193         (byte-compile-condition-case--old)
6194         (byte-compile-condition-case--new, byte-compile-save-excursion)
6195         (byte-compile-defvar, byte-compile-autoload)
6196         (byte-compile-lambda-form)
6197         (byte-compile-make-variable-buffer-local, display-call-tree)
6198         (batch-byte-compile):
6199         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
6200         (cconv-analyze-form):
6201         * lisp/emacs-lisp/chart.el (chart-space-usage):
6202         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
6203         (check-declare-warn, check-declare-file)
6204         (check-declare-directory):
6205         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
6206         (checkdoc-message-text-engine):
6207         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
6208         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
6209         (cl-symbol-macrolet):
6210         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
6211         * lisp/emacs-lisp/copyright.el (copyright)
6212         (copyright-update-directory):
6213         * lisp/emacs-lisp/edebug.el (edebug-read-list):
6214         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
6215         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
6216         (eieio-oref, eieio-oset-default):
6217         * lisp/emacs-lisp/eieio-speedbar.el:
6218         (eieio-speedbar-child-make-tag-lines)
6219         (eieio-speedbar-child-description):
6220         * lisp/emacs-lisp/eieio.el (defclass, change-class):
6221         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
6222         (elint-init-form, elint-check-defalias-form)
6223         (elint-check-let-form):
6224         * lisp/emacs-lisp/ert.el (ert-get-test):
6225         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
6226         (find-function-library):
6227         * lisp/emacs-lisp/generator.el (iter-yield):
6228         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
6229         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
6230         * lisp/emacs-lisp/package-x.el (package-upload-file):
6231         * lisp/emacs-lisp/package.el (package-version-join)
6232         (package-disabled-p, package-activate-1, package-activate)
6233         (package--download-one-archive)
6234         (package--download-and-read-archives)
6235         (package-compute-transaction, package-install-from-archive)
6236         (package-install, package-install-selected-packages)
6237         (package-delete, package-autoremove)
6238         (package-install-button-action, package-delete-button-action)
6239         (package-menu-hide-package, package-menu--list-to-prompt)
6240         (package-menu--perform-transaction)
6241         (package-menu--find-and-notify-upgrades):
6242         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
6243         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
6244         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
6245         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
6246         * lisp/emacs-lisp/smie.el (smie-config-save):
6247         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
6248         * lisp/emacs-lisp/testcover.el (testcover-1value):
6249         Use curved quotes in diagnostic format strings.
6251 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
6253         python.el: Ensure remote process-environment on non-interactive processes
6254         * lisp/progmodes/python.el
6255         (python-shell-tramp-refresh-process-environment): New function.
6256         (python-shell-with-environment): Use it.
6257         * test/automated/python-tests.el (python-shell-with-environment-2):
6258         Update.
6260         python.el: Enhancements to process environment setup.
6261         * lisp/progmodes/python.el (python-shell-process-environment)
6262         (python-shell-extra-pythonpaths, python-shell-exec-path)
6263         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
6264         (python-shell-setup-codes): Remove :safe.
6265         (python-shell-remote-exec-path): New defcustom.
6266         (python-shell--add-to-path-with-priority): New macro.
6267         (python-shell-calculate-pythonpath): Give priority to
6268         python-shell-extra-pythonpaths.  Update docstring.
6269         (python-shell-calculate-process-environment): Give priority to
6270         python-shell-process-environment.  Update docstring.
6271         (python-shell-calculate-exec-path): Give priority to
6272         python-shell-exec-path and calculated virtualenv bin directory.
6273         Update docstring.
6274         (python-shell-tramp-refresh-remote-path): New function.
6275         (python-shell-with-environment): Use it when working remotely and
6276         do not modify tramp-remote-path.  Allow nesting.
6277         (python-shell-calculate-command): Remove useless
6278         python-shell-with-environment call.
6279         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
6280         (python-shell-calculate-pythonpath-2)
6281         (python-shell-calculate-process-environment-6)
6282         (python-shell-calculate-process-environment-7)
6283         (python-shell-calculate-process-environment-8)
6284         (python-shell-calculate-exec-path-3)
6285         (python-shell-calculate-exec-path-4)
6286         (python-shell-calculate-exec-path-5)
6287         (python-shell-calculate-exec-path-6)
6288         (python-shell-with-environment-3): New tests.
6289         (python-shell-calculate-process-environment-2)
6290         (python-shell-calculate-process-environment-3)
6291         (python-shell-calculate-process-environment-4)
6292         (python-shell-calculate-process-environment-5)
6293         (python-shell-calculate-exec-path-1)
6294         (python-shell-calculate-exec-path-2)
6295         (python-shell-with-environment-1)
6296         (python-shell-with-environment-2): Update and simplify.
6298 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
6300         Avoid hard-coding "M-x command" in docstrings
6301         * lisp/calendar/todo-mode.el (todo-mode):
6302         * lisp/desktop.el (desktop-save-mode):
6303         * lisp/edmacro.el (edit-kbd-macro):
6304         * lisp/emacs-lisp/package.el (package-menu-execute):
6305         * lisp/emulation/viper-cmd.el (viper-ask-level):
6306         * lisp/emulation/viper-init.el (viper-expert-level):
6307         * lisp/filesets.el (filesets-add-buffer):
6308         * lisp/follow.el (follow-mode):
6309         * lisp/gnus/auth-source.el (auth-sources):
6310         * lisp/international/ogonek.el (ogonek-informacja)
6311         (ogonek-information):
6312         * lisp/net/tramp.el (tramp-process-actions):
6313         * lisp/org/org-gnus.el (org-gnus-no-new-news):
6314         * lisp/org/org.el (org-ellipsis):
6315         * lisp/progmodes/python.el (python-shell-get-process-or-error):
6316         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
6317         * lisp/server.el (server-start):
6318         * lisp/type-break.el (type-break-noninteractive-query):
6319         * lisp/userlock.el (ask-user-about-supersession-help):
6320         * lisp/whitespace.el (whitespace-report-region):
6321         Prefer (substitute-command-keys "`\\[foo-command]'")
6322         to "`M-x foo-command'" in docstrings and the like.
6324 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
6326         Use add-function for prettify-symbols-compose-predicate
6327         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
6328         prettify-symbols-compose-predicate in terms of add-function.
6329         * etc/NEWS: Mention prettify-symbols-compose-predicate and
6330         prettify-symbols-mode support in tex-mode.
6332 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
6334         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun
6335         (smie-indent-exps, smie-indent-keyword): Use it.
6336         * test/indent/css-mode.css: Test alignment with leading comment.
6338 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
6340         Respect text-quoting-style in (*Finder*) menus
6341         * lisp/info.el (info--prettify-description):
6342         Treat description as a docstring, so that it's requoted as
6343         per text-quoting-style.
6345 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
6347         Document `window-use-time' in Elisp manual
6348         * doc/lispref/windows.texi (Selecting Windows): Document
6349         `window-use-time'.
6351 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
6353         A better fix for bug#21303
6354         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.  This is a
6355         cleaner fix for Bug#21260 than the previous change.
6357 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
6359         Respect text-quoting-style in calc
6360         In calc, tespect text-quoting-style preference in diagnostic
6361         formats and fix a few similar problems in docstrings.
6362         * lisp/calc/calc-aent.el (math-read-factor):
6363         * lisp/calc/calc-embed.el (calc-do-embedded):
6364         * lisp/calc/calc-ext.el (calc-user-function-list)
6365         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
6366         * lisp/calc/calc-help.el (calc-describe-key)
6367         (calc-describe-thing):
6368         * lisp/calc/calc-lang.el (calc-c-language)
6369         (math-parse-fortran-vector-end, math-parse-tex-sum)
6370         (math-parse-eqn-matrix, math-parse-eqn-prime)
6371         (calc-yacas-language, calc-maxima-language, calc-giac-language)
6372         (math-read-big-rec, math-read-big-balance):
6373         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
6374         (calc-auto-recompute):
6375         * lisp/calc/calc-prog.el (calc-user-define-invocation)
6376         (math-do-arg-check):
6377         * lisp/calc/calc-store.el (calc-edit-variable):
6378         * lisp/calc/calc-units.el (math-build-units-table-buffer):
6379         * lisp/calc/calc-vec.el (math-read-brackets):
6380         * lisp/calc/calc-yank.el (calc-edit-mode):
6381         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
6382         Use curved quotes in diagnostic format strings.
6383         * lisp/calc/calc-help.el (calc-describe-thing):
6384         Format docstrings with substitute-command-keys.
6385         * lisp/calc/calc-help.el (calc-j-prefix-help):
6386         * lisp/calc/calc-misc.el (calc-help):
6387         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
6388         Escape a docstring "`".
6390 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
6392         Fix documentation of 'menu-set-font' and 'set-frame-font'
6393         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
6394         * doc/lispref/frames.texi (Frame Font): Document that
6395         set-frame-font with the last argument 't' will also make the font
6396         the default for the future GUI frames.
6398         Document '--create-frame' option to emacsclient
6399         * doc/emacs/misc.texi (emacsclient Options): Document the
6400         '--create-frame' option.  (Bug#21308)
6402 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
6404         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
6406 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
6408         Document 'get-mru-window' in the ELisp manual
6409         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
6410         'get-mru-window'.  (Bug#21306)
6412         Clarify documentation of 'get-buffer-window-list'
6413         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
6414         current window, if relevant, will be the first in the list
6415         returned by 'get-buffer-window-list'.
6416         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
6418 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
6420         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
6421         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
6422         `switch-to-buffer'.
6424 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
6426         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
6427         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
6428         `display-buffer' instead of `switch-to-buffer'.
6430 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
6432         Follow user preference in calendar diagnostics
6433         Respect text-quoting-style preference in diagnostic formats by
6434         using curved quotes (which are translated as per text-quoting-style)
6435         instead of grave accent and apostrophe (which are not).
6436         * lisp/calendar/appt.el (appt-display-message):
6437         * lisp/calendar/diary-lib.el (diary-check-diary-file)
6438         (diary-mail-entries, diary-from-outlook):
6439         * lisp/calendar/icalendar.el (icalendar-export-region)
6440         (icalendar--convert-float-to-ical)
6441         (icalendar--convert-date-to-ical)
6442         (icalendar--convert-ical-to-diary)
6443         (icalendar--convert-recurring-to-diary)
6444         (icalendar--add-diary-entry):
6445         * lisp/calendar/time-date.el (format-seconds):
6446         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
6447         (timeclock-make-hours-explicit):
6448         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
6449         (todo-item-mark, todo-check-format)
6450         (todo-insert-item--next-param, todo-edit-item--next-key)
6451         (todo-mode):
6452         Use curved quotes in diagnostic format strings.
6453         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
6454         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
6455         Just use straight quoting for simple test case.
6457 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
6459         * src/gfilenotify.c (Fgfile_add_watch):
6460         Handle errors from g_file_monitor.
6462 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
6464         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
6465         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
6466         frame" instead of "non-minibuffer frame".
6468         Fix frame geometry related text
6469         * doc/lispref/frames.texi (Frame Layout): Rename
6470         `x-frame-geometry' to `frame-geometry'.
6471         * doc/lispref/frames.texi (Mouse Position):
6472         * doc/lispref/windows.texi (Coordinates and Windows): Use
6473         `set-mouse-absolute-pixel-position' instead of
6474         `x-set-mouse-absolute-pixel-position'.
6476         Sanitize frame geometry related functions
6477         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
6478         (Fx_frame_edges): Rename to Fns_frame_edges.
6479         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
6480         (Fx_frame_edges): Rename to Fw32_frame_edges.
6481         (Fx_mouse_absolute_pixel_position): Rename to
6482         Fw32_mouse_absolute_pixel_position.
6483         (Fx_set_mouse_absolute_pixel_position): Rename to
6484         Fw32_set_mouse_absolute_pixel_position.
6485         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
6486         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
6487         (ns-frame-edges, w32-mouse-absolute-pixel-position)
6488         (x-mouse-absolute-pixel-position)
6489         (w32-set-mouse-absolute-pixel-position)
6490         (x-set-mouse-absolute-pixel-position): Declare.
6491         (frame-geometry, mouse-absolute-pixel-position)
6492         (set-mouse-absolute-pixel-position): New functions.
6493         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
6495 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
6497         Fix MinGW64 build broken by latest w32uniscribe.c changes
6498         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
6499         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
6500         (Bug#21260)
6502 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
6504         Add TeX defaults for prettify-symbol-mode
6505         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Rename
6506         from tex-prettify-symbols-alist.
6507         (tex--prettify-symbols-compose-p): New function.
6508         (tex-common-initialization): Use them as prettify-symbols-alist
6509         and prettify-symbols-compose-predicate.
6511         Generalize prettify-symbols to arbitrary modes
6512         * lisp/progmodes/prog-mode.el
6513         (prettify-symbols-default-compose-p): New function.
6514         (prettify-symbols-compose-predicate): New variable.
6515         (prettify-symbols--compose-symbol): Use it.
6517 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
6519         Don't quote symbols 'like-this' in docstrings etc.
6520         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
6521         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
6522         * lisp/allout.el (allout-add-resumptions, allout-mode):
6523         * lisp/calculator.el (calculator-operators):
6524         * lisp/cedet/data-debug.el (dd-propertize):
6525         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
6526         * lisp/cedet/semantic/analyze/debug.el:
6527         (semantic-analyzer-debug-global-miss-text):
6528         * lisp/cedet/semantic/lex-spp.el:
6529         (semantic-lex-spp-replace-or-symbol-or-keyword):
6530         * lisp/cedet/semantic/symref.el:
6531         (semantic-symref-cleanup-recent-buffers-fcn):
6532         * lisp/cedet/semantic/tag.el (semantic-tag-class):
6533         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
6534         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
6535         * lisp/gnus/pop3.el (pop3-authentication-scheme):
6536         * lisp/help-fns.el (describe-function-orig-buffer):
6537         * lisp/imenu.el (imenu--history-list):
6538         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
6539         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
6540         (feedmail-queue-default-file-slug)
6541         (feedmail-queue-buffer-file-name):
6542         * lisp/net/mairix.el (mairix-searches-mode-map):
6543         * lisp/net/newst-backend.el (newsticker-retrieval-method)
6544         (newsticker-auto-mark-filter-list):
6545         * lisp/obsolete/vi.el (vi-mode):
6546         * lisp/progmodes/cc-engine.el (c-literal-type):
6547         * lisp/progmodes/cpp.el (cpp-face):
6548         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
6549         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
6550         * lisp/progmodes/pascal.el (pascal-auto-lineup):
6551         * lisp/progmodes/prog-mode.el (prog-widen):
6552         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
6553         (verilog-auto-lineup, verilog-auto-reset-widths)
6554         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
6555         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
6556         (flyspell-maybe-correct-doubling):
6557         * lisp/textmodes/table.el (table-justify, table-justify-cell)
6558         (table-justify-row, table-justify-column, table-insert-sequence)
6559         (table--justify-cell-contents):
6560         * lisp/url/url-auth.el (url-get-authentication):
6561         * lisp/window.el (display-buffer-record-window):
6562         * lisp/xml.el (xml-parse-file, xml-parse-region):
6563         * src/gfilenotify.c (Fgfile_add_watch):
6564         Don't quote symbols with apostrophes in doc strings.
6565         Use asymmetric quotes instead.
6566         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
6567         Likewise for symbol in diagnostic.
6568         * lisp/image.el (image-extension-data):
6569         * lisp/register.el (frame-configuration-to-register):
6570         * src/buffer.c (syms_of_buffer):
6571         Remove bogus apostrophes after symbols.
6572         * lisp/thumbs.el (thumbs-conversion-program):
6573         Quote Lisp string values using double-quotes, not apostrophes.
6575 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
6577         Describe frame geometry and related functions in Elisp manual
6578         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
6579         (Showing Images): Update references.
6580         * doc/lispref/elisp.texi (Top): Update node listing.
6581         * doc/lispref/frames.texi (Frame Geometry): New node.  Move
6582         `Size and Position' section here.
6583         (Size Parameters): Update references.
6584         (Mouse Position): Update references and nomenclature.  Describe
6585         new functions `x-mouse-absolute-pixel-position' and
6586         `x-set-mouse-absolute-pixel-position'.
6587         * doc/lispref/windows.texi (Window Sizes): Update references.
6588         (Resizing Windows): Update references.  Move description of
6589         `fit-frame-to-buffer' here.
6590         (Coordinates and Windows): Update nomenclature and references.
6591         Describe new arguments of `window-edges'.  Comment out
6592         descriptions of `window-left-column', `window-top-line',
6593         `window-pixel-left' and `window-pixel-top'.  Describe
6594         `window-absolute-pixel-position'.
6596 2015-08-20  Alan Mackenzie  <acm@muc.de>
6598         Handling of `c-parse-state'.  Fix low level bug.
6599         progmodes/cc-engine.el (c-remove-stale-state-cache-backwards): Add
6600         "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
6602 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
6604         In `widget-color--choose-action' quit *Color* window instead of deleting it
6605         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
6606         window instead of deleting it.
6608 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
6610         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
6611         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
6612         determine whether frame has a titlebar.
6613         Suggested by Eli Zaretskii <eliz@gnu.org>
6615 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
6617         Add a prettify-symbols-alist for (La)TeX
6618         * tex-mode.el (tex-prettify-symbols-alist): New variable holding
6619         an alist suitable as prettify-symbols-alist in (La)TeX modes.
6621 2015-08-19  Alan Mackenzie  <acm@muc.de>
6623         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
6624         Fixes debbugs#21275.
6625         In Emacs >= 25, let electric-pair-mode take precedence over
6626         delete-selection-mode.
6627         delsel.el (delete-selection-uses-region-p): New function, previously a
6628         lambda expression in a property value for `self-insert-command'.
6629         (top-level) Set the `delete-selection' property of `self-insert-command'
6630         to `delete-selection-uses-region-p'.
6631         progmodes/cc-cmds.el (top-level): Give the `delete-selection' property
6632         for c-electric-\(brace\|paren\) the value
6633         `delete-selection-uses-region-p' when the latter function exists.
6635 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
6637         Fix key binding quoting in tutorial *Help*
6638         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
6639         When generating help for custom key bindings, use the user-preferred
6640         quoting style rather than hardcoding the grave style.
6642 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
6644         Improve and future-proof OTF fonts support in w32uniscribe.c
6645         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
6646         about the expected results and why the new Uniscribe APIs are not
6647         used in this function.
6648         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
6649         (ScriptGetFontFeatureTags_Proc): New function typedefs.
6650         (uniscribe_new_apis): New static variable.
6651         (uniscribe_check_features): New function, implements OTF features
6652         verification while correctly accounting for features in the list
6653         after the nil member, if any.
6654         (uniscribe_check_otf_1): New function, retrieves the features
6655         supported by the font for the requested script and language using
6656         the Uniscribe APIs available from Windows Vista onwards.
6657         (uniscribe_check_otf): If the new Uniscribe APIs are available,
6658         use them in preference to reading the font data directly.  Call
6659         uniscribe_check_features to verify that the requested features are
6660         supported, replacing the original incomplete code.
6661         (syms_of_w32uniscribe): Initialize function pointers for the new
6662         Uniscribe APIs.  (Bug#21260)
6663         (otf_features): Scan the script, langsys, and feature arrays back
6664         to front, so that the result we return has them in alphabetical
6665         order, like ftfont.c does.
6666         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
6667         New variable for debugging w32uniscribe.c code.
6669 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
6671         * isearch.el (isearch-search-fun-default): Revert a5bdb87
6672         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
6673         clause of `isearch-search-fun-default'. That lax variable does not
6674         refer to lax-whitespacing.  Related to (bug#21777).
6675         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
6676         * character-fold.el (character-fold-search): Set to nil.
6677         Default to nil for now, until someone implements proper
6678         lax-whitespacing with char-fold searching.
6680 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
6682         Fix doc-string of `help-mode-finish'.
6683         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
6685         In nsimage.m include coding.h (Bug#21292)
6686         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
6688         Move window edge functions to Elisp.
6689         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
6690         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
6691         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
6692         Move to window.el.
6693         (calc_absolute_offset): Remove.
6694         * lisp/frame.el (frame-edges): New function.
6695         * lisp/window.el (window-edges, window-pixel-edges)
6696         (window-absolute-pixel-edges): Move here from window.c.
6697         (window-body-edges, window-body-pixel-edges)
6698         (window-absolute-body-pixel-edges): Move here from window.c and
6699         rename "inside" to "body".  Keep old names as aliases.
6700         (window-absolute-pixel-position): New function.
6702 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
6704         [Gnus]: Use overlay functions directly
6705         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
6706         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
6707         (gnus-article-highlight-signature, gnus-article-extend-url-button)
6708         (gnus-article-add-button, gnus-insert-prev-page-button)
6709         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
6710         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
6711         (gnus-cite-add-face):
6712         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
6713         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
6714         (gnus-tree-recenter, gnus-highlight-selected-tree):
6715         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
6716         (gnus-summary-show-thread, gnus-summary-hide-thread)
6717         (gnus-highlight-selected-summary):
6718         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
6719         * lisp/gnus/message.el (message-fix-before-sending)
6720         (message-toggle-image-thumbnails):
6721         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
6722         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
6723         Use overlay functions directly instead of using gnus-overlay-*,
6724         message-overlay-*, and sieve-overlay-*.
6725         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
6726         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
6727         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
6728         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
6729         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
6730         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
6731         (message-overlay-get, message-overlay-put, message-overlays-in):
6732         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
6733         (sieve-overlays-at): Remove.
6735 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
6737         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version.
6738         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
6739         builds can use the declaration from the system headers.
6740         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
6741         definition of TITLEBAR_INFO.
6742         Suggested by Eli Zaretskii  <eliz@gnu.org>
6744 2015-08-19  Glenn Morris  <rgm@gnu.org>
6746         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
6748 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
6750         Use new q ‘format’ flag when fixing quotes in C
6751         * src/image.c (image_size_error): New function.  All uses of
6752         image_error with "Invalid image size ..."  changed to use it.
6753         * src/image.c (image_size_error, xbm_load_image, xbm_load)
6754         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
6755         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
6756         (imagemagick_load, svg_load, svg_load_image, gs_load)
6757         (x_kill_gs_process):
6758         * src/lread.c (load_warn_old_style_backquotes):
6759         * src/xfaces.c (load_pixmap):
6760         * src/xselect.c (x_clipboard_manager_error_1):
6761         Use %qs, not uLSQM and uRSQM.
6762         * src/syntax.c (Finternal_describe_syntax_value):
6763         Prefer Fsubstitute_command_keys to Fformat, as this lets
6764         us use AUTO_STRING.
6765         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
6766         as it's now guaranteed to be ASCII.
6767         * src/xselect.c (x_clipboard_manager_error_2):
6768         Avoid grave accent in low-level stderr diagnostic.
6770 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
6772         New q flag for ‘format’
6773         * doc/lispref/processes.texi (Sentinels):
6774         Don't hardwire grave quoting style in example.
6775         * doc/lispref/strings.texi (Formatting Strings):
6776         * etc/NEWS:
6777         Document new q flag.
6778         * src/editfns.c (Fformat): Implement it.
6780 2015-08-18  Daiki Ueno  <ueno@gnu.org>
6782         pinentry.el: Add debugging support
6783         * lisp/net/pinentry.el (pinentry-debug): New variable.
6784         (pinentry-debug-buffer): New variable.
6785         (pinentry--process-filter): Send input to the debug buffer, if
6786         `pinentry-debug' is set.
6788         pinentry.el: Improve multiline prompt
6789         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
6790         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
6791         command.
6793 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
6795         Fix multibyte confusion in diagnostics
6796         * src/print.c (print_error_message):
6797         Don't assume that the caller's name is unibyte.
6798         * src/xdisp.c (vadd_to_log):
6799         Don't assume that the formatted diagnostic is unibyte.
6801         Fix file name encodings in diagnostics
6802         Also, close some minor races when opening image files, by opening
6803         them once instead of multiple times.
6804         * src/gtkutil.c (xg_get_image_for_pixmap):
6805         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
6806         (svg_load):
6807         * src/nsimage.m (allocInitFromFile:):
6808         * src/xfns.c (xg_set_icon):
6809         Encode file name, since x_find_image_file no longer does that.
6810         * src/image.c (x_find_image_fd): New function.
6811         (x_find_image_file): Use it.  Do not encode resulting file name,
6812         since callers sometimes need it decoded.
6813         (slurp_file): File arg is now a fd, not a file name.
6814         All callers changed.  This saves us having to open the file twice.
6815         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
6816         (svg_load):
6817         Use x_find_image_fd and fdopen to save a file-open.
6818         Report file name that failed.
6819         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
6821 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
6823         Allow blink-matching-paren to jump off screen
6824         * doc/emacs/programs.texi (Matching): Mention the
6825         `blink-matching-paren' value `jump-offscreen'.
6826         * lisp/simple.el (blink-matching-paren): New possible value.
6827         (blink-matching-paren-on-screen): Clarify the docstring.
6828         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
6830         Refine the previous change
6831         * lisp/simple.el (blink-matching-open): Use minibuffer-message
6832         outside of save-excursion (bug#21286).
6834 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
6836         Rewrite and add frame geometry related functions.
6837         * src/frame.c (Fframe_position): New function.
6838         (Fset_frame_position): Rename parameters and rewrite doc-string.
6839         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
6840         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
6841         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
6842         Qtitle_bar_size.
6843         * src/nsfns.m (frame_geometry): New function.
6844         (Fx_frame_geometry): Call frame_geometry.
6845         (Fx_frame_edges): New function.
6846         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
6847         (GetTitleBarInfo_Proc): Define these so we can use the
6848         GetTitleBarInfo API.
6849         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
6850         (Fx_frame_geometry): Rewrite.
6851         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
6852         (Fx_set_mouse_absolute_pixel_position): New functions.
6853         * src/xfns.c (frame_geometry): New function.
6854         (Fx_frame_geometry): Call frame_geometry.
6855         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
6856         (Fx_set_mouse_absolute_pixel_position): New functions.
6858 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
6860         Improve Tramp's compatibility
6861         * lisp/net/tramp.el (tramp-get-method-parameter):
6862         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
6863         (tramp-adb-get-device):
6864         * lisp/net/trampver.el (tramp-repository-get-version):
6865         Use `tramp-compat-replace-regexp-in-string'.
6867 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
6869         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
6870         Encode/decode string.
6872 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
6874         Clarify what happens to match data on failure
6875         Problem reported by Ernesto Alfonso (Bug#21279).
6876         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
6877         Document more carefully what happens to match data after a failed
6878         search.
6879         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
6880         the return value is undefined if the last search failed.
6881         (Fmatch_data): Simplify doc string line 1.
6883 2015-08-18  Daiki Ueno  <ueno@gnu.org>
6885         Revert "pinentry.el: Support external passphrase cache"
6886         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
6887         pinentry.el shouldn't directly interact with the secrets service,
6888         but ask the caller to cache the passphrase.
6890 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
6892         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
6893         Message mode hooks.
6895 2015-08-17  Daiki Ueno  <ueno@gnu.org>
6897         epg.el: Make gpgconf output parsing future proof
6898         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
6899         --list-options" output.
6901         pinentry.el: Support external passphrase cache
6902         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
6903         (pinentry--allow-external-password-cache): New local variable.
6904         (pinentry--key-info): New local variable.
6905         (secrets-enabled, secrets-search-items, secrets-get-secret):
6906         Declare.
6907         (pinentry--send-passphrase): New function, split from
6908         `pinentry--process-filter'.
6909         (pinentry--process-filter): Use secrets.el to retrieve passphrase
6910         from login keyring.
6912         pinentry.el: Popup window for multiline prompt
6913         * lisp/net/pinentry.el (pinentry): New custom group.
6914         (pinentry-popup-prompt-window): New user option.
6915         (pinentry-prompt-window-height): New user option.
6916         (pinentry--prompt-buffer): New variable.
6917         (pinentry-prompt-mode-map): New variable.
6918         (pinentry-prompt-mode): New function.
6919         (pinentry--prompt): New function.
6920         (pinentry--process-filter): Use `pinentry--prompt' instead of
6921         `read-passwd' and `y-or-n-p'.
6923 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
6925         message.el: Silent the byte compiler
6926         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
6927         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
6928         (message-delete-overlay, message-window-inside-pixel-edges):
6929         Declare before using.
6931         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
6932         (message-window-inside-pixel-edges): XEmacs compatible functions.
6934 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6936         * message.el (message-toggle-image-thumbnails): New command.
6938 2015-08-17  Noah Friedman  <friedman@splode.com>
6940         (blink-matching-open): Restore point before calling minibuffer-message.
6942 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
6944         * lisp/play/dunnet.el: Update version number in header (now
6945         matches help).
6947 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
6949         Curved quotes in --batch diagnostics in non-UTF-8
6950         When run with --batch, check that curved quotes are compatible with
6951         the system locale before outputting them in diagnostics.
6952         Problem reported by Eli Zaretskii in:
6953         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
6954         * lisp/startup.el (command-line): Set internal--text-quoting-flag
6955         after the standard display table is initialized.
6956         * src/doc.c (default_to_grave_quoting_style): New function.
6957         (text_quoting_style): Use it.
6958         (text_quoting_flag): New static var, visible to Lisp as
6959         internal--text-quoting-flag.
6960         * src/emacs.c: Include <wchar.h> if available.
6961         (using_utf8): New function.
6962         (main): Use it to initialize text_quoting_flag.
6963         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
6964         Don't define, as it's not needed and it clashes with wchar.h.
6966 2015-08-17  Glenn Morris  <rgm@gnu.org>
6968         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
6969         from makeinfo about spurious "Note:" cross-reference, and for grammar.
6971 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
6973         Minor change in variable initialization on MS-Windows
6974         * src/w32fns.c <after_dead_key>: Initialize to -1.
6975         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
6976         non-zero.
6978         Fix a bug with LWindow key remapping on MS-Windows
6979         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
6981 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
6983         Improve fontset support for latest OTF script tags
6984         * lisp/international/fontset.el (otf-script-alist): Add some
6985         missing script tags.
6986         (setup-default-fontset): Include settings for v2 versions of the
6987         script tags used by some modern OTF/TTF fonts.
6989 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
6991         Spelling fixes
6993 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
6995         Use curved quotes in core elisp diagnostics
6996         In the core elisp files, use curved quotes in diagnostic formats,
6997         so that they follow user preference as per ‘text-quoting-style’
6998         rather than being hard-coded to quote `like this'.
6999         * lisp/abbrev.el (expand-region-abbrevs):
7000         * lisp/button.el (button-category-symbol, button-put)
7001         (make-text-button):
7002         * lisp/cus-start.el:
7003         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
7004         (custom--sort-vars-1, load-theme):
7005         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
7006         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
7007         (cl-generic-generalizers):
7008         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
7009         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
7010         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
7011         (advice--make, define-advice):
7012         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
7013         * lisp/emacs-lisp/timer.el (timer-event-handler):
7014         * lisp/env.el (setenv):
7015         * lisp/facemenu.el (facemenu-add-new-face)
7016         (facemenu-add-new-color):
7017         * lisp/faces.el (face-documentation, read-face-name)
7018         (face-read-string, read-face-font, face-spec-set-match-display)
7019         (read-color, x-resolve-font-name):
7020         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
7021         (set-auto-mode, hack-local-variables)
7022         (hack-one-local-variable--obsolete)
7023         (dir-locals-set-directory-class, write-file)
7024         (basic-save-buffer, delete-directory, copy-directory)
7025         (recover-session, recover-session-finish, insert-directory)
7026         (file-modes-char-to-who, file-modes-symbolic-to-number)
7027         (move-file-to-trash):
7028         * lisp/font-lock.el (font-lock-fontify-buffer):
7029         * lisp/format.el (format-write-file, format-find-file)
7030         (format-insert-file):
7031         * lisp/frame.el (get-device-terminal, select-frame-by-name):
7032         * lisp/fringe.el (fringe--check-style):
7033         * lisp/help.el (describe-minor-mode-from-indicator):
7034         * lisp/image.el (image-type):
7035         * lisp/international/fontset.el (x-must-resolve-font-name):
7036         * lisp/international/mule-cmds.el (prefer-coding-system)
7037         (select-safe-coding-system-interactively)
7038         (select-safe-coding-system, activate-input-method)
7039         (toggle-input-method, describe-current-input-method):
7040         * lisp/international/mule-conf.el (code-offset):
7041         * lisp/mouse.el (minor-mode-menu-from-indicator):
7042         * lisp/replace.el (query-replace-read-from)
7043         (occur-after-change-function, occur-1):
7044         * lisp/scroll-bar.el (scroll-bar-columns):
7045         * lisp/simple.el (execute-extended-command)
7046         (undo-outer-limit-truncate, compose-mail, set-variable)
7047         (choose-completion-string, define-alternatives):
7048         * lisp/startup.el (site-run-file, tty-handle-args, )
7049         (command-line, command-line-1):
7050         * lisp/subr.el (noreturn, define-error, add-to-list)
7051         (read-char-choice):
7052         * lisp/term/common-win.el (x-handle-xrm-switch)
7053         (x-handle-name-switch, x-handle-args):
7054         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
7055         Use curved quotes in diagnostics.
7056         * lisp/international/mule.el (find-auto-coding):
7057         Use " to quote in a diagnostic, to be consistent with the rest of
7058         this file.
7060         Convert lisp/term/x-win.el to UTF-8
7061         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
7062         runtime behavior, and the file is multilingual so compile-time
7063         appearance shouldn't be an issue.
7064         * admin/notes/unicode: Document this.
7066 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
7068         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
7069         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
7070         issues and comments, bug#943.
7071         (verilog-type-font-keywords): Cycle delay operators like ##1 and
7072         ##[0:$] are now highlighted in their entirety similarly to the #
7073         delay-control operator.  Likewise, the followed-by operators #-#
7074         and #=# are no longer partially highlighed.
7075         (verilog-backward-syntactic-ws-quick)
7076         (verilog-skip-backward-comments): Minor performance improvements
7077         to buffer traversal functions for reduced latency.
7078         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
7079         keyword 'final' follows 'assert/assume/cover', then it is part of
7080         a deferred immediate assertion item and should not be treated as a
7081         final construct for indentation.  Reported by Yuri Sugihara.
7082         (verilog-do-indent): Virtual task/function/class definition lines
7083         should not be considered as declarations.  Reported by Enzo Chi.
7084         (verilog-do-indent): Do not falsely indent to '=' of
7085         property/sequence operators on subsequent lines of a multi-line
7086         statement.
7087         (verilog-assignment-operator-re): Fix '!==' operator and add
7088         support for '<->', ':/', '#-#', and '#=#' operators.
7089         (verilog-calculate-indent, verilog-label-be): Enable
7090         case-sensitive regular expression parsing when looking for
7091         keywords.
7092         (verilog-calc-1): Detect 'pure virtual method' declarations which
7093         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
7094         (verilog-backward-ws&directives): When moving back to the start of
7095         a line and the preceeding line ended with an escaped-newline, then
7096         jump up one line.  This properly consumes a multi-line
7097         pre-processor directive.  Reported by Kaushal Modi.
7098         (verilog-dpi-import-export-re, verilog-extended-complete-re)
7099         (verilog-calc-1): Teach verilog-mode to properly indent after a
7100         DPI import/export statement that resides outside of a module.
7101         Reported by Kaushal Modi.
7102         (verilog-extended-complete-re): Update regexp to match both
7103         "DPI-C" and "DPI".  Reported by Kaushal Modi.
7105 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
7107         substitute-command-keys a few more doc strings
7108         * lisp/allout.el (outlineify-sticky):
7109         * lisp/files.el (hack-one-local-variable--obsolete):
7110         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
7111         Use substitute-command-keys on some doc strings so that
7112         they don't use hard-coded key bindings or quoting styles.
7114         Fix quoting in Fformat calls
7115         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
7116         (xpm_load, xpm_load_image, pbm_load, png_load_body)
7117         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
7118         (imagemagick_load, svg_load, svg_load_image, gs_load)
7119         (x_kill_gs_process):
7120         * src/lread.c (load_warn_old_style_backquotes):
7121         * src/xfaces.c (load_pixmap):
7122         * src/xselect.c (x_clipboard_manager_error_1):
7123         Quote diagnostics according to user preference when calling
7124         Fformat or its derivatives.
7126 2015-08-15  Glenn Morris  <rgm@gnu.org>
7128         * admin/admin.el (set-version, set-copyright): Remove deleted files.
7130 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
7132         Allow describe-function helpers to access buffer-local values.
7133         This will be used by cedet/mode-local.el `describe-mode-local-override'
7134         on `help-fns-describe-function-functions' in upstream CEDET.
7135         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
7136         `describe-function'.
7137         (describe-function): Bind it, save it on the help xref stack.
7139         Handle pulse-background being nil
7140         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
7141         pulse-background, handle it being nil.
7143 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
7145         Fix "\`" confusion in Lisp strings
7146         * admin/authors.el (authors-canonical-author-name):
7147         Fix typo by using "\\`" not "\`" in string RE.
7148         * lisp/obsolete/complete.el (PC-complete-as-file-name):
7149         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
7150         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
7151         Use plain "`", not the equivalent-but-confusing "\`", in strings.
7152         * lisp/textmodes/texinfmt.el: Fix comment likewise.
7154 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
7156         Remove 'nt/zipdist.bat' (no longer used)
7157         * nt/zipdist.bat: Remove -- no longer used.
7159 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
7161         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
7162         rather than "getenforce".
7163         (tramp-sh-handle-set-file-selinux-context): Do not
7164         cache SELinux context if not all context components are given.
7166 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
7168         Add doc strings to 2 help-mode.el functions
7169         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
7170         strings.  (Bug#21263)
7172         Remove files used by the old MS-Windows specific build procedure
7173         * admin/unidata/makefile.w32-in:
7174         * doc/emacs/makefile.w32-in:
7175         * doc/lispintro/makefile.w32-in:
7176         * doc/lispref/makefile.w32-in:
7177         * doc/misc/makefile.w32-in:
7178         * leim/makefile.w32-in:
7179         * lib-src/makefile.w32-in:
7180         * lib/makefile.w32-in:
7181         * lisp/makefile.w32-in:
7182         * nt/INSTALL.OLD:
7183         * nt/config.nt:
7184         * nt/emacs-src.tags:
7185         * nt/envadd.bat:
7186         * nt/gmake.defs:
7187         * nt/makefile.w32-in:
7188         * nt/multi-install-info.bat:
7189         * nt/nmake.defs:
7190         * nt/paths.h:
7191         * src/makefile.w32-in: Files deleted.
7192         * nt/configure.bat: Remove everything except the blurb about the
7193         new build procedure.
7194         * make-dist: Remove references to makefile.w32-in in various
7195         directories, and to files in nt/ that were deleted.
7196         * etc/NEWS: Mention the fact that the files were dropped.
7198 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
7200         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
7201         (Bug#21248)
7203 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
7205         Default to inotify instead of gfile
7206         * configure.ac (with_file_notification): Fix typo that
7207         prevented suppression of file notification if HAVE_NS.
7208         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
7209         with_file_notification is 'yes' (Bug#21241).
7210         * etc/NEWS: Mention this.
7212         Fix broken URLs for ISO-IR
7213         * doc/emacs/mule.texi (Charsets):
7214         * lisp/international/mule-conf.el:
7215         Fix broken URL (Bug#21248).
7217         Low-level diagnostics now use ‘text-quoting-style’
7218         * src/doprnt.c (doprnt):
7219         Format ` and ' as per ‘text-quoting-style’.
7220         * src/xdisp.c (vmessage, message): Mention that the format should
7221         not contain ` or '.
7223         Prefer ‘format’ to ‘substitute-command-keys’
7224         * src/character.h (uLSQM, uRSQM): Move here ...
7225         * src/doc.c (uLSQM, uRSQM): ... from here.
7226         * src/doc.c (Fsubstitute_command_keys):
7227         * src/syntax.c (Finternal_describe_syntax_value):
7228         * lisp/cedet/mode-local.el (mode-local-print-binding)
7229         (mode-local-describe-bindings-2):
7230         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
7231         * lisp/cus-theme.el (describe-theme-1):
7232         * lisp/descr-text.el (describe-text-properties-1, describe-char):
7233         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
7234         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
7235         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
7236         * lisp/emacs-lisp/package.el (describe-package-1):
7237         * lisp/faces.el (describe-face):
7238         * lisp/help-fns.el (help-fns--key-bindings)
7239         (help-fns--compiler-macro, help-fns--parent-mode)
7240         (help-fns--obsolete, help-fns--interactive-only)
7241         (describe-function-1, describe-variable):
7242         * lisp/help.el (describe-mode):
7243         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
7244         to implement quoting style.  This generally makes the code simpler.
7246         Extend ‘format’ to translate curved quotes
7247         This is a followup to the recent doc string change, and deals with
7248         diagnostics and the like.  This patch is more conservative than
7249         the doc string change, in that the behavior of ‘format’ changes
7250         only if its first arg contains curved quotes and the user prefers
7251         straight or grave quotes.  (Come to think of it, perhaps we should
7252         be similarly conservative with doc strings too, but that can wait.)
7253         The upside of this conservatism is that existing usage is almost
7254         surely unaffected.  The downside is that we'll eventually have to
7255         change Emacs's format strings to use curved quotes in places where
7256         the user might want curved quotes, but that's a simple and
7257         mechanical translation that I'm willing to do later.  (Bug#21222)
7258         * doc/lispref/help.texi (Keys in Documentation):
7259         Move description of text-quoting-style from here ...
7260         * doc/lispref/strings.texi (Formatting Strings):
7261         ... to here, and describe new behavior of ‘format’.
7262         * etc/NEWS: Describe new behavior.
7263         * lisp/calc/calc-help.el (calc-describe-thing):
7264         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
7265         * lisp/info.el (Info-find-index-name):
7266         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
7267         of recently-added curved quotes.
7268         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
7269         Move from here ...
7270         * src/lisp.h: ... to here.
7271         * src/doc.c (text_quoting_style): New function.
7272         (Fsubstitute_command_keys): Use it.
7273         * src/editfns.c (Fformat): Implement new behavior.
7274         * src/lisp.h (enum text_quoting_style): New enum.
7276 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
7278         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
7279         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
7281 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
7283         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
7284         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
7286 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
7288         Flush file properties in Tramp
7289         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
7290         (tramp-sh-handle-set-file-times):
7291         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
7292         (tramp-adb-handle-set-file-times): Flush the file properties of
7293         the directory.
7295 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
7297         * doc/emacs/misc.text (Amusements): Fixed typo.
7299 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
7301         Don't miss warnings about removing string text properties while dumping
7302         * src/alloc.c (purecopy): Warn about removing a string's text
7303         properties even when the same string was already pure-copied
7304         earlier.
7305         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
7306         (elisp--xref-format-extra): Fix the commentary.
7308 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
7310         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049)
7312 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
7314         * lisp/progmodes/compile.el: Assume 8-wide TABs (bug#21038)
7315         * lisp/progmodes/compile.el: Use lexical-binding.
7316         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
7318 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
7320         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
7321         * lisp/uniquify.el: Remove redundant `:group's.
7323 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
7325         * lisp/net/tramp-adb.el
7326         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
7327         result to prevent modification of the tramp-cache by side effects.
7328         Use the correct cache key.
7330 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
7332         Make add_to_log varargs
7333         * src/alloc.c (run_finalizer_handler):
7334         * src/charset.c (load_charset_map_from_vector):
7335         * src/nsimage.m (ns_load_image):
7336         * src/xfaces.c (load_pixmap, load_color2):
7337         Simplify, now that add_to_log has a variable number of args.
7338         * src/image.c (image_error): Take a variable number of args.
7339         Callers simplified.
7340         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
7341         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
7342         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
7343         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
7345         Optional args for holiday-greek-orthodox-easter
7346         * etc/NEWS: Document this.
7347         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
7348         Add optional args N and STRING, mimicking the API and code of
7349         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
7351 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
7353         xref-find-definitions: Exclude more generic function items.
7354         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method): Add doc string.
7355         (cl--generic-find-defgeneric-regexp): New.
7356         (find-function-regexp-alist): Add it.
7357         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
7358         elisp-mode.el, change to search for ";;; Code:"
7359         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
7360         (find-function-regexp-alist): Add them.
7361         * lisp/progmodes/elisp-mode.el:
7362         (elisp--xref-format, elisp--xref-format-extra): Change back to defvar due
7363         to bug#21237.
7364         (elisp--xref-find-definitions): Exclude co-located default methods for
7365         generic functions. Also exclude implicitly declared defgeneric.
7366         (elisp--xref-find-definitions): Handle C source properly. Exclude minor
7367         mode variables defined by 'define-minor-mode'.
7368         * test/automated/elisp-mode-tests.el: Declare generic functions, add
7369         tests for them.
7370         (xref-elisp-test-run): Fix bug.
7371         (emacs-test-dir): Improve initial value.
7372         (find-defs-defun-defvar-el): Don't expect defvar.
7373         (find-defs-feature-el): Match change to find-feature-regexp.
7375 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
7377         Improve warning about purecopy of strings with properties
7378         * src/alloc.c (purecopy): Show the offending string with the
7379         warning about removing its text properties.
7381 2015-08-12  Alan Mackenzie  <acm@muc.de>
7383         Introduce new macros to cover Emacs's new names in cl-lib.el.
7384         This also eliminates `mapcan' warnings in XEmacs.
7385         progmodes/cc-defs.el (c--mapcan-status): new variable to characterise
7386         [X]Emacs versions.
7387         (top-level): Require either 'cl or 'cl-lib, depending on
7388         c--mapcan-status.
7389         Change this back to cc-external-require from an eval-when-compile
7390         require.
7391         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
7392         (c--delete-duplicates): New macros which expand into either old or new
7393         names.
7394         (c-make-keywords-re, c-lang-defconst, c-lang-const) Use the new macros
7395         rather than the old names.
7396         progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan rather
7397         than mapcan.
7398         progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
7399         progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
7400         depending on c--mapcan-status.
7401         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
7402         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
7403         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
7404         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
7405         (c-decl-block-key, c-keywords, c-keywords-obarray)
7406         (c-regular-keywords-regexp, c-primary-expr-regexp)
7407         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
7408         (c-known-type-key, c-nonlabel-token-key)
7409         (c-make-init-lang-vars-fun): Use the new macros rather than the old
7410         names.
7412 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
7414         loadhist.el (read-feature): Conform to completing-read
7415         * lisp/loadhist.el (read-feature): According to `completing-read'
7416         documentation, if collection is a list, then it must be a list of
7417         strings, not a list of symbols like before.
7419 2015-08-12  David Kastrup  <dak@gnu.org>
7421         Deal gracefully with up-events (Bug#19746)
7422         * keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
7423         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
7424         those may easily be injected by user-level Lisp code.
7425         (read_key_sequence): Discard unbound up-events like unbound
7426         down-events: they are even more likely only relevant for special
7427         purposes.
7428         While Emacs will not produce up-events on its own currently (those are
7429         converted to drag or click events before being converted to
7430         Lisp-readable structures), the input queue can be made to contain them
7431         by synthesizing events to `unread-command-events'.  Emacs should deal
7432         consistently with such events.
7434 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
7436         Fix display of thin lines whose newline has line-height property of t
7437         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
7438         and descent values of non-empty glyph rows, since they could have
7439         forced low values deliberately.  (Bug#21243)
7441 2015-08-12  Richard Stallman  <rms@gnu.org>
7443         Offer to combine multiple To or CC fields.
7444         * sendmail.el (mail-combine-fields): New function.
7445         (mail-send): Call 'mail-combine-fields'.
7447         Don't decrypt encrypted files.
7448         * mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
7450         Handle encrypted mbox files.
7451         * rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt the mbox
7452         file if necessary.
7454         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
7455         * rmail.el (rmail-epa-decrypt-1): New subroutine.
7456         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
7457         In a mime message, reenable Mime and show the parts that
7458         were shown before.
7459         Add keyword "decrypt" if anything decrypted.
7461         epa-inhibit inhibits auto-recognition of .gpg files
7462         * lisp/epa-file.el (epa-inhibit): New variable.
7463         (epa-file-handler): Check epa-inhibit.
7465 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
7467         * emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
7469 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
7471         Respect python.el imenu when semantic-mode is off
7472         Fixes debbugs:21220
7473         * lisp/cedet/semantic/wisent/python.el: Do not force
7474         wisent-python-default-setup on python-mode-hook.
7476 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
7478         Give names to Unicode code points in C code
7479         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
7480         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
7481         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
7482         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
7483         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
7484         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
7485         (OBJECT_REPLACEMENT_CHARACTER):
7486         New named constants for Unicode code points.
7487         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
7488         * src/composite.c (char_composable_p):
7489         * src/lread.c (readevalloop, read1):
7490         * src/xdisp.c (get_next_display_element):
7491         Use them.
7492         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
7493         Remove; now in character.h.
7495 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
7497         elisp--xref-find-definitions handle cl-defstuct default constructor
7498         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
7499         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
7500         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
7501         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
7502         from xref-elisp-test for ease of debugging.
7503         (xref-elisp-deftest): Rename from xref-elisp-test.
7504         (find-defs-constructor): New test.
7505         (find-defs-defgeneric-el): Match batch test config.
7506         (compile): Required for find-defs compilation-minor-mode test.
7507         (find-defs-defvar-el): Match code change.
7508         (find-defs-face-el): Match code change.
7509         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
7510         Improve doc string.
7512 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
7514         * lisp/replace.el (perform-replace): Document `replacements'.
7515         (perform-replace): Move the description of the format of `replacements'
7516         from the body's comment to the doc string.
7518 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
7520         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
7521         sequence.  Recent adb version send initial escape sequences, even
7522         when terminal type is set to TERM=dumb.
7524 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
7526         Rewrite elisp--xref-find-definitions to handle many more cases; add tests.
7527         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
7528         Function deleted.
7529         (elisp--xref-format-cl-defmethod): New defconst.
7530         (find-feature-regexp, find-alias-regexp): New defcustoms.
7531         (elisp--xref-make-xref): New function.
7532         (elisp--xref-find-definitions): Rewrite using the above, handle many
7533         more cases.  Always output all available definitions.
7534         (xref-location-marker): No need for special cases.
7535         * test/automated/elisp-mode-tests.el: Add more tests of
7536         elisp--xref-find-definitions, improve current tests.
7538 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
7540         Fix recording of events pushed onto unread-command-events
7541         * src/keyboard.c (read_char): Make sure events read from
7542         unread-command-events and unread-post-input-method-events are
7543         always recorded by record_char.  Reported by David Kastrup
7544         <dak@gnu.org>, see
7545         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
7547 2015-08-10  Samer Masterson  <samer@samertm.com>
7549         Set file buffer as current for "--file"
7550         * lisp/startup.el (command-line-1): Set file buffer as current before
7551         it is displayed so it can be used with options like "--eval".
7552         (Bug#21095)
7554 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
7556         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
7557         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
7558         after setting LC_ALL to the desired locale, to avoid affecting how
7559         numbers are read and printed.  (Bug#21223)
7561 2015-08-10  Alan Mackenzie  <acm@muc.de>
7563         Fix "Invalid search bound (wrong side of point)" in fontification
7564         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
7565         an initialization expression, check point is not beyond the
7566         fontification limit.
7568 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
7570         Fix DPI calculation when Xft/DPI is default
7571         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
7572         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
7573         Remove unnecessary cast while we're in the neighborhood.
7575 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
7577         Add project-vc-search-path and project-vc-ignores
7578         * lisp/progmodes/project.el (project-vc): New group.
7579         (project-vc-search-path, project-vc-ignores): New variables.
7580         (project--value-in-dir): Utility function.
7581         (project-search-path, project-ignores): Use them.
7582         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
7583         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
7585 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
7587         Fix some minor quoting issues with grave accent
7588         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
7589         Remove redundant quotes.
7590         * src/doc.c (uLSQM, uRSQM): New macros.
7591         * src/doc.c (Fsubstitute_command_keys):
7592         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
7593         preference for quotes rather than hardcoding the ‘grave’ style.
7594         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
7595         (re_match_2_internal) [DEBUG]: In debugging output, quote C
7596         strings with "...", not `...'.
7598         ChangeLog.2 ignores remote-tracking merges
7599         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
7600         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
7601         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
7603 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
7605         Use kpsewhich in ffap-latex-mode, if available
7606         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
7607         (ffap-latex-mode): Use kpsewhich if available.
7609         ffap: disallow braces in filenames for tex modes
7610         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
7611         braces in tex-related modes.
7613         Remove useless backslashes from ffap-string-at-point-mode-alist
7614         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
7615         misleading backslashes from default value.
7617         Augment docstring of ffap-string-at-point-mode-alist
7618         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
7619         and END are handled.
7621 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
7623         Remove no-op calls to substitute-command-keys
7624         * lisp/org/org-src.el (org-edit-src-code)
7625         (org-edit-fixed-width-region):
7626         * lisp/simple.el (completion-setup-function):
7627         Remove calls to substitute-command-keys that always just return
7628         their argument.
7630 2015-08-09  Daiki Ueno  <ueno@gnu.org>
7632         Utilize `quit-window' in epa.el
7633         * epa.el (epa-exit-buffer-function): Set to `quit-window'.
7634         (Bug#21210)
7636 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
7638         Fix link to source code in help window
7639         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
7640         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
7641         'No longer include timestamp in header of .elc files'.  Add code
7642         that will return .el source file in load-path.
7644 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
7646         * isearch.el (isearch-search-fun-default): (Bug#21164)
7647         Respect `isearch-lax-whitespace' when searching through
7648         `isearch-word'.
7650 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
7652         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
7654         * org.el: Fix up some lexical scoping warnings, and use dolist
7655         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
7656         (org-set-regexps-and-options, org-assign-fast-keys)
7657         (org-contextualize-keys, org-contextualize-validate-key)
7658         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
7659         (org-find-olp, org-find-exact-heading-in-directory)
7660         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
7661         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
7662         (org-replace-escapes): Use dolist.
7663         (org-mode): Optimize away XEmacs-only code.
7664         (org-refile-get-targets): Remove unused var `f'.
7665         (org-fast-todo-selection): Remove unused var `e'.
7666         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
7667         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
7668         (org-format-latex): Use dolist.  Remove unused var `e'.
7669         (org-toggle-heading): Access vars lexically rather than dynamically.
7670         (org-backward-sentence, org-forward-sentence, org-meta-return)
7671         (org-kill-line): Mark arg as unused.
7672         (org-submit-bug-report): Silence compiler warning.
7673         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
7674         (org-get-cursor-date): Remove unused var `tm'.
7675         (org-comment-or-uncomment-region): Use standard name `_'.
7676         (reftex-docstruct-symbol, reftex-cite-format): Declare to
7677         silence byte-compiler.
7678         (org-reftex-citation): Add `org--' prefix to dynamically scoped
7679         `rds' var.
7681 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
7683         Electric quote if coding is undecided or no conv
7684         * lisp/electric.el (electric--insertable-p): Also say that a
7685         string is insertable if the buffer file coding system is undecided
7686         or uses no conversion, as curved quotes will work in either case.
7688         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
7690 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
7692         Fix overlay string display regressions introduced in Emacs 24.5
7693         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
7694         buffer position, if we move the iterator to a new position as
7695         result of jumping over text covered by a "replacing" display
7696         property.
7697         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
7699         Support recovery from C stack overflow on MS-Windows
7700         * src/w32fns.c (w32_reset_stack_overflow_guard)
7701         (stack_overflow_handler): New functions for handling C stack
7702         overflow exceptions.
7703         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
7704         specially, and zero out except_addr if we do.
7705         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
7706         mode.
7707         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
7708         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
7709         the MinGW build, but the code guarded by that is for Posix hosts.
7710         * src/keyboard.c (command_loop) [WINDOWSNT]: Call
7711         w32_reset_stack_overflow_guard.
7712         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
7713         (sigsetjmp): New macro.
7714         (w32_reset_stack_overflow_guard): Declare the prototype.
7715         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
7717 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
7719         Improve error signalling for seq-subseq
7720         * lisp/seq.el (seq-subseq): The existing behaviour is to error
7721         when indexes are too large, but to silently ignore numbers which
7722         are too negative for lists.  String and vector handling errors in
7723         both cases.  This has been regularized.  Error signaling behavior
7724         has been explicitly added to the doc string.
7726         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
7727         therefore also impacted by this change.  Update the doc string
7728         to reflect this.
7730         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
7731         added for these exceptional cases, as well as one non exceptional
7732         base case.
7734 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
7736         Improve error checking in tramp-adb.el
7737         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
7738         Improve error checking.  "ls -l" on Android in Enforcing mode can
7739         print "lstat './FILENAME failed: Permission denied".
7741 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
7743         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
7744         non-struct vectors.
7746 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
7748         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
7749         * lisp/window.el: Fix typo that broke build.
7750         (display-buffer--action-function-custom-type): Add
7751         `display-buffer-use-some-frame'.
7752         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
7754         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
7755         * lisp/window.el (display-buffer-use-some-frame): Add support for
7756         'inhibit-same-window in alist.
7757         * doc/windows.texi (display-buffer-use-some-frame): Doc support for
7758         'inhibit-same-window in alist.
7760 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
7762         Avoid infinite loop in display of invisible text in strings
7763         * src/xdisp.c (handle_invisible_prop): If the next change of
7764         invisibility spec does not mean the beginning of a visible text,
7765         update the string position from which to start the search for the
7766         next invisibility change.  This avoids an infinite loop when we
7767         have more than one invisibility spec that are made inactive by
7768         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
7769         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
7770         for the situation that caused bug #21200.
7772 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7774         * lisp/emacs-lisp/package.el: Simplify describe-package-1
7775         (package-help-section-name-face): New face.
7776         (package--print-help-section): New function.
7777         (describe-package-1): Refactor section printing.
7778         (package-make-button): Use face instead of font-lock-face, which
7779         doesn't work on buttons.
7781         * lisp/emacs-lisp/package.el: Define custom faces
7782         (package-name-face, package-description-face)
7783         (package-status-built-in-face, package-status-external-face)
7784         (package-status-available-face, package-status-new-face)
7785         (package-status-held-face, package-status-disabled-face)
7786         (package-status-installed-face, package-status-dependency-face)
7787         (package-status-unsigned-face, package-status-incompat-face)
7788         (package-status-avail-obso-face): New faces.
7789         (package-menu--print-info-simple): Use them.
7791 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
7793         Fix some confusion with ‘format’
7794         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
7795         (allout-graphics-modification-handler):
7796         Protect arbitrary string in a format context with "%s" format.
7797         * lisp/avoid.el:
7798         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
7799         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
7800         * lisp/erc/erc-button.el (erc-button-beats-to-time):
7801         * lisp/gnus/message.el (message-send-form-letter):
7802         * lisp/org/ob-core.el (org-babel-check-evaluate)
7803         (org-babel-confirm-evaluate):
7804         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
7805         * lisp/org/ox-latex.el (org-latex-compile):
7806         * lisp/org/ox-man.el (org-man-compile):
7807         * lisp/org/ox-odt.el (org-odt-template):
7808         * lisp/org/ox-texinfo.el (org-texinfo-compile):
7809         * lisp/progmodes/prolog.el (prolog-help-info)
7810         (prolog-view-predspec):
7811         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
7812         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
7813         * lisp/textmodes/rst.el (rst-replace-lines):
7814         Change (message (format ...)) to (message ...), and likewise
7815         for ‘error’.  This lessens the probability of confusion when the
7816         output of ‘format’ contains ‘%’.
7818 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
7820         * lisp/replace.el (replace-character-fold): Default to nil.
7822         * lisp/character-fold.el: Fix lax whitespace.
7823         (character-fold-table): Don't make space match other whitespace chars.
7824         (character-fold-to-regexp): Simplify lax behavior.
7826 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
7828         Preserve window point in xref-find-definitions-other-window
7829         Fix the problem reported by Ingo Logmar in
7830         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
7831         * lisp/progmodes/xref.el (xref--goto-char): Extract from
7832         xref--goto-location.
7833         (xref--pop-to-location): Use it. Replace xref--goto-location with
7834         a direct xref-location-marker call.
7835         (xref--show-location): Likewise.
7836         (xref--display-position): Use xref--goto-char.
7838         * lisp/progmodes/project.el: Add a paragraph to the front matter.
7840 2015-08-04  David Kastrup  <dak@gnu.org>
7842         Do not overwrite preexisting contents of unread-command-events
7843         * lisp/vc/emerge.el (emerge-show-file-name):
7844         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
7845         (vhdl-comment-insert, vhdl-hooked-abbrev):
7846         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
7847         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
7848         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
7849         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
7850         * lisp/obsolete/vip.el (vip-escape-to-emacs)
7851         (vip-prefix-arg-value, vip-prefix-arg-com):
7852         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
7853         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
7854         (quail-tibkey-update-translation):
7855         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
7856         * lisp/leim/quail/lao.el (quail-lao-update-translation):
7857         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
7858         (quail-japanese-self-insert-and-switch-to-alpha):
7859         * lisp/leim/quail/hangul.el (hangul2-input-method)
7860         (hangul3-input-method, hangul390-input-method):
7861         * lisp/language/hanja-util.el (hangul-to-hanja-char):
7862         * lisp/international/robin.el (robin-input-method):
7863         * lisp/international/quail.el (quail-start-translation)
7864         (quail-start-conversion):
7865         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
7866         (gnus-article-describe-key-briefly):
7867         * lisp/eshell/em-hist.el (eshell-list-history):
7868         * lisp/term.el (term-dynamic-list-input-ring)
7869         (term-dynamic-list-completions):
7870         * lisp/subr.el (momentary-string-display):
7871         * lisp/simple.el (read-quoted-char):
7872         * lisp/pcomplete.el (pcomplete-show-completions):
7873         * lisp/kmacro.el (kmacro-repeat-on-last-key):
7874         * lisp/info.el (Info-summary):
7875         * lisp/ehelp.el (electric-help-command-loop):
7876         * lisp/ebuff-menu.el (electric-buffer-list)
7877         (Electric-buffer-menu-exit):
7878         * lisp/double.el (double-translate-key):
7879         * lisp/comint.el (comint-dynamic-list-input-ring)
7880         (comint-dynamic-list-completions): Do not overwrite preexisting
7881         contents of `unread-command-events' when putting new events into
7882         it.
7884 2015-08-04  Daniel Colascione  <dancol@dancol.org>
7886         Improve ansi-color filtering of unrecognized escape sequences
7887         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
7888         escape sequences.
7889         (ansi-color-filter-apply, ansi-color-apply): Filter out
7890         unrecognized escape sequences.
7892 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
7894         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
7895         definitions to `easy-menu-define', improve a couple to account for
7896         async, and add a couple of new commands.
7898 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
7900         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
7902 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
7904         Add new 'calendar-weekend-days' option
7905         Make the days receiving the 'calendar-weekend-header' face freely
7906         customizable, as they differ by region/culture.
7907         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
7908         new variable.
7909         * lisp/calendar/calendar.el (calendar-generate-month): New variable
7910         calendar-weekend-days to customize day header fontification.
7912 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
7914         Redo text-quoting-style variable
7915         Rename help-quote-translation to text-quoting-style,
7916         and use symbols rather than characters as values.
7917         This follows suggestions along these lines by Alan Mackenzie in:
7918         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
7919         and by Drew Adams in:
7920         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
7921         * doc/lispref/help.texi (Keys in Documentation)
7922         * etc/NEWS:
7923         * lisp/cus-start.el (standard):
7924         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
7925         Document and/or implement the new behavior instead of the old.
7926         (syms_of_doc): New symbols 'grave' and 'straight'.
7928 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
7930         nnimap.el: Use IMAP MOVE extension if available
7931         * lisp/gnus/nnimap.el (nnimap-request-move-article)
7932         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
7933         Use MOVE extension if available.
7935         nnimap.el: Explicitly ask for server capabilities
7936         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
7937         capabilities will be returned in the login-result.
7939 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
7941         Treat help strings like other doc strings
7942         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
7943         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
7944         substitute-command-keys.
7945         * src/keyboard.c (show_help_echo, parse_menu_item): Call
7946         substitute-command-keys on the help string before displaying it.
7948         Also mention "curly quotes"
7949         See Drew Adams's email in:
7950         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
7951         * doc/lispref/help.texi (Keys in Documentation):
7952         Add index entry "curly quotes".
7953         * etc/NEWS: Use the phrase "curly quotes" too.
7955         ede-proj-target-makefile docstring tweaks
7956         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
7957         Consistently use "all:" to describe the all: target,
7958         replacing three different and confusingly-quoted usages.
7960 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
7962         Don't abort emacsclientw when -a was specified
7963         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
7964         out if we are in emacsclientw and -a was specified.
7966 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
7968         Fix handling of 1st keystroke on MS-Windows
7969         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
7970         This is needed to correctly handle the session's first keystroke,
7971         if it has any modifiers.  (Bug#19994)
7973 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
7975         Substitute some customization etc. doc strings
7976         These changes apply substitute-command-keys to some
7977         doc strings that were going through untranslated
7978         when creating customization or other widgets.
7979         * lisp/cus-edit.el (custom-group-value-create):
7980         * lisp/wid-edit.el (widget-default-create):
7981         (widget-push-button-value-create):
7982         Treat the widget tag as a doc string.
7983         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
7984         Treat the :documentation value as a doc string.
7985         * lisp/wid-edit.el (widget-choose):
7986         Treat the choice names as doc strings.
7987         (widget-default-create): Treat the :doc value as a doc string.
7988         (widget-toggle-value-create): Treat the :on and :off values
7989         as doc strings.
7990         (widget-documentation-string-value-create):
7991         Substitute the doc string.
7993 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
7995         Add a second argument to project-ignores
7996         * lisp/progmodes/project.el (project-ignores): Add a second
7997         argument DIR.
7998         * lisp/progmodes/project.el (project-ignores): Only include the VC
7999         ignores if DIR is the VC root.
8000         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
8002 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
8004         Prevent incorrect display when 'line-spacing' variable is set
8005         * src/xdisp.c (try_window_id): Give up this optimization if the
8006         buffer has its 'line-spacing' variable set non-nil.
8008 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
8010         Don't pass NOVISIT to find-file
8011         * lisp/progmodes/etags.el (next-file):
8012         Don't pass NOVISIT to find-file (bug#21175).
8014         Ignore buffer restriction for tags-loop-eval
8015         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
8016         restriction (bug#21167).
8018 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
8020         Fix a thinko in 'ffap-gopher-at-point'
8021         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
8023         Honor 'line-spacing' for empty lines
8024         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
8025         property and 'line-spacing' frame parameter or variable or
8026         property for empty lines, by doing the same processing as in
8027         x_produce_glyph for newline characters.  (Bug#21165)
8029 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
8031         Simplify by assuming C99 integer division
8032         * src/floatfns.c (ceiling2, floor2, truncate2):
8033         Assume C99 (i.e., Fortran) semantics for integer division.
8034         This simplifies the code.
8036 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
8038         Don't overflow if computing approximate percentage
8039         * lisp/align.el (align-region):
8040         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
8041         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
8042         * lisp/cus-edit.el (custom-buffer-create-internal):
8043         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
8044         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
8045         (checkdoc-next-message-error):
8046         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
8047         * lisp/epa.el (epa-progress-callback-function):
8048         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
8049         * lisp/ffap.el (ffap-menu-rescan):
8050         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
8051         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
8052         * lisp/gnus/nneething.el (nneething-retrieve-headers):
8053         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
8054         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
8055         * lisp/gnus/nnml.el (nnml-retrieve-headers):
8056         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
8057         * lisp/gnus/nntp.el (nntp-retrieve-headers)
8058         (nntp-retrieve-articles):
8059         * lisp/imenu.el (imenu--relative-position):
8060         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
8061         (skkdic-convert-okuri-nasi):
8062         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
8063         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
8064         * lisp/org/org-list.el (org-update-checkbox-count):
8065         * lisp/org/org.el (org-table-map-tables)
8066         (org-update-parent-todo-statistics):
8067         * lisp/play/decipher.el (decipher-insert-frequency-counts)
8068         (decipher-analyze-buffer):
8069         * lisp/profiler.el (profiler-format-percent):
8070         * lisp/progmodes/cc-cmds.el (c-progress-update):
8071         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
8072         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
8073         (idlwave-list-load-path-shadows):
8074         * lisp/progmodes/opascal.el (opascal-step-progress):
8075         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
8076         (vhdl-scan-directory-contents):
8077         * lisp/textmodes/bibtex.el (bibtex-progress-message):
8078         * lisp/textmodes/flyspell.el (flyspell-small-region)
8079         (flyspell-external-point-words):
8080         * lisp/textmodes/table.el (table-recognize):
8081         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
8082         progress-report percentages and the like.  This avoids problems
8083         if (* 100 NUMERATOR) would overflow.
8084         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
8085         * lisp/gnus/registry.el (registry-reindex):
8086         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
8087         * lisp/descr-text.el (describe-char):
8088         * lisp/org/org-colview.el (org-nofm-to-completion):
8089         * lisp/ps-print.el (ps-plot):
8090         * lisp/simple.el (what-cursor-position):
8091         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
8092         more-complicated and less-accurate approximation.
8094         Fix some int overflows in profiler.c
8095         * src/profiler.c (make_log): Make args EMACS_INT, not int,
8096         to avoid unwanted behavior on 'int' overflow.
8097         (make_log, evict_lower_half, record_backtrace):
8098         Use ptrdiff_t, not int, for object indexes.
8100         Port to pedantic memcpy
8101         * src/keyboard.c (menu_bar_items, tool_bar_items):
8102         * src/xrdb.c (magic_db):
8103         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
8105         Merge from gnulib
8106         This incorporates:
8107         2015-07-29 time_rz: port to pedantic memcpy
8108         * lib/time_rz.c: Copy from gnulib.
8110 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
8112         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print): Fix bug
8113         When updating the very last entry, tabulated-list-print would
8114         erase it and then try to look at the next one (which obviously
8115         isn't there).
8117 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
8119         Allow to use the old key processing code on MS-Windows
8120         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
8121         New variable.
8122         (w32_wnd_proc): Use it to invoke the old code that processed
8123         character keys, as fallback, when this variable is non-nil.  Fix
8124         typos in comments.  (Bug#19994)
8126 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
8128         Improve handling of Unicode keyboard input on MS-Windows
8129         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
8130         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
8131         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
8132         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
8133         successful, don't call TranslateMessage.  (Bug#19994)
8135 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
8137         Fix default-directory in changeset diffs after vc-print-log
8138         * lisp/vc/log-view.el (log-view-diff-common): Move the
8139         revision-granularity check back into log-view-diff-changeset.
8140         (log-view-diff-changeset): Bind default-directory to the current
8141         VC root.
8143         Rename project-directories to project-roots
8144         * lisp/progmodes/project.el (project-search-path-function)
8145         (project-search-path): Update the docstring.
8146         (project-directories): Rename to `project-roots', update all
8147         callers and implementations accordingly.
8148         (project-root): Remove.
8149         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
8150         as the default file mask.
8152 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
8154         Support long URLs in w32-shell-execute
8155         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
8156         and filename_to_ansi to convert the DOCUMENT argument, as it could
8157         be a URL that is not limited to MAX_PATH characters.  Instead, use
8158         MultiByteToWideChar directly, and allocate heap storage as
8159         required to accommodate the converted string.  Likewise with
8160         non-Unicode operation.  Ensure OPERATION is null-terminated, even
8161         if it is longer than 32K bytes.  (Bug#21158)
8163 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
8165         vc-mtn-find-revision handle null rev.
8166         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): handle null rev
8168 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
8170         Add docs for display-buffer action display-buffer-use-some-frame
8171         * lisp/window.el (display-buffer-use-some-frame): improve doc string
8172         * doc/lispref/windows.texi (Display Action Functions): add
8173           display-buffer-use-some-frame
8174         * etc/NEWS: mention display-buffer-use-some-frame
8176         Add display-buffer action display-buffer-use-some-frame
8177         * lisp/window.el (display-buffer-use-some-frame): new
8179         Handle vc-mtn error more gently
8180         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): return "" when branch is nil
8182 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
8184         Fix Tramp problems with multihops, and nc.
8185         * lisp/net/tramp-cache.el (tramp-get-file-property)
8186         (tramp-set-file-property, tramp-flush-file-property)
8187         (tramp-get-connection-property, tramp-set-connection-property)
8188         (tramp-flush-connection-property): Remove hop from vector.
8189         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
8190         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
8191         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
8192         netstat to 60".
8193         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
8194         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
8195         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
8196         Keep hop in result.
8197         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
8198         Add hop tests.
8200 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
8202         Resurrect highlighting of repeated words by Flyspell Mode
8203         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
8204         characters between point and the doublon candidate, so that
8205         flyspell-word-search-backward finds it.  (Bug#21157)
8207         Fix redisplay of large images on expose events
8208         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
8209         between signed negative values and unsigned values.  This
8210         prevented redisplay on expose events when the window showed a very
8211         large image.
8213 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
8215         Remove unnecessary stack overflow dependency
8216         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
8217         Don't worry about $ac_cv_header_sys_resource_h and
8218         $ac_cv_func_getrlimit, as they're no longer needed for this.
8219         Problem reported by Eli Zaretskii in:
8220         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
8222 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
8224         Pacify compilation -Wincompatible-pointer-types warnings
8225         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
8226         warning.
8227         (CompareStringW_Proc): New typedef.
8228         (w32_compare_strings): Use it, to pacify compiler warnings under
8229         "-Wincompatible-pointer-types".
8230         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
8231         (GetDiskFreeSpaceExA_Proc): New typedefs.
8232         (Ffile_system_info): Use them, to pacify compiler warnings under
8233         "-Wincompatible-pointer-types".
8235 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
8237         Fix subscript error in calculate_direct_scrolling
8238         Use slightly-longer cost vectors.  Without this change,
8239         calculate_direct_scrolling can have a subscript violation when
8240         FRAME_LINES (frame) <= delta.
8241         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
8242         (line_ins_del, do_line_insertion_deletion_costs):
8243         Allocate and use slightly-larger cost vectors, ones based on
8244         FRAME_TOTAL_LINES instead of FRAME_LINES.
8246         Fix uninitalized value in encode_coding_object
8247         * src/coding.c (encode_coding_object): Also initialize
8248         coding->src_pos and coding->src_pos_byte when NILP (src_object).
8249         This avoids later use of uninitialized storage.
8251 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
8253         * doc/lispref/variables.texi (Variable Aliases): Typo fix.  (Bug#21141)
8255 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
8257         Merge from gnulib
8258         This incorporates:
8259         2015-07-27 time_rz: port better to MinGW
8260         2015-07-27 time: port __need_time_t to MinGW
8261         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
8262         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
8263         * lib/time-internal.h: New file, from gnulib.
8265 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
8267         Handle NULL pointers in w32heap.c allocation routines
8268         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
8269         freeable".
8270         (realloc_after_dump, realloc_before_dump, free_before_dump):
8271         Handle NULL pointers gracefully, as Emacs now seems to expect
8272         that.
8274         Fix Cairo build without PNG
8275         * src/image.c: Define PNG function when USE_CAIRO is defined, even
8276         if HAVE_PNG is not.  (Bug#21133)
8278         MS-Windows follow-up for recent TZ-related changes
8279         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
8280         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
8281         picking up 'struct timespec' from pthread.h, if it is installed on
8282         the user's system.  We want either the definitions from MinGW
8283         system headers, if available, or the Gnulib replacements if not.
8284         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
8285         lib/time.h.
8286         * lib/time.in.h: Don't let __need_* symbols affect what happens on
8287         MinGW.  These symbols are defined by MinGW system headers, but we
8288         don't want that to affect whether Gnulib portions of the header
8289         are or aren't used.
8291 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
8293         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
8295         New optional ZONE arg for format-time-string etc.
8296         This simplifies time conversions in other time zones.
8297         It also prevents display-time-world tampering with TZ (Bug#21020).
8298         * admin/admin.el (add-release-logs):
8299         Use improved add-log-time-format API.
8300         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
8301         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
8302         * configure.ac (tzalloc): Remove test for this, since
8303         Emacs no longer uses HAVE_TZALLOC directly.
8304         * doc/lispref/os.texi (Time of Day, Time Conversion)
8305         (Time Parsing):
8306         * etc/NEWS: Document the new behavior.
8307         Merge from gnulib, incorporating:
8308         2015-07-25 strftime: fix newly-introduced bug on Solaris
8309         2015-07-23 fprintftime, strftime: use timezone_t args
8310         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
8311         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
8312         * m4/time_h.m4:
8313         Update from gnulib.
8314         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
8315         New files from gnulib.
8316         * lisp/time-stamp.el (time-stamp-string):
8317         * lisp/time.el (display-time-world-list)
8318         (display-time-world-display):
8319         Use new API, with time zone arg.
8320         * lisp/time.el (display-time-world-display):
8321         Fix race when current-time advances while we're running.
8322         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
8323         (add-log-iso8601-time-string): Accept optional time zone arg.
8324         * lisp/vc/add-log.el (add-change-log-entry):
8325         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
8326         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
8327         Add rules for the time module, since they're now needed
8328         for tzalloc etc.
8329         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
8330         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
8331         * src/editfns.c: Include errno.h.
8332         (set_time_zone_rule): Omit unnecessary forward decl.
8333         (initial_tz): Remove, replacing with ...
8334         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
8335         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
8336         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
8337         (tzlookup): New static functions.
8338         (init_editfns): New arg DUMPING.  All uses changed.
8339         (init_editfns): Omit most initialization if dumping, not if
8340         !initialized.  Initialize wall_clock_tz and local_tz.
8341         (emacs_nmemftime, format_time_string): Time zone argument can now
8342         be any time zone, not just a boolean for UTC or local time.  All
8343         callers changed.
8344         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
8345         (Fcurrent_time_zone): New optional arg ZONE.
8346         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
8347         the same form as with the other new additions.
8348         (decode_time_zone): Remove; no longer needed.
8349         (tzvalbuf): Now file-scope.
8350         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
8351         (syms_of_editfns): Define Qwall.
8352         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
8353         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
8354         [!HAVE_TZALLOC]:
8355         Remove; now supplied by gnulib.
8356         * src/emacs.c (main):
8357         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
8359 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
8361         Fix infinite loop in delete-consecutive-dups
8362         * lisp/subr.el (delete-consecutive-dups): Work even if the last
8363         element is nil (Bug#20588).  Avoid rescan of a circular list in
8364         deletion of last element.
8366 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
8368         Have `x-frame-geometry' return nil for terminal and initial frames (Bug#21132)
8369         * src/nsfns.m (Fx_frame_geometry):
8370         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
8371         terminal frames.
8372         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
8373         (Fx_frame_geometry): Return nil for terminal frames
8375 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
8377         * etc/tutorials/TUTORIAL.ja: Improve translation.
8379 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
8381         Avoid crashes when w32 GUI functions are called in -batch
8382         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
8383         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
8384         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
8386         Fix flyspell-check-previous-highlighted-word
8387         * lisp/textmodes/flyspell.el
8388         (flyspell-check-previous-highlighted-word): Really accept a
8389         numeric argument, as the doc string describes.  Fix an off-by-one
8390         error in looking up overlays, so invocation with point immediately
8391         after a word would check that word.  Clarify the doc string as
8392         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
8394 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
8396         Minor cleanup in tramp-tests.el
8397         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
8398         Implement using the documented interface
8399         `tramp-connection-properties', rather than with internal functions.
8401 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
8403         Pass lambdas to `skeleton-read'
8404         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
8405         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
8406         lambdas to `skeleton-read' (bug#20386).
8408 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
8410         * INSTALL (DETAILED BUILDING AND INSTALLATION): Mention --without-imagemagick.
8412         Don't require GUI frames and mouse for Flyspell menus
8413         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
8414         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
8415         support, since pop-up menus work with text terminals and can be
8416         controlled via the keyboard.
8418         Improve documentation of Flyspell commands
8419         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
8420         can be invoked via the keyboard.  Mention those commands by name
8421         and add them to the fn index.  (Bug#21125)
8423 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
8425         Fix some Tramp problems with HP-UX
8426         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
8427         Add "tab0" to stty call.
8428         * test/automated/tramp-tests.el (tramp-persistency-file-name):
8429         Set to nil.
8430         (tramp--test-hpux-p): New defun.
8431         (tramp--test-utf8): Use it.
8433 2015-07-22  Glenn Morris  <rgm@gnu.org>
8435         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
8437 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
8439         Fix point positioning in ffap-next-guess
8440         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
8441         as our callers expect.  This was clobbered as part of fixing
8442         bug#5673.  (Bug#21107)
8443         (ffap-gopher-at-point): Set ffap-string-at-point-region.
8445 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
8447         Fix customization type of `even-window-sizes'.
8448         * lisp/window.el (even-window-sizes): Fix customization type.
8450         Optionally even widths of `display-buffer' windows.  (Bug#21100)
8451         * lisp/window.el (quit-restore-window): Restore width if
8452         requested.
8453         (display-buffer-record-window): Record width when window is
8454         reused and horizontally combined.
8455         (even-window-sizes): New option to allow evening window widths.
8456         (even-window-heights): Defalias to `even-window-sizes'.
8457         (window--even-window-heights): Rename to
8458         `window--even-window-sizes'.  Handle side-by-side windows.
8459         (display-buffer-use-some-window): Call `window--even-window-sizes'
8460         instead of `window--even-window-heights'.
8461         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
8462         * doc/lispref/windows.texi (Choosing Window Options): Describe
8463         `even-window-sizes'.
8464         (Coordinates and Windows): Fix typo.
8466 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
8468         add file name to autoload error messages.
8469         * lisp/emacs-lisp/autoload.el (autoload-save-buffers): add condition-case
8470           to add file name to error message.
8472 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
8474         Use 0.0.0.1 as test host in Tramp
8475         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
8476         Use 0.0.0.1 as test host.
8478 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
8480         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
8481         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
8482         Fix inf-loop (bug#21083).
8484 2015-07-21  Glenn Morris  <rgm@gnu.org>
8486         * test/automated/package-test.el (package-test-signed):
8487         Update for recent changes.
8489         * test/automated/elisp-mode-tests.el
8490         (elisp-xref-finds-both-function-and-variable)
8491         (elisp-xref-finds-only-function-for-minor-mode):
8492         Update for recent xref name changes.
8494 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
8496         Make eldoc timer non-repeatable
8497         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
8498         non-repeatable.  Since it's on post-command hook, that just wasted
8499         CPU cycles.
8501 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
8503         Mention `tramp-connection-properties' in NEWS
8505         Sync with Tramp repository
8506         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
8507         required prior changing its configuration.
8508         (Connection caching, Predefined connection information)
8509         (Remote shell setup): Fix typos.
8510         (Predefined connection information): Describe, how to overwrite
8511         parameters of `tramp-methods'.
8512         (Remote programs, Remote processes, Traces and Profiles):
8513         Simplify example.
8514         (Remote programs): Remove superfluous comment.
8515         * doc/misc/trampver.texi: Update release number.
8516         * lisp/net/tramp-cache.el (tramp-connection-properties): Adapt docstring.
8517         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
8518         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
8519         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
8520         "gvfs-mkdir -p ..." does not work robust.
8521         (tramp-gvfs-maybe-open-connection): Adapt `tramp-get-method-parameter' call.
8522         * lisp/net/tramp-sh.el (tramp-methods):
8523         Add `tramp-remote-shell-login' parameter where it fits.
8524         (tramp-get-remote-path): Use it.
8525         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
8526         (all): Adapt `tramp-get-method-parameter' calls.
8527         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
8528         (tramp-get-method-parameter): Replace argument METHOD by VEC.
8529         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
8530         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
8531         (all): Adapt `tramp-get-method-parameter' calls.
8532         * lisp/net/trampver.el Update release number.
8533         * test/automated/tramp-tests.el (tramp--instrument-test-case):
8534         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
8535         (tramp-test13-make-directory, tramp--test-adb-p)
8536         (tramp--test-smb-or-windows-nt-p): Simplify.
8537         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
8538         (tramp--test-special-characters): Fix docstring.  Add gvfs and ftp tests.
8539         (tramp--test-utf8): Fix docstring.
8541 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
8543         Add new xref-query-replace command
8544         * lisp/progmodes/xref.el (xref--match-buffer-bounds): New
8545         function, extracted from xref-pulse-momentarily.
8546         (xref-query-replace): New command.
8547         (xref--query-replace-1): New helper function.
8548         (xref--xref-buffer-mode-map): Add `r' binding.
8550 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
8552         Simplify icalendar decoding of Z dates
8553         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
8554         Simplify calculation of time strings with trailing "Z".
8556 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
8558         Do not corrupt grep-find-ignored-files
8559         * lisp/progmodes/project.el (project-ignores): Change the order of
8560         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
8562         Add xref-match-item, and use it
8563         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
8564         (xref-file-location): Add reader for the column slot.
8565         (xref-match-item): New class.
8566         (xref-match-bounds): A method implementation for it.
8567         (xref-make-match): New constructor function.
8568         (xref--current-item): New private variable.
8569         (xref-pulse-momentarily): Use it.
8570         (xref--pop-to-location): Change the first argument to an xref
8571         item, instead of location, bind xref--current-item.
8572         Update all callers.
8573         (xref-next-line, xref-prev-line, xref--next-error-function)
8574         (xref--mouse-2): Look for the property `xref-item',
8575         instead of `xref-location'.
8576         (xref--item-at-point): Likewise.  This function replaces
8577         `xref-location-at-point'.  Update all callers.
8578         (xref--insert-xrefs): Add the `xref-item' text property, instead
8579         of `xref-location'.
8580         (xref--collect-match): Use xref-make-match.
8582         Rename xref--xref to xref-item
8583         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
8584         Update all references.
8586         Rename xref description slot to summary
8587         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
8588         slot to `summary'.
8590         vc-hg: Perform the print-log call asynchronously
8591         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
8592         asynchronously (bug#21067).
8594         Add xref-after-jump-hook and xref-after-return-hook
8595         * lisp/progmodes/xref.el (xref-after-jump-hook)
8596         (xref-after-return-hook): New hooks.
8597         (xref-pulse-on-jump): Remove, in favor of the above.
8598         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
8599         (xref--pop-to-location, xref--display-position)
8600         (xref-pop-marker-stack): Use the new hooks, as requested in
8601         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
8603 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
8605         Correct js-mode's lighter
8606         * lisp/progmodes/js.el (js-mode): Correct the lighter.
8608 2015-07-19  Leo Liu  <sdl.web@gmail.com>
8610         Fix a bug in cfengine3-mode
8611         * progmodes/cfengine.el (cfengine3-mode): Handle nil
8612           eldoc-documentation-function.
8614 2015-07-18  Julien Danjou  <julien@danjou.info>
8616         sieve-mode: support "body" test command
8617         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
8618         Add missing "body" test command.
8620 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
8622         Fix info-apropos when the default encoding is Latin-N
8623         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
8624         'undecided', so that it is set to the encoding of the Info file we
8625         are about to insert.  Otherwise, 'info-apropos' will fail to find
8626         some index nodes in some UTF-8 encoded files, if the buffer's
8627         previous encoding is Latin-N or some such.
8629 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
8631         * epg.el (epg--start): Check that gpgconf can be found before calling it.
8633         Expose more file types to OS X that Emacs understands.
8634         * Cocoa/Emacs.base/Contents/Info.plist: Add editor role for sty, dtx,
8635         json, and org files.  Export UTIs for el, elc, and org files.
8637 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
8639         Fix visual-order cursor movement when lines are truncated
8640         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
8641         simulate display in a window of infinite width, to allow move_it_*
8642         functions reach positions outside of normal window dimensions.
8643         Remove code that tried to handle a subset of these situations by
8644         manual iteration of buffer text.  (Bug#17777)
8646         Fix following Info cross-references to anchors
8647         * lisp/info.el (Info-read-subfile): Add to the returned value the
8648         length of subfile preamble, after converting it to file's byte
8649         offset, as expected by the caller.  Use bufferpos-to-filepos.
8650         (Info-find-node-2): If searching for a node with a
8651         1000-character slop fails, try again with a 10000-character slop,
8652         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
8653         * lisp/international/mule-util.el (bufferpos-to-filepos): New
8654         function.
8655         * etc/NEWS: Mention bufferpos-to-filepos.
8657         Fix scrolling backwards on TTY frames under scroll-conservatively
8658         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
8659         in moving backwards on TTY frames.  (Bug#21080)
8661 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
8663         Consider a jsdoc tag to be a beginning of a paragraph as well
8664         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
8665         consider a jsdoc tag to be a beginning of a paragraph as well.
8667 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
8669         * lisp/emacs-lisp/package.el: Fix warnings
8671         * lisp/emacs-lisp/package.el (package-buffer-info):
8672         Add author and maintainers to `package-buffer-info'.
8674         * lisp/emacs-lisp/package.el: Many small changes
8675         Replace all instances of 'face with 'font-lock-face.
8676         (describe-package-1): Improve some strings and move the summary up the
8677         list.
8678         (package-install-file): Update docstring.
8679         (package-menu-hide-package): Bind to `H'.
8681         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
8682         Fix error handling.
8684 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
8686         Fix hang with large yanks This should fix the bug fixed by Mike
8687         Crowe's patch in:
8688         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
8689         A problem in this area has been reported by several users; see
8690         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
8691         This fix differs from Mike Crowe's patch in that it should avoid a
8692         race condition that could lose SIGIO signals.  ignore_sigio dates
8693         back to the 1980s when some platforms couldn't block signals, and
8694         could only ignore them, which led to races when signals arrived
8695         while being ignored.  We shouldn't have to worry about those old
8696         platforms now.
8697         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
8698         * src/emacs.c (shut_down_emacs):
8699         Don't call ignore_sigio; unrequest_sigio should suffice.
8700         * src/keyboard.c (kbd_buffer_store_buffered_event):
8701         Use unrequest_sigio, not ignore_sigio.
8702         (kbd_buffer_get_event):
8703         Call request_sigio when getting the ball rolling again.
8705 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
8707         * lisp/obsolete/longlines.el (longlines-search-function):
8708         Fallback on `isearch-search-fun-default'.
8710 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
8712         Support @-mentions
8713         * rcirc.el (rcirc-completion-at-point): Support completion of
8714         mentions/messages with @nick instead of just nick.
8716 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
8718         Fix Bug#20943.
8719         * lisp/autorevert.el (auto-revert-handler): Do not check for
8720         `buffer-modified-p'.
8721         * lisp/files.el (buffer-stale--default-function): Check for
8722         `buffer-modified-p'.
8723         * test/automated/auto-revert-tests.el
8724         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
8726 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
8728         Fix delete-dups bug on long lists
8729         * lisp/subr.el (delete-dups):
8730         Don't mistakenly keep some dups when applied to long lists.
8732 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
8734         Better heuristic for C stack overflow
8735         Improve the heuristic for distinguishing stack overflows from
8736         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
8737         the getrlimit method wasn't portable to Cygwin; see:
8738         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
8739         Corinna suggested pthread_getattr_np but this also has problems.
8740         Instead, replace the low-level system stuff with a simple
8741         heuristic based on known good stack addresses.
8742         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
8743         * src/sysdep.c: Don't include <sys/resource.h>.
8744         (stack_direction): Remove.  All uses removed.
8745         (stack_overflow): New function.
8746         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
8747         Make SEGV fatal in non-main threads.
8749 2015-07-16  Daiki Ueno  <ueno@gnu.org>
8751         epg: Automatically start pinentry server
8752         * epg-config.el (epg-gpgconf-program): New variable.
8753         * epg.el (epg--start): Call `pinentry-start' if
8754         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
8756 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
8758         * lisp/gnus/nnimap.el: Fix my last bogus change
8759         Reinstall Stefan Monnier's change that was made in
8760         <83d824bc4041332f338ad7e5e830f443535aa300>.
8762 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
8764         Merge from gnulib
8765         This incorporates:
8766         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
8767         2015-07-05 acl-permissions: Fix on FreeBSD
8768         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
8769         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
8770         * lib/set-permissions.c: Copy from gnulib.
8772         Port to stricter C99
8773         * src/keyboard.h (kbd_buffer_store_event_hold):
8774         Don't return a void expression.
8776 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
8778         * doc/emacs/frames.texi (Creating Frames): Fix the command `C-x 5 m' runs.
8780 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
8782         New autorevert tests.
8783         * test/automated/auto-revert-tests.el: New file.
8785 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
8787         Clear gcprolist etc. after stack overflow
8788         After stack overflow, command_loop calls init_eval, and this needs to
8789         clear gcprolist and byte_stack_list (Bug#20996).
8790         * src/alloc.c (init_alloc):
8791         Move gcprolist and byte_stack_list initialization from here ...
8792         * src/eval.c (init_eval): ... to here.
8794 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
8796         * doc/emacs/windows.texi (Pop Up Window): Fix the description of `C-x 4 m'.
8798 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8800         Avoid deprecated enums in mac-ct font backend driver
8801         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
8802         (mac_ctfont_get_advance_width_for_glyph)
8803         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
8805         Cache font family in mac-ct font backend driver
8806         * src/macfont.m (macfont_family_cache): New variable.
8807         (syms_of_macfont): Initialize it.
8808         (macfont_available_families_cache): New variable.
8809         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
8810         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
8811         (macfont_handle_font_change_notification)
8812         (macfont_init_font_change_handler)
8813         (macfont_copy_available_families_cache): New functions.
8814         (macfont_create_family_with_symbol): Use font family caches.
8815         (macfont_list, macfont_list_family): Use
8816         macfont_copy_available_families_cache instead of
8817         mac_font_create_available_families.
8819 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
8821         Show the default value in the prompt
8822         * lisp/progmodes/xref.el: Add `M-?' binding for
8823         xref-find-references.  Declare functions `grep-read-files' and
8824         `grep-expand-template'.
8825         (xref--read-identifier): Show the default value in the prompt.
8827         When called with prefix argument, ask for file patterns to search as well
8828         * lisp/progmodes/xref.el (xref-find-regexp): When called with
8829         prefix argument, ask for file patterns to search as well.  When
8830         prompting for the directory, require an existing one.
8831         (xref-collect-matches): Add a new argument, FILES.  Use it in the
8832         above function.
8834         Add `project-ignores'
8835         * lisp/progmodes/project.el (project-ignores): New generic
8836         function, and an implementation for the VC project type.
8837         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
8838         variant of rgrep-default-command that handles a generic list of
8839         ignores.
8840         (xref-collect-matches): Use it, and pass through to it the value
8841         of the newly added argument.
8842         (xref-find-regexp): Handle ignored paths within the project.
8843         Remove outdated comment.
8844         * lisp/vc/vc.el (vc-default-ignore-completion-table):
8845         Skip the comments and the empty lines.
8847 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
8849         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
8851 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
8853         gnus-registry.el: Correct function argument order
8854         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
8855         Reverse the order of function arguments.
8857 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
8859         Bind grep-highlight-matches to nil
8860         * lisp/progmodes/xref.el (xref-collect-matches):
8861         Bind grep-highlight-matches to nil (bug#20728).
8863 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
8865         nnimap.el: Fix IMAP message size parsing
8866         * lisp/gnus/nnimap.el (nnimap-transform-headers):
8867         Don't assume that UID comes before RFC822.SIZE.
8869 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
8871         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
8872         (auth-source-creation-prompts): Declare.
8873         (nnimap-retrieve-headers, nnimap-status-message)
8874         (nnimap-request-create-group, nnimap-request-delete-group)
8875         (nnimap-close-group, nnimap-request-move-article)
8876         (nnimap-request-accept-article, nnimap-request-newgroups)
8877         (nnimap-request-post, nnimap-dummy-active-number)
8878         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
8879         (nnimap-parse-flags): Remove unused var `p'.
8880         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
8881         (nnimap-flags-to-marks): Remove unused var `totalp'.
8883 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
8885         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
8887 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8889         * src/macfont.m (macfont_list): Ignore font families lacking font descriptors.
8891 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
8893         Don't check the exit status, it can be misleading
8894         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
8895         exit status, it can be misleading.
8897         Introduce a Project API
8898         * lisp/progmodes/project.el: New file.
8899         * lisp/cedet/ede.el: (project-try-ede): New function.
8900         (project-root): New implementation.
8901         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
8902         Set project-search-path-function.
8903         (elisp--xref-find-references): Delegate some logic to
8904         project-search-path.
8905         (elisp-search-path): New function.
8906         (elisp-xref-find): Don't implement `matches' anymore.
8907         * lisp/progmodes/etags.el: Don't implement `matches'.
8908         Delegate some logic to project-search-path.
8909         (etags-search-path): New function.
8910         * lisp/progmodes/xref.el (xref-find-function):
8911         Remove `matches' from the API.
8912         (xref-find-regexp): Move whatever common logic was in elisp and
8913         etags implementations, and search the directories returned by
8914         project-directories and project-search-path.
8916 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
8918         * test/automated/map-tests.el (test-map-delete-return-value): Uncomment test.
8920         Add support for gv.el in map.el
8921         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
8922         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
8923         * test/automated/map-tests.el: Update tests to work with the new
8924         implementations of map-elt and map-put.
8926 2015-07-09  Glenn Morris  <rgm@gnu.org>
8928         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
8930 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
8932         Syntax-propertize until the end of the line first
8933         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
8934         until the end of the line first.
8936 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
8938         * doc/emacs/files.texi (File Archives): Add a cross reference.
8940 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
8942         nnimap.el: Handle plain value for nnimap-stream
8943         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
8944         capabilities, so that a 'plain value for the `nnimap-stream' server
8945         variable is handled correctly.
8946         * doc/misc/gnus.texi (Customizing the IMAP Connection):
8947         Document the 'plain option.
8949 2015-07-08  Leo Liu  <sdl.web@gmail.com>
8951         Fix bug in thing-at-point--bounds-of-well-formed-url
8952         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
8953           sure boundary contains current point.
8955 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
8957         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse' in the end.
8959         Declare whitespace-line-column a safe file-local
8960         * lisp/whitespace.el (whitespace-line-column): Declare to be a
8961         safe file-local when the value is an integer.
8963 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
8965         gnus-group.el: Check if group names are already strings
8966         * lisp/gnus/gnus-group.el (gnus-group-group-name):
8967         The group name may already be a string.
8968         Specifically, in the group list reached from the *Server* buffer,
8969         the 'gnus-group text property returns a string.  Everywhere else
8970         it returns a symbol.
8972         nnimap.el: Remove unused let variables
8973         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
8975 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
8977         Support "maximized" property of runemacs's shortcut
8978         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
8979         the '--maximized' switch to Emacs.
8981         Support "minimized" property of runemacs's shortcut
8982         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
8983         pass the '--iconic' switch to Emacs.  (Bug#20991)
8985 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
8987         Doc fixes
8988         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
8989         C-w' in Diff mode.
8990         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
8991         Add a cross reference.
8993 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
8995         * lisp/obsolete/landmark.el: Add Obsolete-since header
8997 2015-07-07  Glenn Morris  <rgm@gnu.org>
8999         * test/automated/ert-tests.el (ert-test-deftest):
9000         Update for recent changes.
9002 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
9004         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
9005         * lisp/emacs-lisp/gv.el (gv-setter): New function.
9006         (gv-invalid-place): New error.
9007         (gv-get): Use them.
9008         (gv-synthetic-place, gv-delay-error): New places.
9009         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
9010         (cl-defgeneric, cl-defmethod): Use gv-setter.
9012 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
9014         Make vc-tests work with MSYS svn program
9015         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
9016         svn is an MSYS program.
9018 2015-07-07  Ken Brown  <kbrown@cornell.edu>
9020         Improve recent change to emacsclient on Cygwin
9021         * lisp/server.el (server-process-filter): Remove redundant check
9022         that 'cygwin-convert-file-name-from-windows' is defined as a
9023         function on Cygwin.  Don't call that function unless its argument
9024         starts with a drive letter.
9026 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
9028         * lisp/emacs-lisp/package.el (package-compute-transaction): Bug fix
9029         Fix void variable due to `found-something' being in the wrong `let'.
9031 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
9033         * lisp/play/landmark.el: Move to lisp/obsolete/
9035 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
9037         Have `x-show-tip' handle `right' and `bottom' frame parameters.
9038         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
9039         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
9040         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
9041         tooltips also via `right' and `bottom' frame parameters.
9043 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
9045         Add online-help support to describe types
9046         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
9047         (describe-symbol): Improve the selection of default.
9048         * lisp/help-mode.el: Require cl-lib.
9049         (describe-symbol-backends): Move from help-fns.el.
9050         (help-make-xrefs): Use it.
9051         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
9052         for types.
9053         (cl--typedef-regexp): New const.
9054         (find-function-regexp-alist): Add entry for types.
9055         (cl-help-type, cl-type-definition): New buttons.
9056         (cl-find-class): New function.
9057         (cl-describe-type): New command.
9058         (cl--describe-class, cl--describe-class-slot)
9059         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
9060         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
9061         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
9062         New functions.  Moved from eieio-opt.el.
9063         (cl--generic-class-parents): New function, extracted from
9064         cl--generic-struct-specializers.
9065         (cl--generic-struct-specializers): Use it.
9066         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
9067         Improve constructor's docstrings.
9068         (cl-struct-unknown-slot): New error.
9069         (cl-struct-slot-offset): Use it.
9070         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
9071         definition in current-load-list.
9072         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
9073         (eieio--add-new-slot): Set it.
9074         (eieio-defclass-internal): Use new name for current-load-list.
9075         (eieio-oref): Add compiler-macro to warn about unknown slots.
9076         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
9077         as compile-time as well.  Improve constructor docstrings.
9078         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
9079         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
9080         (eieio-class-def): Remove button.
9081         (eieio-help-constructor): Use new name for load-history element.
9082         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
9083         (eieio-method-documentation): Move to cl-generic.el.
9084         (eieio-display-method-list): Use new names.
9085         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
9086         Add "define-linline".
9087         (lisp-fdefs): Remove "defsubst".
9088         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
9089         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
9090         (macroexp--warn-and-return): Use it to avoid inf-loops.
9091         Add `compile-only' argument.
9093 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9095         python.el: Fix local/remote shell environment setup
9096         * lisp/progmodes/python.el (python-shell-with-environment): Fix
9097         remote/local environment setup.
9098         * test/automated/python-tests.el (python-shell-with-environment-1)
9099         (python-shell-with-environment-2): New tests.
9101 2015-07-06  Glenn Morris  <rgm@gnu.org>
9103         * lisp/simple.el (set-variable): Tweak recent doc fix.
9105 2015-07-06  Ken Brown  <kbrown@cornell.edu>
9107         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE
9109 2015-07-06  Glenn Morris  <rgm@gnu.org>
9111         * lisp/simple.el (set-variable): Use user-error for type mismatch.
9113 2015-07-06  Ken Brown  <kbrown@cornell.edu>
9115         * src/emacs.c (main): Don't increase the stack size on Cygwin
9117 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
9119         (describe-symbol): Rewrite describe-function-or-variable
9120         * lisp/help-fns.el (describe-symbol-backends): New var.
9121         (help-xref-stack-item): Declare.
9122         (describe-symbol): Rename from describe-function-or-variable.
9123         Rewrite using describe-symbol-backends instead of help-xref-interned.
9124         * lisp/help.el (help-map): Use it.
9125         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
9126         (help-xref-interned): Make it into an obsolete alias.
9128         (eieio-persistent-save): Don't ignore `file' arg (bug#20972)
9129         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
9130         `file' arg.  Always use utf-8-emacs.  Use with-temp-buffer and cl-letf.
9132 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
9134         Fix parsing glitches in dired-mark-sexp (bug#13575)
9135         * lisp/dired-x.el (dired-x--string-to-number): New function.
9136         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
9137         of directory-listing-before-filename-regexp.  Consider
9138         forward-word harmful and replace it.  Add more verbiage in
9139         comments and doc string.
9141 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9143         python.el: Respect process environment for remote shells
9144         * lisp/progmodes/python.el
9145         (python-shell-calculate-process-environment): Calculate
9146         process-environment or tramp-remote-process-environment depending
9147         whether current file is remote.
9148         (python-shell-calculate-exec-path): Calculate exec-path or
9149         tramp-remote-path depending whether current file is remote.
9150         (python-shell-with-environment): New macro.
9151         (python-shell-prompt-detect, python-shell-calculate-command)
9152         (python-shell-make-comint, python-check): Use it.
9154         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
9155         * lisp/progmodes/python.el (python-shell--interpreter)
9156         (python-shell--interpreter-args): New vars.
9157         (inferior-python-mode, python-shell-make-comint): Use them.
9159         python.el: Fixes for IPython 3.x  (Bug#20580)
9160         * lisp/progmodes/python.el:
9161         (python-shell-completion-native-setup): Fix IPython 3.x setup.
9162         (python-shell-completion-native-get-completions): Fix timeout
9163         logic.
9165         python.el: Fix mark-defun behavior  (Bug#19665)
9166         * lisp/progmodes/python.el: (python-mark-defun): New function.
9167         * test/automated/python-tests.el (python-mark-defun-1)
9168         (python-mark-defun-2, python-mark-defun-3): New tests.
9170 2015-07-05  Glenn Morris  <rgm@gnu.org>
9172         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
9173         such as "extends(parent), private".  (Bug#20969)
9174         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
9175         New tests.
9177 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
9179         Avoid duplicate calls to current_timespec
9180         * src/process.c (wait_reading_process_output):
9181         Cache current_timespec results as long as we're not waiting.
9183 2015-07-05  Ian Kelling  <ian@iankelling.org>
9185         Avoid returning early reading process output due to SIGIO
9186         * src/process.c (wait_reading_process_output): Extend the behavior of
9187         not breaking due to not finding output when a timer has lowered the
9188         timeout to include when SIGIO lowers the timeout.
9190         Don't return as fast reading any process output
9191         * src/process.c (wait_reading_process_output):
9192         The patch for Bug#17647 returns too fast sometimes when reading
9193         from any processes. Revert part of it, and limit the timeout more
9194         sensibly (Bug#20978).
9196         Refactor timeouts in wait_reading_process_output
9197         * src/process.c (wait_reading_process_output):
9198         Simplify timeouts with an enum.  Remove a redundant condition.
9199         (Bug#20978)
9201         Remove ADAPTIVE_READ_BUFFERING ifdef
9202         * src/process.c (make-process, make-pipe-process, deactivate_process)
9203         (wait_reading_process_output, read_process_output, send_process)
9204         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
9205         added in case there was an operating system in which it was not
9206         useful.  That was 11 years ago and it hasn't happened.  Make
9207         development easier by not considering the effect of changes on a
9208         theoretical OS where this is disabled (Bug#20978).
9210 2015-07-05  Glenn Morris  <rgm@gnu.org>
9212         * lisp/simple.el (set-variable): Doc fix.
9214         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
9216 2015-07-05  Ian Kelling  <ian@iankelling.org>
9218         accept-process-output fix
9219         This is a followon to the fix for Bug#17647 (Bug#20976).
9220         * src/process.c (status_notify): Fix too high return in some cases.
9222 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
9224         * lisp/character-fold.el (character-fold-table):
9225         Only fold decompositions if at least one character is non-spacing.
9226         (Bug#20975)
9228 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
9230         Merge from gnulib
9231         This incorporates:
9232         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
9233         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
9234         2015-07-02 update-copyright: fix test failure with perl >= 5.22
9235         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
9236         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
9237         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
9238         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
9240 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
9242         Respect `prog-indentation-context' in python.el
9243         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
9244         (python-indent-context, python-indent--calculate-indentation)
9245         (python-info-current-defun)
9246         (python-info-dedenter-opening-block-message)
9247         (python-info-line-ends-backslash-p)
9248         (python-info-beginning-of-backslash)
9249         (python-info-continuation-line-p): Use `prog-widen'.
9250         (python-indent--calculate-indentation)
9251         (python-indent--calculate-levels)
9252         (python-indent-calculate-indentation): Use `prog-first-column'.
9253         (python-indent--calculate-levels): Simplify.
9254         Ignore also initial empty lines for syntax calculation.
9255         * lisp/progmodes/python.el (python-indent-context): Return
9256         :no-indent for first non-empty line, not just in line 1.
9257         * test/automated/python-tests.el (python-indent-base-case)
9258         (python-indent-inside-paren-1, python-indent-inside-paren-2)
9259         (python-indent-inside-paren-3, python-indent-inside-paren-4)
9260         (python-indent-inside-paren-5, python-indent-inside-paren-6)
9261         (python-indent-after-backslash-1)
9262         (python-indent-after-backslash-2)
9263         (python-indent-after-backslash-3)
9264         (python-indent-after-backslash-4, python-indent-inside-string-1):
9265         Expect :no-indent for first non-empty line.
9267 2015-07-04  Daniel Colascione  <dancol@dancol.org>
9269         Factor isearch word description into new function
9270         * lisp/isearch.el (isearch--describe-word-mode): New function.
9271         (isearch-message-prefix, isearch-query-replace): Use it.
9273 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
9275         Fix mouse pointer on w32 when a menu is active
9276         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
9277         shape while a menu is in use.  This started happening since we now
9278         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
9280 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
9282         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
9283         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
9284         parameter.  (Bug#17344)
9286         Have `compilation-set-window' use right window for getting fringes (Bug#20829)
9287         * lisp/progmodes/compile.el (compilation-set-window): Take
9288         `window-fringes' from argument window.  (Bug#20829)
9290 2015-07-03  Glenn Morris  <rgm@gnu.org>
9292         Update eieio tests for recent eieio-core change.
9293         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
9294         * test/automated/eieio-tests.el
9295         (eieio-test-32-slot-attribute-override-2):
9296         Replace the deleted eieio--class-v with cl--find-class.
9298 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
9300         Fix some issues with `window-divider-mode'
9301         * lisp/frame.el (window-divider-default-places): New option.
9302         (window-divider-mode): Remove option.
9303         (window-divider-mode): Make it a "regular" minor mode.
9304         (window-divider-width-valid-p): Drop frame- prefix.
9305         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
9306         prefix.  Handle `window-divider-default-places'.
9307         (frame--window-divider-mode-set-and-apply): Remove.
9308         (window-divider-default-bottom-width)
9309         (window-divider-default-right-width): Drop :group entries.
9310         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
9311         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
9312         (menu-bar-no-window-divider): Set `window-divider-default-places'
9313         and call `window-divider-mode'.
9314         * doc/emacs/frames.texi (Window Dividers): Document
9315         `window-divider-default-places'.
9317 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
9319         Add cross references in documentation
9320         * doc/emacs/display.texi (Displaying Boundaries):
9321         * doc/emacs/search.texi (Word Search): Add cross references.
9323 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
9325         -batch should not affect ‘’ -> `' display
9326         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
9327         -batch (Bug#20926).
9329 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
9331         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
9332         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el,
9333           lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
9334         Use cl--find-class instead.
9336         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
9338 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
9340         Some further fixes in Change Window node.  (Bug#20183)
9341         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
9342         by "resizing" in section title.  Add some concept indices.
9343         Suggested by N. Jackson (Bug#20183).
9345         Reference window dividers in Change Window section.
9346         * doc/emacs/windows.texi (Change Window): Reference window
9347         dividers.
9349         Document new `window-divider-mode'.
9350         * lisp/frame.el (window-divider-mode): Fix doc-string.
9351         * doc/emacs/frames.texi (Window Dividers): New section.
9353         Improve accessibility of window dividers.  (Bug#20183)
9354         * lisp/faces.el (window-divider)
9355         (window-divider-first-pixel, window-divider-last-pixel): Change
9356         membership from `frames' to `window-divider' customization group.
9357         * lisp/frame.el (window-divider): New customization group.
9358         (window-divider-mode): New minor mode.
9359         (window-divider-default-bottom-width)
9360         (window-divider-default-right-width): New options.
9361         (frame--window-divider-previous-mode): New variable.
9362         (frame-window-divider-width-valid-p)
9363         (frame--window-divider-mode-apply)
9364         (frame--window-divider-mode-set-and-apply): New functions.
9365         * lisp/menu-bar.el (menu-bar-options-save): Save
9366         window-divider-mode settings.
9367         (menu-bar-window-divider-customize)
9368         (menu-bar-bottom-and-right-window-divider)
9369         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
9370         (menu-bar-no-window-divider): New functions.
9371         (menu-bar-showhide-window-divider-menu): New variable.
9372         (menu-bar-showhide-menu): Show/hide window divider menu.
9373         * lisp/mouse.el (mouse-split-window-vertically)
9374         (mouse-split-window-horizontally): Replace `error' by
9375         `user-error'.  Bind `window-combination-resize' to nil.
9376         (top-level): Add/reorder mouse key bindings on mode- and
9377         vertical-line.
9379 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
9381         Don't display ‘’ as `' under X in en_GB
9382         The curved quote setup code invokes (char-displayable-p ?‘),
9383         but this isn’t reliable until after the X frame replaces the
9384         terminal frame (Bug#20926).
9385         * lisp/international/mule-cmds.el (set-locale-environment):
9386         Move curved quote setup code from here ...
9387         * lisp/startup.el (command-line): ... to here, after creating
9388         the X frame.
9390 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
9392         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring
9394         Add argument to reverse the meaning of ido-restrict-to-matches
9395         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
9396         to reverse the meaning (Bug#15631).
9398 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
9400         Be more tolerant to fonts named "Foobar-12"
9401         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
9402         don't barf; instead, request a new fontset to be generated.  This
9403         avoids unnecessarily rejecting fonts named against XLFD rules.  See
9404         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
9405         for the description of the original problem.
9406         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
9407         by a hyphen in a font's name.
9409         Fix value of posn-at-pont in R2L lines
9410         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
9411         coordinate of -1, for a newline in a right-to-left line that
9412         overflowed into the left fringe.
9414 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
9416         (cl--copy-slot-descriptor): Copy the `props' alist as well
9417         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
9418         Rename from cl--copy-slot-descriptor.
9419         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
9421 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
9423         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
9424         (xterm-query-timeout): New var.
9425         (xterm--query): Use it.  Fallback on async method if we timeout before
9426         getting the first byte of the reply (bug#12354).
9428 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
9430         Spelling fixes
9432 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
9434         * doc/emacs/frames.texi (Frame Commands): Typo fix. (Bug#20946)
9436 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
9438         In strings, prefer plain ` and ' to \` and \'
9439         * lisp/allout.el (allout-insert-listified):
9440         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
9441         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
9442         (ls-lisp-string-lessp):
9443         * lisp/menu-bar.el (menu-bar-open):
9444         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
9445         * lisp/progmodes/compile.el (compile):
9446         * lisp/progmodes/etags.el (tags-loop-scan):
9447         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
9448         * lisp/subr.el (posn-actual-col-row):
9449         * lisp/term/pc-win.el (x-list-fonts):
9450         * lisp/textmodes/texinfmt.el (texinfmt-version):
9451         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
9452         * lisp/time.el (display-time-world-list):
9453         * lisp/tmm.el (tmm-menubar):
9454         * src/buffer.c (syms_of_buffer):
9455         * src/fileio.c (syms_of_fileio):
9456         Omit unnecessary and confusing backslash before quote.
9457         * lisp/erc/erc.el (erc-cmd-LASTLOG):
9458         * lisp/progmodes/flymake.el (flymake-fix-file-name):
9459         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
9460         Fix string that was intended to escape a backslash and not a quote.
9462 2015-06-30  Glenn Morris  <rgm@gnu.org>
9464         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
9466         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
9467         Replace hard-coded lists with wildcard + filter-out.
9469         * configure.ac (system-configuration-features): Add X11, NS.
9471         Improve reproducibility of generated loaddefs file.
9472         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
9473         Make the return value the modtime of the input file (if no autoloads).
9474         (update-directory-autoloads): In the "no autoloads" section,
9475         use "most recent modtime" rather than "current time".
9477 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9479         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic
9480         (Bug#20930)
9482 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
9484         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
9486         Add seq-min and seq-max
9487         Bump version number.
9488         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
9489         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
9491 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
9493         Make sure sleep-for always delays for as long as it's told
9494         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
9495         a loop, to ensure we always wait exactly the required amount of
9496         time.  (Bug#15990)
9498 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
9500         Fix pointer signedness glitch
9501         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
9503 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
9505         Don't block changes in mouse pointer inside 'track-mouse'
9506         * etc/NEWS:
9507         * doc/lispref/frames.texi (Mouse Tracking): Document the special
9508         effect of setting 'track-mouse' to 'dragging'.
9509         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
9510         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
9511         * lisp/mouse-drag.el (mouse-drag-throw):
9512         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
9513         to avoid changes in the shape of the mouse pointer.
9514         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
9515         pointer shape when do_mouse_tracking has the value of 'dragging',
9516         not just any non-nil value.  (Bug#20934)
9517         (syms_of_xdisp): DEFSYM 'dragging'.
9519 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9521         * lisp/isearch.el (isearch-toggle-word): Fix toggle
9523         * lisp/emacs-lisp/package.el (package-compute-transaction):
9524         Don't assume version sorting.
9526         * lisp/emacs-lisp/package.el (package--save-selected-packages):
9527         Don't save before init time, to avoid overwriting configurations.
9528         (Bug#20855)
9530 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
9532         Add cross references.
9533         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
9534         references.
9536 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
9538         cfengine.el: update for the upcoming CFEngine 3.7 release
9539         Update for the upcoming CFEngine 3.7 release: support macros and
9540         quoted context strings; reformat JSON; indent promise attributes 2
9541         units by default; give function parameter descriptions in the eldoc
9542         glue.
9543         * cfengine.el: Update version and docs and fix name.  Autoload
9544         `json-pretty-print'.  Support new features in 3.7.
9545         (cfengine-parameters-indent): Set default promise attribute indent to
9546         2 more than the promise itself.
9547         (cfengine3-macro-regex): New variable to match the new macro syntax.
9548         (cfengine3-font-lock-keywords): Use it to highlight macros.
9549         (cfengine3-indent-line): Use it to indent macros to column 0.
9550         (cfengine3-class-selector-regex): Update for the new quoted strings
9551         format.
9552         (cfengine3-reformat-json-string): New function to reformat a JSON
9553         string using `json-pretty-print'.
9554         (cfengine3-format-function-docstring): Use function parameter
9555         description if it's provided by the cf-promises syntax dump.
9557 2015-06-29  Michael R. Mauger  <michael@mauger.com>
9559         Cygwin emacsclient handles w32 file names
9561 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
9563         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice (bug#20925).
9565 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
9567         * doc/lispref/text.texi (Sticky Properties): Improve wording.
9568         (Bug#20924)
9570         Allow font names that end in "-NN", where NN is a number
9571         * src/font.c (font_load_for_lface): If the font-spec didn't match
9572         any available fonts, try again without interpreting trailing "-NN"
9573         as the font size.  For the description of the original problem, see
9574         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
9576         .gdbinit followup to changes in !USE_LSB_TAG
9577         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
9578         !USE_LSB_TAG, as Emacs no longer does.
9580 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
9582         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
9583         Otherwise `s p' of f and F will stomp on each other's value.  (Bug#20916)
9585 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
9587         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
9588         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
9590 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
9592         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point as additional guess
9594         * lisp/emacs-lisp/package.el (describe-package): Convert the guess to a string
9596 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
9598         apropos-library quoting fix
9599         * lisp/apropos.el (apropos-library): Quote library consistently
9600         with the rest of the quoting used by apropos.
9602         Clarify interpreter-mode-alist doc
9603         * lisp/files.el (interpreter-mode-alist):
9604         Reword to avoid confusing quoting that wasn't working anyway.
9606 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
9608         Sync with Tramp 2.2.12
9609         * doc/misc/trampver.texi:
9610         * lisp/net/trampver.el: Update release number.
9611         * test/automated/tramp-tests.el (tramp-test13-make-directory):
9612         Fix cleanup.
9614 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
9616         * lisp/isearch.el (isearch-mode): Don't char-fold regexps
9617         (bug#20913)
9619 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
9621         Bind grep-highlight-matches around the rgrep call
9622         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
9623         around the rgrep call (bug#20728).
9625         Put "--color" before the other options in grep-command
9626         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
9627         before the other options in grep-command (bug#20912).
9629         Add --color Grep option to the command dynamically
9630         * lisp/progmodes/grep.el (grep-template, grep-find-template):
9631         Update the description for <C>.  (Bug#20728)
9632         (grep-compute-defaults): Don't add the --color option to
9633         grep-options.  Only add it to grep-command.
9634         (grep-expand-keywords): Expand the env value opts into <C>.
9635         (grep-expand-template): Replace cf in the env with the opts list,
9636         that can include -i and --color.
9637         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
9638         "--color=always" from the template, because we don't have to.
9640 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
9642         cl-extra fixes for most-negative-fixnum
9643         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
9644         Don't mishandle an argument equal to most-negative-fixnum,
9645         whose absolute value equals itself.
9646         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
9648         Initialize cl--gensym-counter to 0
9649         Previously it was initialized to a random value, which made it
9650         harder to reproduce earlier Emacs runs.  The need for a random
9651         value went away when Emacs introduced and used the #: syntax for
9652         uninterned symbols (Bug#20862).
9653         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
9654         Document that cl--gensym-counter now starts with 0.
9655         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
9656         (cl--random-time): Move to near only remaining use.
9657         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
9659         Improve docstring for macroexp-let2
9660         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
9661         Improve as per suggestion by RMS in:
9662         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
9663         Also, rename args to match new doc string.
9665 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
9667         Fix VC test suite on MS-Windows
9668         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
9669         always starts with 3 slashes after the colon.
9670         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
9671         'w32-application-type' to invoke CVS on MS-Windows with properly
9672         formatted CVSROOT directory name.
9674         Add a new function w32-application-type
9675         * src/w32proc.c (Fw32_application_type): New function.
9677         Avoid error in TLS connections due to incorrect format
9678         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
9679         the call to 'error', instead of the unsupported %u.  Reported by
9680         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
9682 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9684         * lisp/replace.el (replace-search): Fix regexp case (bug#20901)
9686 2015-06-26  Leo Liu  <sdl.web@gmail.com>
9688         Fix indentation for with-output-to-string
9689         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
9690           `with-output-to-string' in elisp.
9691           Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string"
9692           This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
9694 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
9696         Minor corrections in ELisp manual
9697         * doc/lispref/nonascii.texi (Character Properties): Correct
9698         inaccuracies in description of values of the Unicode properties.
9700         Fix invisible mouse pointers on Windows.
9701         * src/w32fns.c: Include windowsx.h.
9702         (w32_wnd_proc): If the mouse moved and the mouse pointer is
9703         invisible, make it visible again even when the main (Lisp)
9704         thread is busy.
9705         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
9706         garbaging the frame have the input thread call SetCursor.
9708 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
9710         Provide invisible mouse pointers on Windows.  (Bug#6105) (Bug#12922)
9711         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
9712         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
9713         * src/w32term.c (w32_hide_hourglass): Handle
9714         f->pointer_invisible.
9715         (w32_toggle_invisible_pointer): New function.
9716         (w32_create_terminal): Add w32_toggle_invisible_pointer as
9717         toggle_invisible_pointer_hook for this terminal.
9719 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
9721         Doc fix for deletion commands
9722         'delete-char' does not respect the value of 'delete-active-region'.
9723         * doc/emacs/killing.texi (Deletion):
9724         Fix documentation for some single-char deletion commands.
9726         * doc/emacs/help.texi (Apropos):
9727         Improve documentation of 'apropos-do-all'.
9729         * doc/emacs/help.texi (Help Summary):
9730         Improve documentation of 'describe-mode'.
9732 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
9734         Fix submake dependency bug with .h files
9735         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
9736         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
9737         before the submake in $(libsrc) would spin off a subsubmake
9738         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
9740 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9742         * lisp/character-fold.el (character-fold-table): Reuse `table'
9744 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
9746         Translate undisplayable ‘ to `
9747         * doc/lispref/help.texi (Keys in Documentation):
9748         * lisp/international/mule-cmds.el (set-locale-environment):
9749         * lisp/term/w32console.el (terminal-init-w32console):
9750         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
9751         If ‘ is not displayable, transliterate it to `, not to '.  See:
9752         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
9754         Fix C99 incompatibilities in Cairo code
9755         * src/image.c (xpm_load) [USE_CAIRO]:
9756         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
9757         Fix pointer signedness problem.
9759 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
9761         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
9762         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
9763           `with-output-to-string' should have the same indent as `progn'.
9764           This is in line with the declaration of `with-output-to-string'.
9766 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
9768         Get ‘./configure; make -C src emacs’ to work
9769         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
9770         * lib-src/Makefile.in (../lib/libgnu.a):
9771         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
9773 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
9775         Fix GC bugs --with-wide-int and Qnil == 0
9776         Use the same alignment for the !USE_LSB_TAG case as for the
9777         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
9778         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
9779         once we changed the representation of symbols so that Qnil == 0.
9780         Problem reported by Eli Zaretskii (Bug#20862).
9781         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
9782         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
9783         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
9784         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
9785         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
9786         This optimization in the !USE_LSB_TAG case is no longer valid when
9787         symbols are represented via offsets.  Change the only use to
9788         assume that pointers might hide in objects.
9789         * src/lisp.h (alignas) [!USE_LSB_TAG]:
9790         Require support in this case, too.
9791         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
9792         This is OK, because the !USE_LSB_TAG case now applies only when
9793         Lisp_Object is wider than void *, so there's no longer any need
9794         to shift the offset.  Not shifting the offset means that
9795         symbol representations have the same alignment as pointers,
9796         which the GC assumes.
9798 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
9800         * doc/lispintro/emacs-lisp-intro.texi (Data types):
9801         Improve documentation of 'substring'.
9803 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
9805         * lisp/character-fold.el (character-fold-table): Fix table generation
9807 2015-06-24  Glenn Morris  <rgm@gnu.org>
9809         * nextstep/Makefile.in (all): Make it the first target.
9810         (../src/emacs${EXEEXT}): Add rule for making it.
9812 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
9814         * etc/NEWS: Fix mention to old function name
9816         * lisp/character-fold.el: New file (Bug#20887)
9817         (character-fold-to-regexp): New function.
9818         * lisp/replace.el (replace-search): Check value of
9819         `character-fold-search'.
9820         * lisp/isearch.el: Move character-folding code to
9821         character-fold.el
9822         (isearch-toggle-character-fold): New command.
9823         (isearch-mode-map): Bind it to "\M-sf".
9824         (isearch-mode): Check value of `character-fold-search'.
9826 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
9828         * lisp/subr.el (remove-from-invisibility-spec): Handle the t case
9829         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
9830         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
9832         * lisp/progmodes/xref.el: Avoid init-args in oref.
9833         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
9834         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
9836 2015-06-24  Glenn Morris  <rgm@gnu.org>
9838         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
9840 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
9842         * lisp/gnus/nnmaildir.el: Silence lexical warnings
9843         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
9844         functional style.
9845         (nnmaildir--update-nov): Remove unused var `numdir'.
9846         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
9847         (nnmaildir-request-group, nnmaildir-request-create-group)
9848         (nnmaildir-request-post, nnmaildir-request-move-article)
9849         (nnmaildir-request-accept-article, nnmaildir-active-number): Mark unused args.
9850         (nnmaildir-get-new-mail, nnmaildir-group-alist)
9851         (nnmaildir-active-file): Declare.
9852         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
9853         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
9854         `mark', `end', `new-mark', and `mark-sym'.
9855         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
9856         `nlist2'.
9857         (nnmaildir-request-expire-articles):
9858         Remove unused vars `article', `stop' and `nlist2'.
9859         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
9860         `end'.  Use nnmaildir--article when dyn-binding is needed.
9861         Give the value directly in the `let' for `del-mark', `del-action',
9862         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
9863         (nnmaildir-close-server): Declare those local vars that need to be
9864         dyn-bound.
9866 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
9868         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
9870         Port selection info fix to clang
9871         * src/keyboard.h (kbd_buffer_store_event_hold):
9872         Don't assume C11 semantics for alignof (Bug#20756).
9874         Fix bug that munged selection info
9875         On some optimizing C compilers, copying a structure did not
9876         copy the padding bytes between elements, and the type punning
9877         between struct input_data and struct selection_input_data did
9878         not work.  Change the C code to use a proper union type instead.
9879         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
9880         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
9881         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
9882         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
9883         (mark_kboards):
9884         Use union buffered_input_event, not struct input_event.
9885         (clear_event, deliver_input_available_signal, process_special_events):
9886         Remove unnecessary forward decls.
9887         (kbd_buffer_store_buffered_event): New function, mostly just the
9888         old kbd_buffer_store_event_hold, except its argument is of type
9889         union buffered_input_event, not struct input_event.
9890         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
9891         not needed otherwise.  Argument is now of type
9892         struct selection_input_event *, not struct input_event *.
9893         All callers changed.
9894         (clear_event): Arg is now of type union buffered_input_event *,
9895         not struct input_event *.  All callers changed.
9896         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
9897         (union buffered_input_event): New type.
9898         (kbd_buffer_store_event_hold): Now an inline function,
9899         defined here.
9900         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
9901         (struct input_event): Use it.
9902         * src/xselect.c (struct selection_event_queue):
9903         Make elements be of type struct selection_input_event,
9904         not struct input_event.
9905         (selection_input_event_equal): New static function.
9906         (x_queue_event): Use it.
9907         (x_queue_event, x_decline_selection_request)
9908         (x_selection_current_request, x_reply_selection_request)
9909         (x_handle_selection_request, x_handle_selection_clear)
9910         (x_handle_selection_event): Use struct selection_input_event,
9911         not struct input_event.  All callers changed.
9912         (x_convert_selection): Omit unused first arg.  All callers changed.
9913         (Fx_disown_selection_internal): Omit unnecessary union.
9914         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
9915         rather than rolling our own equivalent.  Prefer sie.kind when
9916         setting up that kind of structure.
9917         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
9918         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
9919         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
9920         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
9921         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
9922         (SELECTION_EVENT_TIME, x_handle_selection_event):
9923         Arg is now of type struct selection_input_event *)
9924         not struct input_event *.  All callers changed.
9926 2015-06-23  Glenn Morris  <rgm@gnu.org>
9928         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
9930 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
9932         * lisp/isearch.el: Fold many unicode characters to ASCII
9933         (isearch-character-fold-search, isearch--character-fold-extras)
9934         (isearch--character-fold-table): New variable.
9935         (isearch--character-folded-regexp): New function.
9936         (isearch-search-fun-default): Use them.
9937         * lisp/replace.el (replace-character-fold): New variable.
9938         (replace-search): Use it.
9939         * etc/NEWS: Document it.
9941 2015-06-23  Glenn Morris  <rgm@gnu.org>
9943         Check for an input event before showing a dialog box.  (Bug#20813)
9944         * lisp/subr.el (y-or-n-p):
9945         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
9946         as last-nonmenu-event.
9948 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
9950         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
9951         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
9952         (switch-to-prev-buffer, switch-to-next-buffer): Respect
9953         switch-to-visible-buffer independent of the windows history.
9955 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
9957         * src/keyboard.c (last_timer_event): Remove unused var.
9959 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
9961         * test/automated/package-test.el (package-test-update-listing):
9962         Fix test.
9964 2015-06-23  Glenn Morris  <rgm@gnu.org>
9966         Revert 2014-06-25 nextstep/Makefile change.
9967         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
9968         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
9969         not as an order-only prerequisite.
9971         * configure.ac (--with-ns): Enable by default on OS X.
9973 2015-06-23  Leo Liu  <sdl.web@gmail.com>
9975         Fix shell-for/backward-command to exclude spaces
9976         * lisp/shell.el (shell-forward-command, shell-backward-command):
9977           Handle the 'move case from re-search-forward/backward.
9978           fixes debbugs:20873
9980 2015-06-22  Juri Linkov  <juri@linkov.net>
9982         * lisp/replace.el (query-replace-read-from): Add separator to
9983         the local binding of text-property-default-nonsticky.  (Bug#20690)
9985         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
9986         (Bug#20785)
9988 2015-06-22  Ken Brown  <kbrown@cornell.edu>
9990         Enable CPU profiling on Cygwin
9991         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
9992         change that undefined this.
9993         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
9994         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
9995           Cygwin.
9997         Improve diagnostics of profiler-cpu-start
9998         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
9999         return -1 if the sampling interval is invalid.
10000         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
10001         fails.  (Bug#20843)
10003 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
10005         * lisp/emacs-lisp/package.el: Exclude packages by name
10006         (package-hidden-regexps): New variable.
10007         (package-menu--refresh): Use it.
10008         (package-menu-hide-package): New command.
10010         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding
10012 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
10014         Fix debug-timer-check on systems without HAVE_TIMERFD
10015         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
10016         the expired timers, since wait_reading_process_output doesn't.
10017         (debug_timer_callback): Enlarge the tolerance to 20 msec.
10019         Fix RCS crashes in vc-test
10020         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
10021         ports of 'ci' on MS-Windows by always passing the -t- switch.
10023 2015-06-22  Glenn Morris  <rgm@gnu.org>
10025         * doc/emacs/package.texi (Packages):
10026         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
10028         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
10030 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
10032         Port tests to help-quote-translation
10033         * test/automated/ert-x-tests.el (ert-test-describe-test):
10034         * test/automated/package-test.el (package-test-describe-package)
10035         (package-test-signed): Allow straight quotes, too.
10037 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
10039         Make find-function-on-key use the current window
10040         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
10041         Extract from `find-function-on-key', add a second argument.
10042         (find-function-on-key): Use it (bug#19679).
10043         (find-function-on-key-other-window)
10044         (find-function-on-key-other-frame): New commands.
10046 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
10048         Revert "Define `map-elt' as a generalized variable"
10049         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
10051 2015-06-21  Ken Brown  <kbrown@cornell.edu>
10053         Drop support for CPU profiling on Cygwin
10054         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
10055         (Bug#20843)
10057 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
10059         Fix some “nested” quoting confusion in doc strings
10060         * lisp/emacs-lisp/advice.el (ad-map-arglists):
10061         * lisp/kermit.el (kermit-clean-on):
10062         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
10063         * src/keyboard.c (Frecursive_edit):
10064         Use curved quotes when quoting text containing apostrophe,
10065         so that the apostrophe isn't curved in the output.
10067 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
10069         Define `map-elt' as a generalized variable
10070         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
10071         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
10072         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
10073         `setf' with `map-elt'.
10074         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
10076 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
10078         Improve error handling in tramp-adb.el
10079         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
10080         Improve error handling.
10082 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
10084         Reuse `alist-get' in map.el
10085         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
10086         elements.
10088 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
10090         Fix bytecomp-tests--warnings when $TMPDIR has a long name
10091         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
10092         Allow the warning to begin on the 3rd, not only 2nd line, which
10093         happens if temporary-file-directory has a very long name.
10095         Expect 2 icalendar tests to fail on MS-Windows
10096         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
10097         (icalendar-real-world): Make them expected failures on MS-Windows.
10099 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
10101         Improve port of settings UI to older displays
10102         * lisp/cus-start.el (standard): Don't assume curved quotes are
10103         easily distinguishable when users are tinkering with a setting
10104         that affects how curved quotes are generated.
10106         Fix quoting in electric-quote-mode doc string
10107         * lisp/electric.el (electric-quote-mode): Fix quoting.
10108         This is a fallout from the recent change introducing
10109         ‘help-quote-translation’.
10111         Spelling fix
10113         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
10115         * src/doc.c (syms_of_doc): Remove unused symbols.
10117 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
10119         In ‘window-state-put’ undedicate target window.  (Bug#20848)
10120         * lisp/window.el (window-state-put): Undedicate target window
10121         before putting STATE into it.  (Bug#20848)
10123 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
10125         Merge from origin/emacs-24
10126         a5e6f33 Fixes: debbugs:20832
10127         b9f02cf Fixes: debbugs:20832
10129 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
10131         Fix file-in-directory-p when the directory is UNC
10132         * lisp/files.el (file-in-directory-p): Support files and
10133         directories that begin with "//".  (Bug#20844)
10135 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
10137         (Bug#20832)
10138         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
10139         in the minibuffer.
10141 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
10143         (Bug#20832)
10144         * lisp/calendar/todo-mode.el (todo-show): Signal an error
10145         if buffer for adding new todo file is empty but modified.
10147 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
10149         (filepos-to-bufferpos): Further tweaks to the utf-16 code
10150         * lisp/international/mule-util.el (filepos-to-bufferpos):
10151         Fix typo.  Move non-exact check to the utf-16 branch (the only one
10152         affected).  Don't use byte-to-position for the utf-16 case.
10154 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
10156         Minor fixes in filepos-to-bufferpos
10157         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
10158         test for utf-8-emacs.  Exempt single-byte encodings from the
10159         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
10160         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
10161         UTF-16 encoded files for CR-LF EOLs.
10163 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
10165         Improve the optional translation of quotes
10166         Fix several problems with the recently-added custom variable
10167         help-quote-translation where the code would quote inconsistently
10168         in help buffers.  Add support for quoting 'like this', which
10169         is common in other GNU programs in ASCII environments.  Change
10170         help-quote-translation to use more mnemonic values: values are now the
10171         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
10172         traditional Emacs help-buffer quoting style `like this'.  Change the
10173         default behavior of substitute-command-keys to match what's done in
10174         set-locale-environment, i.e., quote ‘like this’ if displayable,
10175         'like this' otherwise.
10176         * doc/lispref/help.texi (Keys in Documentation): Document
10177         new behavior of substitute-command-keys, and document
10178         help-quote-translation.
10179         * doc/lispref/tips.texi (Documentation Tips):
10180         Mention the effect of help-quote-translation.
10181         * etc/NEWS: Mention new behavior of substitute-command-keys,
10182         and merge help-quote-translation news into it.
10183         When talking about doc strings, mention new ways to type quotes.
10184         * lisp/cedet/mode-local.el (overload-docstring-extension):
10185         Revert my recent change to this function, which shouldn't be
10186         needed as the result is a doc string.
10187         * lisp/cedet/mode-local.el (mode-local-print-binding)
10188         (mode-local-describe-bindings-2):
10189         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
10190         * lisp/cus-theme.el (describe-theme-1):
10191         * lisp/descr-text.el (describe-text-properties-1, describe-char):
10192         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
10193         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
10194         (eieio-help-constructor):
10195         * lisp/emacs-lisp/package.el (describe-package-1):
10196         * lisp/faces.el (describe-face):
10197         * lisp/help-fns.el (help-fns--key-bindings)
10198         (help-fns--compiler-macro, help-fns--parent-mode)
10199         (help-fns--obsolete, help-fns--interactive-only)
10200         (describe-function-1, describe-variable):
10201         * lisp/help.el (describe-mode):
10202         Use substitute-command-keys to ensure a more-consistent quoting
10203         style in help buffers.
10204         * lisp/cus-start.el (standard):
10205         Document new help-quote-translation behavior.
10206         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
10207         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
10208         (help-xref-url-regexp):
10209         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
10210         * lisp/wid-edit.el (widget-documentation-link-regexp):
10211         Also match 'foo', in case we're in a help buffer generated when
10212         help-quote-translation is ?'.
10213         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
10214         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
10215         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
10216         (Fsubstitute_command_keys): Document and implement new behavior.
10217         (Vhelp_quote_translation): Document new behavior.
10219 2015-06-18  Glenn Morris  <rgm@gnu.org>
10221         * lisp/cus-start.el (help-quote-translation): Add :version.
10223         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
10225 2015-06-18  Alan Mackenzie  <acm@muc.de>
10227         Make translation of quotes to curly in doc strings optional.
10228         src/doc.c (traditional, prefer-unicode): new symbols.
10229         (help-quote-translation): new variable.
10230         (Fsubstitute_command_keys): make translation of quotes dependent on
10231         `help-quote-translation'; also translate curly quotes back to ASCII
10232         ones.
10233         lisp/cus-start.el (top-level): Add a customization entry for
10234         `help-quote-translation'.
10236 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
10238         * lisp/emacs-lisp/package.el: Don't always propagate async errors
10239         (package--with-work-buffer-async): Only propagate the error if the
10240         callback returns non-nil.
10241         (package--download-one-archive): Return nil on the signature
10242         checking callback if we accept unsigned.
10243         (package--download-and-read-archives): Return non-nil on the
10244         archive download callback.
10246 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
10248         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
10249         * src/nsfns.m (Fx_create_frame):
10250         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
10251         image_cache_refcount before first x_default_parameter call.
10253 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
10255         Improve and extend filepos-to-bufferpos
10256         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
10257         Don't barf if F returns nil for some argument.
10258         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
10259         that every encoding of type 'charset' is single-byte.
10261 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
10263         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
10264         Properly delete packages.  (Bug#20836)
10266 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
10268         Update data files from just-released Unicode 8.0
10269         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
10270         status.
10271         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
10272         * admin/unidata/BidiMirroring.txt:
10273         * admin/unidata/BidiBrackets.txt:
10274         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
10276 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
10278         Document curved quotes a bit better
10279         * doc/emacs/basic.texi (Inserting Text):
10280         Mention C-x 8.  Change example to use curved quote rather
10281         than infinity, as this lets us give more ways to do it.
10282         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
10283         and quotation marks.
10284         * doc/emacs/text.texi (Quotation Marks):
10285         * doc/lispref/tips.texi (Documentation Tips):
10286         Add "curly quotes" and "curved quotes" to the index.
10287         * doc/emacs/text.texi (Quotation Marks):
10288         Give the C-x 8 shorthands for curved quotes.
10289         Cross-reference to "Quotation Marks".
10291 2015-06-17  Daiki Ueno  <ueno@gnu.org>
10293         Add pinentry.el for better GnuPG integration
10294         * lisp/pinentry.el: New file.
10295         * etc/NEWS: Add entry about pinentry.el.
10296         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
10297         (Bug#20550)
10299 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
10301         * lisp/emacs-lisp/package.el: Slightly better error reporting.
10303 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
10305         (define-minor-mode): Use setq-default for :global minor modes
10306         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
10307         Use setq-default for :global minor modes (bug#20712).
10309 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
10311         Avoid infloop in redisplay with tall images
10312         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
10313         down near ZV.  (Bug#20808)
10314         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
10315         instead of CHARPOS.
10317 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
10319         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
10320         Fix error reporting.
10322         * lisp/let-alist.el: move to lisp/emacs-lisp/let-alist.el
10324         * lisp/emacs-lisp/package.el: Revert buffer after any operation
10325         Call `package-menu--post-refresh' after any operation that changes
10326         the package database (`package-install' and `package-delete').  To
10327         avoid performance issues in large transactions, these functions
10328         add `post-refresh' to `post-command-hook' instead of calling it
10329         immediately.
10330         (package-menu--mark-or-notify-upgrades): New function.
10331         (list-packages): Add it to `package--post-download-archives-hook'.
10332         (package-menu--post-refresh): Lose the upgrade-checking code, add
10333         code to remove itself from `post-command-hook'.
10334         (package-install, package-delete): Add it to `post-command-hook'.
10335         (package-menu-execute): Don't call `package-menu--post-refresh'.
10337 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
10339         Add missing function xref-location-group for elisp-mode.
10340         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
10342 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
10344         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
10345         The behavior now matches the description in the manual.  (Bug#20783)
10347 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
10349         Update tutorials/TUTORIAL.cn
10350         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
10352 2015-06-17  Glenn Morris  <rgm@gnu.org>
10354         Generate char-script-table from Unicode source.  (Bug#20789)
10355         * admin/unidata/Makefile.in (AWK): New, set by configure.
10356         (all): Add charscript.el.
10357         (blocks): New variable.
10358         (charscript.el, ${unidir}/charscript.el): New targets.
10359         (extraclean): Also remove generated charscript.el.
10360         * admin/unidata/blocks.awk: New script.
10361         * admin/unidata/Blocks.txt: New data file, from unicode.org.
10362         * lisp/international/characters.el: Load charscript.
10363         * src/Makefile.in (charscript): New variable.
10364         (${charscript}): New target.
10365         (${lispintdir}/characters.elc): Depend on charscript.elc.
10366         (temacs$(EXEEXT)): Depend on charscript.
10368         * lisp/international/characters.el (char-script-table): Tweak
10369         some ranges to better match the source.  (Bug#20789#17)
10371         Remove "no-byte-compile: t" from a few files.
10372         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
10373         * lisp/obsolete/patcomp.el: No reason not to compile these.
10375 2015-06-16  Glenn Morris  <rgm@gnu.org>
10377         Fix some typos in copied Unicode data.  (Bug#20789)
10378         * lisp/international/characters.el (char-script-table):
10379         * lisp/international/fontset.el (script-representative-chars)
10380         (setup-default-fontset): Fix typos.
10382         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
10383         Don't print filename twice (it's in the prefix now).
10385         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
10386         No longer needed.
10388         Address a compilation warning.
10389         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
10390         Replace 't' with '_' in pcase.
10392         Address some check-declare warnings.
10393         * lisp/simple.el (tabulated-list-print):
10394         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
10395         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
10396         (ns-get-selection): Update declarations.
10398         Address some compilation warnings.
10399         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
10400         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
10401         Replace 't' with '_' in pcase.
10403         Address some compilation warnings.
10404         * lisp/face-remap.el (text-scale-adjust):
10405         * lisp/menu-bar.el (popup-menu-normalize-position):
10406         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
10407         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
10408         * lisp/emacs-lisp/generator.el (cps--transform-1):
10409         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
10410         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
10411         * lisp/progmodes/octave.el (octave-goto-function-definition)
10412         (octave-find-definition-default-filename):
10413         Replace 't' with '_' in pcase.
10415         * lisp/emacs-lisp/pcase.el (pcase--u1):
10416         Paper-over today's bootstrap failure.
10418 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
10420         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
10422         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
10424         Better confirmation message in `find-alternate-file' (Bug#20830)
10425         * lisp/files.el (find-alternate-file'): Improve the confirmation
10426         message to show the buffer name.
10428         Better docstring for null. (Bug#20815)
10429         * src/data.c (null): Improves the docstring, saying what null returns
10430         when OBJECT is non-nil.
10432 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
10434         * lisp/net/newst-treeview.el: Use lexical-binding.
10436         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
10437         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
10438         New auxiliary function, extracted from filepos-to-bufferpos.
10439         Make sure it terminates.
10440         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
10441         Add support for the `exact' quality.
10443 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
10445         Identify feeds in newsticker treeview with :nt-feed property
10446         * lisp/net/newst-treeview.el:
10447         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
10449 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
10451         * lisp/emacs-lisp/pcase.el: Improve docs and error handling
10452         (pcase--self-quoting-p): Floats aren't self-quoting.
10453         (pcase): Tweak docstring.
10454         (pcase--u1): Deprecate the t pattern.  Improve error detection for
10455         the nil pattern.
10456         (\`): Tweak docstring.  Signal an error for unrecognized cases.
10457         (bug#20784)
10459 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
10461         Fix infloop in filepos-to-bufferpos
10462         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
10463         offset calculation, and make it conditional on the eol-type of the
10464         file's encoding.  (Bug#20825)
10466 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
10468         Fix handling of image cache refcounts.  (Bug#20802)
10469         This backports Eli Zaretskii's solution of this problem for W32
10470         to X and NS.
10471         * src/nsfns.m (image_cache_refcount): Define unconditionally.
10472         (unwind_create_frame): If the image cache's reference count
10473         hasn't been updated yet, do that now.
10474         (Fx_create_frame): Set image_cache_refcount unconditionally.
10475         * src/xfns.c (image_cache_refcount): Define unconditionally.
10476         (unwind_create_frame): If the image cache's reference count
10477         hasn't been updated yet, do that now.
10478         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
10479         unconditionally.
10480         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
10481         X and NS.
10483 2015-06-16  Nils Ackermann  <nils@ackermath.info>
10485         Improve reftex-label-regexps default value
10486         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
10487         keyvals label regexp more strict to better cope with unbalanced
10488         brackets common in math documents.
10490 2015-06-16  Glenn Morris  <rgm@gnu.org>
10492         * doc/emacs/calendar.texi (Format of Diary File):
10493         Move "nonmarking" from here...
10494         (Displaying the Diary): ... to here.
10496         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
10497         Swap the order of these nodes.
10498         * doc/emacs/emacs.texi: Update detailed menu for the above change.
10500         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
10501         Update date of examples.
10502         (Diary, Format of Diary File): Move example from former to latter.
10503         Reduce duplication.
10505         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
10506         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
10507         Don't set no-byte-compile in the outputs.
10508         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
10510 2015-06-15  Glenn Morris  <rgm@gnu.org>
10512         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
10513         * doc/emacs/calendar.texi (Diary, Format of Diary File):
10514         Update for above diary-file change.
10515         : * etc/NEWS: Mention this.
10517         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
10518         (apply-macro-to-region-lines): Use user-error.
10520         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
10521         (pages-directory-for-addresses): Doc fixes.
10523 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
10525         * lisp/info.el: Cleanup bytepos/charpos issues
10526         * lisp/international/mule-util.el: Use lexical-binding.
10527         (filepos-to-bufferpos): New function.
10528         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
10529         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
10530         (Info-read-subfile, Info-search): Use 0-based file positions.
10532         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
10533         (perl--syntax-exp-intro-keywords): New var.
10534         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
10535         (bug#20800).
10537 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
10539         Fix quoting when making derived mode docstring
10540         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
10541         Nest regexp-quote inside format, not the reverse.
10542         Problem reported by Artur Malabarba in:
10543         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
10545 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
10547         Fix current-iso639-language on MS-Windows
10548         * lisp/international/mule-cmds.el (set-locale-environment):
10549         Downcase the locale name before interning it.  This is so the
10550         'current-iso639-language' on MS-Windows matches the ':lang'
10551         property of font-spec objects.
10553         Limit Symbola usage some more
10554         * lisp/international/fontset.el (setup-default-fontset): Limit
10555         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
10556         (Bug#20727)
10558 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
10560         * lisp/emacs-lisp/map.el (map-let): Better docstring.
10562 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
10564         Spelling fixes
10566 2015-06-14  Glenn Morris  <rgm@gnu.org>
10568         * lisp/version.el (emacs-repository-version-git): Demote errors.
10569         Check result is a hash.
10571 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
10573         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
10574         Catch errors that happen before going async.  (Bug#20809)
10576 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
10578         Another improvement of documentation of set-fontset-font
10579         * doc/lispref/display.texi (Fontsets): Say explicitly that
10580         CHARACTER can be a single codepoint.
10581         * src/fontset.c (Fset_fontset_font): Doc fix.
10583         Another improvement for symbol and punctuation characters
10584         * lisp/international/fontset.el (setup-default-fontset): Exclude
10585         from Symbola character ranges for symbols and punctuation covered
10586         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
10587         installed and where its coverage of symbols and punctuation is
10588         known to be good.  (Bug#20727)
10590 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
10592         Some generic support for multi-mode indentation.
10593                 * lisp/progmodes/prog-mode.el (prog-indentation-context): New
10594                 variable.
10595                 (prog-first-column, prog-widen): New convenience functions.
10597 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
10599         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
10600         Don't assume that `tabulated-list-printer' will leave point at the
10601         end of the buffer.  (Bug#20810)
10603 2015-06-13  Glenn Morris  <rgm@gnu.org>
10605         Tweaks for getting repository version; a bit more like it was for bzr.
10606         * lisp/version.el (emacs-repository-version-git)
10607         (emacs-repository--version-git-1): New functions,
10608         split from emacs-repository-get-version.
10609         (emacs-repository-get-version): Make the second argument meaningful.
10611         * lisp/startup.el (command-line-1): Inform if skipping relative
10612         file names due to deleted PWD.
10614         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
10615         when starup directory is missing.  (Bug#18851)
10616         (errno.h): Include it.
10618 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
10620         Better fix for documenting `X as "`X"
10621         Fix suggested by Stefan Monnier.
10622         * lisp/help-fns.el (help-fns--signature):
10623         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
10624         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
10625         Don't treat `X specially, as help-fns--signature now handles this.
10627 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
10629         Improve the default fontset when Symbola is not installed
10630         * lisp/international/fontset.el (setup-default-fontset): Only
10631         prepend Symbola and FreeMono font specs for symbols and
10632         punctuation; do not replace the default spec for them.  This
10633         should have better results when Symbola/FreeMono are not
10634         installed.  (Bug#20727)
10636         Improve documentation of ':lang' in font specs
10637         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
10638         use of the ':lang' property of the font spec.
10639         * doc/emacs/frames.texi (Fonts): Document the language names that
10640         can be in the STYLE part of XLFD.
10641         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
10642         property.
10644         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
10646         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
10648         Revert last change in fontset.el
10649         * lisp/international/fontset.el (setup-default-fontset): Revert
10650         the change "Configure Symbola font only if installed", since font
10651         search is evidently not yet set up when this function is called.
10652         (Bug#20727)
10654 2015-06-12  Glenn Morris  <rgm@gnu.org>
10656         Ensure early startup warnings are visible at the end.  (Bug#20792)
10657         * lisp/emacs-lisp/warnings.el (display-warning):
10658         If startup isn't complete, delay the warning.
10659         * lisp/startup.el (normal-top-level, command-line):
10660         Let display-warning automatically handle the needed delays.
10661         Run delayed-warnings-hook.
10663         * lisp/version.el (emacs-repository-get-version):
10664         Avoid calling external executable if possible.  (Bug#20799)
10666 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
10668         Document `X as "`X", not as "(` X)"
10669         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
10670         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
10672         * src/print.c (print_object): Minor simplification.
10674 2015-06-12  Glenn Morris  <rgm@gnu.org>
10676         * src/buffer.c (init_buffer): Add final newline to message.
10678 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
10680         Configure Symbola font only if installed
10681         * lisp/international/fontset.el (setup-default-fontset):
10682         Don't specify the Symbola font if it's not installed.
10683         Likewise for FreeMono.  (Bug#20727)
10685 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
10687         Configure Symbola font only for symbols and punctuation
10688         * lisp/international/fontset.el (setup-default-fontset): Leave
10689         only symbols and punctuation in the fontset setup for Symbola
10690         font; remove "Greek and Coptic" and "Cyrillic Supplement".
10691         (Bug#20798)
10693 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
10695         Fix crash in fontset-info
10696         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
10697         non-nil.
10699 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
10701         Port to Solaris 10 sparc + Sun C 5.13
10702         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
10703         Adjust to process.c change.
10704         * src/process.c (create_process): Declare volatile variables at
10705         top level of this function, so that they're less likely to be
10706         reused later in the function in the code executed by the vforked
10707         child.  Do not declare locals used only in the vforked child, as
10708         they might share memory with locals still live in the parent.
10709         Instead, use the same variables in the child as in the parent.
10710         This works around a subtle bug that causes a garbage collector
10711         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
10713 2015-06-12  Glenn Morris  <rgm@gnu.org>
10715         * lisp/startup.el (normal-top-level): Don't let *Messages* get
10716         a nil default-directory.
10718 2015-06-11  Glenn Morris  <rgm@gnu.org>
10720         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
10722         Some progress towards starting with PWD deleted.  (Bug#18851)
10723         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
10724         * lisp/startup.el (normal-top-level, command-line-1):
10725         * lisp/minibuffer.el (read-file-name-default):
10726         Handle default-directory being nil.
10728 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
10730         Fix "not a tty" bug on Solaris 10
10731         * configure.ac (PTY_OPEN): Define to plain 'open'
10732         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
10733         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
10734         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
10735         hosts that call grantpt which does its work via a setuid subcommand
10736         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
10737         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
10738         seems relevant in that case too.
10740 2015-06-11  Juri Linkov  <juri@linkov.net>
10742         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
10743         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
10744         (Bug#20785)
10746 2015-06-11  Glenn Morris  <rgm@gnu.org>
10748         * lisp/international/characters.el (char-script-table): Fix typo.
10750 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
10752         Fix quoting of help for functions with odd names
10753         While investigating Bug#20759, I discovered other quoting problems:
10754         C-h f mishandled characters like backslash and quote in function names.
10755         This fix changes the behavior so that 'C-h f pcase RET' now
10756         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
10757         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
10758         in src/lread.c's read1 function says that the backslash will be
10759         needed starting in Emacs 25, which implies that 'format' is
10760         correct and the old pcase documention was wrong to omit the backslash.
10761         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
10762         * lisp/help-fns.el (help-fns--signature):
10763         * lisp/help.el (help-add-fundoc-usage):
10764         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
10765         Use help--make-usage-docstring rather than formatting
10766         help-make-usage.
10767         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
10768         Return raw docstring.
10769         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
10770         raw docstring.  Take more care to distinguish raw from cooked dstrings.
10771         (describe-function-1): Let help-fns--signature substitute
10772         command keys.
10773         * lisp/help.el (help--docstring-quote): New function.
10774         (help-split-fundoc): Use it, to quote funny characters more
10775         systematically.
10776         (help--make-usage): Rename from help-make-usage, since this
10777         should be private.  Leave an obsolete alias for the old name.
10778         (help--make-usage-docstring): New function.
10779         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
10781 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
10783         * lisp/thingatpt.el (in-string-p): Revert last change,
10784         since in-string-p is not used in thingatpt.el but only from outside.
10785         Also, use lexical binding.
10787 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
10789         * lisp/let-alist.el (let-alist--deep-dot-search): Fix cons
10790         * test/automated/let-alist.el (let-alist-cons): Test it.
10792 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
10794         * src/syntax.c (Fbackward_prefix_chars): Reword docstring
10796 2015-06-10  Glenn Morris  <rgm@gnu.org>
10798         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
10800         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
10801         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
10802         * admin/gitmerge.el (gitmerge-commit-message):
10803         Exclude "skipped" messages from ChangeLog once again.
10805         Slight namespace cleanup for thingatpt.el.
10806         * lisp/thingatpt.el (thing-at-point--in-string-p)
10807         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
10808         (thing-at-point--read-from-whole-string): Rename from
10809         old versions without "thing-at-point--" prefix.
10810         Keep old versions as obsolete aliases.  Update all uses.
10812         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
10813         Move requiring of finder from here...
10814         (checkdoc-package-keywords): ... to here.
10816         Use 'user-error' in a few calendar files.
10817         * lisp/calendar/appt.el (appt-add):
10818         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
10819         (calendar-generate):
10820         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
10821         Replace 'error' with 'user-error'.
10823         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
10825         * lisp/files-x.el (add-file-local-variable):
10826         Special-case 'lexical-binding'.  (Bug#20641)
10828         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
10829         No longer autoload.
10830         * doc/misc/autotype.texi (Executables):
10831         Undocument executable-self-display.
10833         * lisp/progmodes/executable.el (executable-self-display):
10834         Use non-obsolete tail syntax.  (Bug#20779)
10835         (executable-self-display): Doc update.
10837 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
10839         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
10840         (finder-known-keywords): Silence byte-compiler.
10842 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
10844         * lisp/simple.el (eval-expression): Macroexpand before evaluating (bug#20730)
10846         * lisp/progmodes/sh-script.el: Better handle nested quotes
10847         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
10848         (sh-font-lock-quoted-subshell): Make sure double quotes within single
10849         quotes don't mistakenly end prematurely the surrounding string.
10851         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
10853 2015-06-09  Glenn Morris  <rgm@gnu.org>
10855         * test/automated/Makefile.in (ELFILES): Sort.
10857         * Makefile.in (SUBDIR_MAKEFILES):
10858         * lwlib/Makefile.in (WARN_CFLAGS):
10859         Use built-in Make functions rather than echo+sed.
10861 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
10863         Update char-script-table
10864         * lisp/international/characters.el (char-script-table): Update
10865         from Unicode 8.0 Draft.
10867         Improve font selection for punctuation and other symbols
10868         * src/fontset.c (face_for_char): If the character's script is
10869         'symbol', and the font used for ASCII face has a glyph for it, use
10870         the font for the ASCII face instead of searching the fontsets.
10871         This comes instead of NS-specific code that used the current
10872         face's font instead, which is now disabled due to undesirable
10873         consequences.  (Bug#20727)
10875 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
10877         Skip past `#' to find BEG
10878         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Skip
10879         past `#' to find BEG (bug#20771).
10880         * test/automated/elisp-mode-tests.el
10881         (elisp-completes-functions-after-hash-quote): New test.
10883 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
10885         Fix compilation warning/error in --without-x builds
10886         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
10887         code on HAVE_WINDOW_SYSTEM.
10889         Improve the default fontset wrt symbols
10890         * lisp/international/fontset.el (setup-default-fontset): Better
10891         setup of fontset-default for symbols: use Symbola and FreeMono.
10892         (Bug#20727)
10894 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
10896         Add new command checkdoc-package-keywords
10897         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag): New
10898           defcustom.
10899         (checkdoc-list-of-strings-p): Add doc.
10900         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
10901         non-nil, call `checkdoc-package-keywords'.
10902         (checkdoc-get-keywords): New defun.
10903         (checkdoc-package-keywords): New command. Warns if the current file
10904         has package.el-style keywords that aren't in `finder-known-keywords'.
10905         * etc/NEWS: Add entry.
10907 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
10909         Avoid crashes when key-binding is called from a timer
10910         * src/keymap.c (Fkey_binding): Don't segfault if called with an
10911         empty vector as KEY.  (Bug#20705)
10913         Fix a thinko in arc-mode.el
10914         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
10915         non-Zip64 case.  (Bug#20769)
10917 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
10919         * lisp/emacs-lisp/package.el (package-delete): Make interactive
10921 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
10923         checkdoc.el (checkdoc-file): New function
10924         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When
10925           `checkdoc-diagnostic-buffer' is set to "*warn*", print the warning
10926           to the standard output.
10927         (bug#20754)
10929 2015-06-07  Glenn Morris  <rgm@gnu.org>
10931         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
10933         * src/font.c (syms_of_font) <font-log>: Doc fix.
10935         Remove the obsolete leading "*" from some C doc strings.
10936         * src/coding.c (syms_of_coding):
10937         * src/font.c (syms_of_font): Remove leading "*" from docs.
10938         * lisp/cus-start.el (enable-character-translation): Add it.
10940 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
10942         Move gen_origin from program to data
10943         That way, 'make change-history' needs to change only ChangeLog.2,
10944         instead of having to change two files.
10945         * ChangeLog.2: Add commit info for range that this file covers.
10946         * Makefile.in (new_commit_regexp): New macro.
10947         (change-history-nocommit): Simplify, by putting what used to be
10948         the gen_origin value into the data (ChangeLog.2) rather than
10949         into the program (gitlog-to-emacslog).
10950         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
10951         the input file (e.g., ChangeLog.2) rather than by having a
10952         constant in the program.  Substitute it into the output.
10954 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
10956         Escape any quotes in the function name
10957         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
10958         function name (bug#20759).
10960 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
10962         Adapt 'struct timespec' to next release of MinGW runtime
10963         * nt/inc/ms-w32.h (struct timespec): Don't declare if
10964         __struct_timespec_defined is defined.
10966 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
10968         Merge from gnulib
10969         This incorporates:
10970         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
10971         2015-06-05 stdio: Don't redefine gets when using C++
10972         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
10973         2015-06-02 file-has-acl: fix build on Mac OS X 10
10974         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
10975         2015-06-01 pthread_sigmask: discount system version if a simple macro
10976         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
10977         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
10978         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
10979         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
10980         * lib/gnulib.mk: Regenerate.
10982 2015-06-06  Juri Linkov  <juri@linkov.net>
10984         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
10985         before calling grep-compute-defaults because now it affects the
10986         command lines computed in grep-compute-defaults. (Bug#20728)
10988 2015-06-06  Glenn Morris  <rgm@gnu.org>
10990         Address some compilation warnings.
10991         * lisp/international/mule-cmds.el (w32-get-console-codepage)
10992         (w32-get-console-output-codepage):
10993         * lisp/progmodes/elisp-mode.el (xref-collect-references):
10994         * lisp/version.el (cairo-version-string): Declare.
10995         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
10997 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
10999         Fix display when a font claims large values of ascent and descent
11000         This fixes bug#20628.
11001         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
11002         coordinate of a hollow cursor glyph when the original glyph's
11003         ascent is too small.
11004         (get_font_ascent_descent, normal_char_ascent_descent)
11005         (normal_char_height): New functions.
11006         (handle_single_display_spec, append_space_for_newline)
11007         (calc_pixel_width_or_height, produce_stretch_glyph)
11008         (calc_line_height_property): Use normal_char_ascent_descent and
11009         normal_char_height.
11010         (x_produce_glyphs): When font-global values of ascent and descent
11011         are too large, use per-character glyph metrics instead, if
11012         possible.  But don't allow the glyph row's ascent and descent
11013         values become smaller than the values from the metrics of the
11014         font's "normal" character.
11015         * src/xftfont.c (xftfont_draw):
11016         * src/w32font.c (w32font_draw): Correct the values of ascent and
11017         descent used to draw glyphless characters' hex code in a box.
11018         * src/xterm.c (x_draw_glyph_string_background):
11019         * src/xdisp.c (x_produce_glyphs):
11020         * src/w32term.c (x_draw_glyph_string_background):
11021         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
11022         to detect fonts whose global ascent and descent values are too
11023         large to be used in layout decision, and redraw the background
11024         when that happens.
11025         * src/dispextern.h (FONT_TOO_HIGH): New macro.
11026         (get_font_ascent_descent): Add prototype.
11027         * src/xterm.c (x_new_font):
11028         * src/w32term.c (x_new_font):
11029         * src/nsterm.m (x_new_font):
11030         * src/font.c (font_open_entity):
11031         * src/composite.c (composition_gstring_width): Use
11032         get_font_ascent_descent to obtain reasonable values for ascent and
11033         descent of a font.
11035 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
11037         Add assertion in adjust_point_for_property
11038         * src/keyboard.c (adjust_point_for_property): Add eassert for
11039         current buffer being shown in selected window.
11041 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
11043         Replace uses of in-string-p; make it obsolete
11044         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
11045         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
11047 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
11049         Fix Dired display of an explicit list of files by ls-lisp.el
11050         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
11051         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
11052         correct for when displaying individual files separately, not as
11053         part of listing a directory, in which case these values are not
11054         recomputed by 'ls-lisp-insert-directory', but used verbatim.
11056         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
11058 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
11060         Do not adjust point in a non-selected window
11061         * src/keyboard.c (command_loop_1): Do not adjust point when
11062         current buffer is not shown in selected window (Bug#20590).
11064         * etc/DEBUG: Mention 'maybe_call_debugger'
11066 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
11068         Fix a unit test for map.el
11069         * test/automated/map-tests.el (test-map-let): Fix the test to work
11070         with the new syntax of `map-let'.
11072         * lisp/emacs-lisp/map.el (map-let): Better docstring.
11074         Better syntax for the map pcase pattern
11075         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
11076         bindings of the form (KEY PAT) or SYMBOL. KEY is not quoted.
11078         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
11080         Fix a byte-compiler error in map-put and map-delete
11081         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
11082         called with a symbol.
11084 2015-06-05  Glenn Morris  <rgm@gnu.org>
11086         * admin/gitmerge.el (gitmerge-commit-message):
11087         Revert to including "skipped" messages in ChangeLog once again.
11089 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
11091         Use string> instead of equiv lambda with string<
11092         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
11093         lambda with string<.
11095 2015-06-05  Glenn Morris  <rgm@gnu.org>
11097         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
11098         (map--delete-array): Fix typo.
11100         * test/automated/map-tests.el: Replace "assert" with "should".
11102         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
11103         (SUBDIRS_REL): Derive from SUBDIRS.
11105         Tweak some build messages.
11106         * lisp/Makefile.in ($(lisp)/loaddefs.el):
11107         * lisp/cus-dep.el (custom-make-dependencies):
11108         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
11109         * lisp/international/titdic-cnv.el (batch-titdic-convert):
11110         Don't say how to compile.
11112 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
11114         Omit U+0332 COMBINING LOW LINE in previous change
11115         It turns out that it does not work on Ubuntu 15.04.
11117         Fix transliteration of Bahá'í months
11118         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
11119         Improve quality of Latin transliteration of Bahá'í month names.
11121         Fix curved quotes in a few places
11122         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
11123         The strings in question are not doc strings, so this partially
11124         undoes the recent change that assumed they were doc strings.
11125         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
11126         * lisp/info.el (Info-finder-find-node):
11127         Use curved quotes.
11128         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
11129         Also allow curved quotes in doc strings.
11131 2015-06-04  Glenn Morris  <rgm@gnu.org>
11133         * lisp/Makefile.in (AM_V_at): Add missing definition.
11135         * lisp/Makefile.in: Quieten output a bit.
11136         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
11137         Don't echo directories, since the commands we invoke print them.
11139         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
11140         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
11141         (SUBDIRS_SUBDIRS): New variables.
11142         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
11143         Remove.
11144         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
11145         (update-subdirs, compile-main, compile-clean):
11146         Replace "setwins" usage with new "SUBDIRS" variables.
11148         * lisp/vc/compare-w.el (compare-windows-get-window-function):
11149         Fix :version tag.
11151 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11153         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
11155         Undo removal of x_clear_area call on expose for GTK3 or cairo.
11156         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]: Clear
11157         exposed area.  (Bug#20677)
11159 2015-06-04  Glenn Morris  <rgm@gnu.org>
11161         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
11163         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
11165         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
11166         Rename from quail-lao-update-translation, since lao.el defines that.
11168 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
11170         Handle new-style advice in find-funct
11171         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
11172         Handle new-style advice.  Return the symbol's function definition.
11173         (Bug#20718)
11174         (find-function-library): Update accordingly.
11176 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
11178         Merge branch 'map'
11180         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
11182         Add new function string-greaterp
11183         * lisp/subr.el (string-greaterp): New function.  Also aliased to
11184         `string>'.
11185         * test/automated/subr-tests.el (string-comparison-test): Add unit
11186         tests for `string>'and `string<'.
11187         * src/fns.c (string-lessp): Better docstring.
11189 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
11191         Fix timezone-related functions on MS-Windows
11192         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
11193         'xputenv', even if no reallocation of tzvalbuf was necessary.
11194         This fixes a bug in timezone-related functions on MS-Windows.
11195         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
11197 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
11199         Don't pass raw directory name to 'error'
11200         * lisp/files.el (basic-save-buffer-2): Avoid format error if
11201         a directory name contains a string like "%s".
11203 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
11205         Override 'grep --color=always'
11206         * lisp/progmodes/xref.el (xref-collect-matches):
11207         Override --color=always in grep-find-template.
11209 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
11211         Fix error introduced recently in file-notify-tests.el
11212         * test/automated/file-notify-tests.el
11213         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
11214         (file-notify--deftest-remote): Revert previous patch, not
11215         necessary anymore.
11217 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
11219         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
11220         Starting from a display string after a newline, point went to the
11221         previous line.  Also, fix an inadvertent use of a buffer position
11222         with FETCH_BYTE.  (Bug#20701)
11224 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
11226         Instrument file-notify-test.el in order to catch hydra error.
11227         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
11228         Wrap body by `ignore-case', in order to trap non-local errors.
11230 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11232         Undo previous changes in non-toolkit scroll bar drawing.
11233         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
11234         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
11236 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
11238         * .gitignore: Also ignore doc/*/*/*.html and .ps.
11240         Support quotes 'like this' in info files
11241         This is possible when 'makeinfo --disable-encoding' is used
11242         in Texinfo 5.
11243         * lisp/calc/calc-help.el (calc-describe-thing):
11244         * lisp/gnus/gnus-art.el (gnus-button-alist):
11245         * lisp/info.el (Info-find-index-name):
11246         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
11247         Also support quotes 'like this'.
11248         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
11249         * lisp/finder.el (finder-font-lock-keywords): Remove var that
11250         hasn't been used in years, instead of bothering to fix its quoting.
11252 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
11254         * .gitignore: Remove !test/etags/html-src/*.html.
11255         It's no longer needed, since *.html was removed.  Sort.
11257 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
11259         Restore <D> instead of '.' in grep-find-template
11260         * lisp/cedet/semantic/symref/grep.el
11261         (semantic-symref-grep-use-template): Update a comment.
11262         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
11263         instead of '.' in grep-find-template (bug#20719).
11264         (rgrep): Pass nil as the directory to rgrep-default-command.
11265         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
11266         default value for DIR.
11267         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
11268         workaround.
11270 2015-06-02  Glenn Morris  <rgm@gnu.org>
11272         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
11274         * configure.ac (emacs_config_features): Add Cairo.
11276         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
11278 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
11280         Ensure, that autorevert works for remote files in file-notify-tests.el
11281         * test/automated/file-notify-tests.el (file-notify--test-desc):
11282         New defvar.
11283         (file-notify--test-remote-enabled)
11284         (file-notify-test00-availability, file-notify-test01-add-watch)
11285         (file-notify-test02-events): Use it.
11286         (file-notify--test-event-test): Check proper descriptor.
11287         (file-notify-test03-autorevert): Ensure, that
11288         `visited-file-modtime' has changed.
11289         (Bug#20392)
11291 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
11293         Add a pcase pattern for maps and `map-let' based on it
11294         * lisp/emacs-lisp/map.el (map-let): New macro.
11295         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
11296         * test/automated/map-tests.el: New test for `map-let'.
11298 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
11300         Reuse rgrep mechanics in xref-find-regexp
11301         * lisp/progmodes/grep.el (rgrep-default-command):
11302         Extract from `rgrep'.
11303         * lisp/progmodes/xref.el (xref-collect-references): Split from
11304         `xref-collect-matches'.  Only handle the case of symbol search.
11305         (xref-collect-matches): Instead of Semantic Symref, use
11306         `rgrep-default-command', to take advantage of its directory and
11307         file ignore settings.
11308         (xref--collect-match): Remove the last argument, leaving the
11309         regexp construction up to the caller.
11310         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
11311         Change to take the xref-collect- function to use as an argument.
11312         (elisp-xref-find): Update accordingly.
11313         * lisp/progmodes/etags.el (etags--xref-find-matches)
11314         (etags-xref-find): Same.
11316         Move xref-elisp-location to elisp-mode.el
11317         * lisp/progmodes/xref.el (xref-elisp-location)
11318         (xref-make-elisp-location, xref-location-marker): Remove here.
11319         (xref--xref): Don't limit the type of the location slot.
11320         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
11321         Define as a cl-struct here.
11322         (xref-location-marker): Move here.
11324 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
11326         Minor tweaks for .gitignore
11327         * .gitignore: Don't ignore versioned *.html and *.ps files.  Don't
11328         ignore admin/notes/tags that might be ignored as TAGS on
11329         case-insensitive filesystems.  (Bug#20710)
11331 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
11333         Generate curved quotes in ert doc
11334         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
11335         (ert-results-mode-menu)
11336         (ert-results-pop-to-backtrace-for-test-at-point)
11337         (ert-results-pop-to-messages-for-test-at-point)
11338         (ert-results-pop-to-should-forms-for-test-at-point)
11339         (ert-describe-test):
11340         Quote ‘like this’, not `like this', when generating doc strings
11341         and the like.
11342         * test/automated/ert-x-tests.el (ert-test-describe-test):
11343         Allow quoting ‘like this’.
11345 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
11347         Add test for previous commit
11348         * test/automated/replace-tests.el: New file.
11349         (query-replace--split-string-tests): Add test for previous commit.
11351         Avoid confusion in query-replace history when replacing NUL chars
11352         * lisp/replace.el (query-replace--split-string): New function.
11353         (query-replace-read-from): Rely on the 'separator' property
11354         instead of searching for the NUL character (Bug#20690).
11356 2015-06-02  Glenn Morris  <rgm@gnu.org>
11358         Merge from origin/emacs-24
11359         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
11361         * admin/gitmerge.el (gitmerge-commit-message):
11362         Exclude "skipped" messages from ChangeLog.
11364 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
11366         Sync with Tramp repository
11367         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
11368         messages.
11369         (tramp-handle-make-auto-save-file-name): When calling
11370         `make-auto-save-file-name' internally, make sure it uses Unix-like
11371         behavior, not Windows-like behavior.
11372         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
11373         the local case, because "chown" might fail on w32.
11374         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
11375         for XEmacs.
11377 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
11379         MS-Windows followup for batch stdout/stderr output changes
11380         * lisp/international/mule-cmds.el (set-locale-environment): In
11381         batch mode, use console codepages for keyboard and terminal
11382         encoding.  (Bug#20545)
11384         Update .gitattributes for DOS EOL files
11385         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
11386         CRLF end-of-line format.
11388         NS equivalents of xterm.c and w32term.c changes
11389         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
11390         glyph string background also when the font in use claims
11391         preposterously large global height value.  Helps to remove
11392         artifacts left from previous displays when glyphless characters
11393         are displayed as hex code in a box.
11394         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
11395         value for FRAME_LINE_HEIGHT, even when a font claims very large
11396         value for its height.
11398 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
11400         Avoid grave accent quoting in stderr diagnostics
11401         A few Emacs diagnostics go directly to stderr, and so can't easily
11402         contain curved quotes (as non-UTF-8 locales might mishandle them).
11403         Instead of bothering to add support for this rarity, reword the
11404         diagnostics so that they don't use grave accent to quote.
11405         * src/alloc.c (mark_memory): Fix comment.
11406         * src/buffer.c (init_buffer):
11407         * src/dispnew.c (init_display):
11408         * src/emacs.c (main, sort_args):
11409         * src/lread.c (dir_warning):
11410         * src/term.c (init_tty):
11411         * src/unexmacosx.c (unexec):
11412         * src/xfns.c (select_visual):
11413         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
11414         Reword stderr diagnostics to avoid quoting `like this'.
11415         * src/unexmacosx.c: Include errno.h.
11416         * src/xfns.c (select_visual): Encode value for locale.
11418 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
11420         Treat batch stdout/stderr like standard display
11421         Calls like (print FOO) could generate improperly encoded or
11422         hard-to-read output if FOO contains characters outside the system
11423         locale.  Fix this by treating batch stdout and stderr like
11424         interactive standard display, when it comes to transliterating and
11425         encoding characters (Bug#20545).
11426         * doc/emacs/mule.texi (Communication Coding):
11427         * doc/lispref/display.texi (Active Display Table):
11428         * doc/lispref/nonascii.texi (Locales):
11429         * etc/NEWS:
11430         * src/coding.c (syms_of_coding):
11431         * src/dispnew.c (syms_of_display):
11432         Document this.
11433         * src/print.c: Include disptab.h.
11434         (printchar_to_stream): New function, with much of the guts of the
11435         old Fexternal_debugging_output, except this one also uses the
11436         standard display table.
11437         (printchar, strout, Fexternal_debugging_output): Use it.
11439 2015-05-31  Glenn Morris  <rgm@gnu.org>
11441         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
11443 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
11445         Remove unused DEFSYMs
11446         Remove DEFSYMs that aren't used at the C level.  Also:
11447         * src/decompress.c (Qzlib_dll):
11448         * src/font.c (Qunicode_sip):
11449         * src/frame.c (Qtip_frame):
11450         * src/ftfont.c (Qserif):
11451         * src/gnutls.c (Qgnutls_dll):
11452         * src/xml.c (Qlibxml2_dll):
11453         Move from here ...
11454         * src/w32fns.c (syms_of_w32fns): ... to here,
11455         as these are used only on MS-Windows.
11457 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
11459         Use another default value for tramp-histfile-override
11460         * lisp/net/tramp-sh.el (tramp-histfile-override):
11461         Use ".tramp_history" as default.
11462         Fixes: debbugs:#20446
11464 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
11466         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
11468 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
11470         * etc/NEWS: Add an entry about map.el
11472         Improve the docstring of functions in map.el
11473         Since a map is not a data structure but a concept, adding information
11474         about the possible types of maps can be useful information.
11475         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
11476         each public function.
11478 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
11480         Faster implementation of map-empty-p
11481         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
11482         specific tests depending on the type of the map.
11484         * lisp/emacs-lisp/map.el: Better docstrings.
11486 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11488         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda
11490 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
11492         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
11494         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
11496         Fix a false negative in `map-elt' with alists and values being nil
11497         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
11498         found but its associated value is nil, do not return the default
11499         value.
11500         * test/automated/map-tests.el: Add a regression test.
11502 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
11504         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
11506         Do not signal an error when trying to delete a key from an array
11507         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
11508         the key is present to avoid signaling an error.
11509         * test/automated/map-tests.el: Add a test for deleting non-existing
11510         keys from maps.
11512         * lisp/emacs-lisp/map.el: Better docstring.
11514         Minor improvement in map-elt.
11515         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
11516         doing a lookup in arrays, but check the boundaries of the array
11517         instead.
11518         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
11519         and a negative integer as key.
11521 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
11523         * test/automated/map-tests.el: Refactoring of test methods.
11525         * test/automated/map-tests.el: Renamed from map-test.el.
11527 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
11529         * lisp/emacs-lisp/map.el (map-into): Better error message.
11531         * lisp/emacs-lisp/map.el: Removes byte-compilation warnings.
11533         Throw an error when converting a map into an unknown map type
11534         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is not valid.
11535         * test/automated/map-test.el: Add a regression test.
11537         New library map.el similar to seq.el but for mapping data structures.
11538         * test/automated/map-test.el: New file.
11539         * lisp/emacs-lisp/map.el: New file.
11541 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
11543         Make sure there's no explicit tag name
11544         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
11545         there's no explicit tag name (bug#20629).
11547 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
11549         Remove format2
11550         * src/editfns.c, src/lisp.h (format2): Remove.
11551         It is more trouble than it's worth, now that we have CALLN.
11552         This is just a minor refactoring.
11553         * src/buffer.c (Fkill_buffer):
11554         * src/dbusbind.c (XD_OBJECT_TO_STRING):
11555         * src/fileio.c (barf_or_query_if_file_exists):
11556         Adjust to format2 going away.
11558         Don't misencode C-generated messages
11559         Also, be more consistent about calls to 'Fmessage' vs 'message'.
11560         * src/alloc.c (Fgc_status):
11561         Prefer AUTO_STRING to build_string for Fmessage call.
11562         * src/data.c (Fmake_variable_buffer_local)
11563         (Fmake_local_variable, Fmake_variable_frame_local):
11564         * src/doc.c (store_function_docstring):
11565         Use Fmessage, not message, since the argument can contain
11566         non-ASCII characters, and this can cause the resulting message
11567         to be incorrectly encoded for the current environment.
11568         * src/fns.c (maybe_resize_hash_table):
11569         * src/xselect.c (x_clipboard_manager_save_all):
11570         Use message, not Fmessage, since Fmessage's power isn't needed here.
11571         * src/process.c (Fmake_network_process): Reword message to avoid %s.
11572         * src/xdisp.c (vmessage): Document restrictions on message contents.
11573         (message_nolog) [false]: Remove unused code.
11575         Use \r rather than ^M in string literals
11576         This is less likely to cause problems on platforms that
11577         use CRLF (or CR!) termination for lines.
11579         Update .gitattributes to match current sources
11580         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
11581         * .gitattributes: Accommodate tests that insist on DOS format.
11582         Remove test/automated/data/decompress/foo-gzipped.
11583         Add etc/e/eterm-color.
11585 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
11587         Document 'face-ignored-fonts'
11588         * doc/emacs/mule.texi (Modifying Fontsets): Document
11589         face-ignored-fonts.  (Bug#20628)
11591         Add etags test for the new -Q option
11592         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
11593         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
11594         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
11595         test-case changes below.
11596         * test/etags/ETAGS.good_6: New file.
11597         * test/etags/cp-src/x.cc: New file.
11598         * test/etags/Makefile (CPSRC): Add x.cc.
11599         (check): Add one more test, for -Q.
11601 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
11603         Use list for the tags completion table, not obarray
11604         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
11605         list instead of an obarray
11606         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
11607         (tags-completion-table): Combine those lists.
11608         (tags-completion-table): Update the docstring.
11610 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
11612         Restore EOL format testing in etags
11613         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
11614         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
11615         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
11616         test-case changes below.
11617         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
11618         * test/etags/cp-src/c.C (B): Add back stray CR character.
11619         * test/etags/c-src/dostorture.c: Add back.
11620         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
11622 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
11624         Declare Emacs on MS-Windows to be DPI-aware
11625         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
11626         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
11627         This avoids Windows entering compatibility mode for Emacs,
11628         which causes fonts to look less nice.
11630 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
11632         Improve Tramp traces.
11633         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
11634         * lisp/net/tramp.el (tramp-debug-message): Use it.
11636 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
11638         backup-buffer minor reworking of internals
11639         * lisp/files.el (backup-buffer): Rework to avoid a couple of
11640         unused locals inadvertently introduced in the previous change.
11642         backup-buffer now reports .emacs.d/%backup% ills
11643         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
11644         fails due to disk space exhaustion or whatever, do not pretend
11645         that it succeeded.  More generally, do a better job of checking
11646         for I/O failures, and limit the scope of the condition-case to
11647         just the operations where file errors should be caught and ignored
11648         (Bug#20595).  Also, don't bother trying to delete later backups if
11649         an earlier deletion fails, as this is a sign of trouble and it's
11650         better to stop when there's trouble.
11652         copy-file now truncates output after writing
11653         * src/fileio.c (Fcopy_file): Truncate output after writing rather
11654         than before.  This is more likely to work than truncation before
11655         writing, if the file system is out of space or the user is over
11656         disk quota (Bug#20595).  Also, check for read errors.
11658 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11660         * lisp/emacs-lisp/package.el: Don't load from parent dir
11661         (package-load-all-descriptors): Don't load descriptors from
11662         directories above the package directories.
11664 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
11666         Merge from gnulib
11667         This incorporates the following (Bug#20681):
11668         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
11669         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
11670         * lib/set-permissions.c: Copy from gnulib.
11672 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
11674         Improve Tramp traces.
11675         * lisp/net/tramp.el (tramp-call-process-region): New defun.
11676         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
11678 2015-05-29  Glenn Morris  <rgm@gnu.org>
11680         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
11682 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
11684         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
11685         The signature was changed in the cairo branch, merged on 2015-05-23.
11686         This oversight broke compiling only the non-toolkit X version.
11688 2015-05-29  Samer Masterson  <samer@samertm.com>
11690         * doc/lispref/os.texi: Update initial-buffer-choice docs.
11692 2015-05-29  Glenn Morris  <rgm@gnu.org>
11694         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
11695         Mark as an expected failure.
11697 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
11699         Change package test to look for curved quotes
11700         * test/automated/package-test.el (package-test-describe-package)
11701         (package-test-signed): Search for curved single quotes as well as
11702         for grave accent and apostrophe.
11704 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
11706         gnus-art.el: Re-revert last change
11707         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
11708         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
11710 2015-05-28  Samer Masterson  <samer@samertm.com>
11712         Show files when `initial-buffer-choice' is non-nil
11713         * startup.el (command-line-1): When Emacs is given a file as an
11714         argument and `initial-buffer-choice' is non-nil, display both the file
11715         and `initial-buffer-choice'.  For more than one file, show
11716         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
11717         commands out of the command line arg parser.
11718         (initial-buffer-choice): Clarify docstring.
11720 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
11722         Fix last commit
11723         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
11724         (gnulib module qcopy-acl): Add back, as it is harmless.  This
11725         minimizes differences wrt lib/gnulib.mk.
11727         Fix the MS-Windows build as followup to gnulib update
11728         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
11729         set-permissions.c, as they don't compile on MinGW.
11730         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
11732 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
11734         Revert my change to gnus-art.el
11735         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
11736         It wasn't that important, and it caused a Gnus build to fail.  See:
11737         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
11739         New minor mode Electric Quote
11740         This lets you easily insert quotes ‘like this’ by typing
11741         quotes `like this', and similarly you can easily insert
11742         quotes “like this” by typing quotes ``like this'' (Bug#20545).
11743         * doc/emacs/basic.texi (Inserting Text):
11744         * doc/emacs/modes.texi (Minor Modes):
11745         * etc/NEWS: Document it.
11746         * doc/emacs/text.texi (Quotation Marks): New section.
11747         * lisp/electric.el (electric-quote-comment)
11748         (electric-quote-string, electric-quote-paragraph):
11749         New custom vars.
11750         (electric--insertable-p)
11751         (electric-quote-post-self-insert-function): New functions.
11752         (electric-quote-mode, electric-quote-local-mode): New minor modes.
11753         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
11754         Add curved single quotes to electric-pair-text-pairs.
11755         Set electric-quote-string in this buffer.
11757         A few more doc string fixes (Bug#20385)
11759         Accept curved quotes in doc strings
11760         * lisp/info-look.el (info-lookup-guess-custom-symbol):
11761         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
11763         Generate curved quotes in pseudo-info nodes
11764         * lisp/info.el (Info-virtual-index-find-node)
11765         (Info-virtual-index, Info-apropos-find-node, info-apropos):
11766         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
11768         Fix minor quoting problems in doc strings
11769         Most of these fixes involve escaping grave accents that are
11770         actually intended to be grave accents, not left quotes.
11771         (Bug#20385)
11773         Support curved quotes in doc strings
11774         Emacs's traditional doc string style has been to quote symbols
11775         `like this'.  This worked well on now-obsolete terminals where
11776         ` and ' were symmetric quotes, but nowadays curved quotes
11777         ‘like this’ look better.  Support quoting the new way too.
11778         (Bug#20385)
11779         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
11780         ‘like-this’ as well as `like-this'.
11781         * etc/NEWS: Mention this.
11782         * lisp/cedet/mode-local.el (overload-docstring-extension)
11783         (mode-local-print-binding, mode-local-describe-bindings-2):
11784         * lisp/cus-theme.el (describe-theme-1):
11785         * lisp/descr-text.el (describe-text-properties-1, describe-char):
11786         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
11787         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
11788         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
11789         (eieio-help-constructor):
11790         * lisp/emacs-lisp/package.el (describe-package-1):
11791         * lisp/faces.el (describe-face):
11792         * lisp/help-fns.el (help-fns--key-bindings)
11793         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
11794         (help-fns--interactive-only, describe-function-1):
11795         (describe-variable):
11796         * lisp/help.el (describe-mode):
11797         * lisp/international/mule-cmds.el (describe-input-method)
11798         (describe-language-environment):
11799         * lisp/international/mule-diag.el (describe-character-set)
11800         (print-coding-system-briefly, list-input-methods)
11801         (list-input-methods-1):
11802         Insert curved quotes rather than grave accent and apostrophe.
11803         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
11804         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
11805         (checkdoc-proper-noun-region-engine):
11806         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
11807         (lisp-cl-font-lock-keywords-2):
11808         * lisp/finder.el (finder-font-lock-keywords):
11809         * lisp/gnus/gnus-art.el (gnus-button-alist):
11810         * lisp/help-fns.el (help-do-arg-highlight)
11811         (describe-function-1, describe-variable):
11812         * lisp/help-mode.el (help-xref-symbol-regexp)
11813         (help-xref-info-regexp, help-xref-url-regexp):
11814         * lisp/help.el (describe-mode):
11815         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
11816         * lisp/wid-edit.el (widget-documentation-link-regexp):
11817         Parse symbols quoted ‘like-this’ as well as `like-this'.
11818         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
11819         Add "‘" and "’" to electric-pair-text-pairs.
11820         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
11821         (elisp-completion-at-point, elisp--preceding-sexp):
11822         Also treat "‘" and "’" as quoting chars.
11824         substitute-command-keys now curves quotes
11825         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
11826         * doc/lispref/help.texi (Keys in Documentation):
11827         * etc/NEWS: Document this.
11828         * src/doc.c (Fsubstitute_command_keys): Implement it.
11830 2015-05-28  Glenn Morris  <rgm@gnu.org>
11832         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
11833         (rmail-summary-by-topic, rmail-summary-by-senders):
11834         No longer strip leading/trailing whitespace.
11836         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
11837         (f90-no-block-limit): Add "enum".  (Bug#20680)
11838         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
11839         New tests.
11841 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11843         * lisp/isearch.el (isearch--current-buffer): Give a default value.
11845         Un-revert changes mistakenly dropped by f9fabb2b
11847 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
11849         Merge from gnulib
11850         This incorporates:
11851         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
11852         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
11853         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
11854         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
11855         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
11856         2015-05-26 stdio: fix probe on mingw under gcc 5.1
11857         * admin/merge-gnulib (GNULIB_MODULES):
11858         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
11859         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
11860         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
11861         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
11862         Get latest versions from gnulib.
11863         * lib/get-permissions.c, lib/set-permissions.c: New files.
11864         * lib/gnulib.mk, m4/gnulib-comp.m4:
11865         Regenerate.
11866         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
11868 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
11870         Delete the old process in vc-setup-buffer
11871         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
11872         process here.
11873         (vc-do-command): Rather than here (bug#20608).
11875 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
11877         Avoid gratuitous delete-dups in face-at-point.
11878         * lisp/faces.el (face-at-point): Do not compute the properly
11879         ordered, duplicate-free list if only a single value is
11880         requested anyway.  (Bug#20519)
11882         Show the exact C-x 8 RET invocation in describe-char.
11883         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
11884         invocation instead of a template.  (Bug#20522)
11886 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
11888         * lisp/emacs-lisp/package.el: Don't erase tags on refresh
11889         (package-menu--post-refresh): Call `tabulated-list-print' with the
11890         UPDATE argument.  This only affects the refresh action, the revert
11891         action still erases tags.
11892         (package-menu-get-status): Change `assq' to `assoc'.
11893         (package-menu--mark-upgrades-1): New function.
11894         (package-menu--mark-upgrades-pending): New variable.
11895         (package-menu-mark-upgrades): Use them to delay marking until
11896         after refresh is done.
11897         (package-menu--post-refresh): Call mark-upgrades-1 if
11898         mark-upgrades-pending is non-nil.
11900 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
11902         Fix typo in commit 3953c4be2816537be95520605d45b866dc731f4b
11904 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11906         * lisp/isearch.el (isearch--current-buffer): New var
11907         (isearch-update): Set cursor-sensor-inhibit here.
11908         (isearch-done): Unset cursor-sensor-inhibit in the right buffer (bug#20532).
11910         Change inhibit-point-motion-hooks to t
11911         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
11912         to t and document it as obsolete.
11914 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
11916         Support ZIP files that use Zip64 extensions
11917         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
11918         format of central directory offsets used by Zip64 extensions.
11919         (Bug#20665)
11921 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
11923         New test tramp-test30-make-auto-save-file-name
11924         * tramp-tests.el (tramp-test30-make-auto-save-file-name): New test.
11925         (tramp-test31-special-characters)
11926         (tramp-test31-special-characters-with-stat)
11927         (tramp-test31-special-characters-with-perl)
11928         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
11929         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
11930         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
11931         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
11933         Improve tramp-handle-make-auto-save-file-name
11934         * tramp.el (tramp-auto-save-directory): Add :tags.
11935         (tramp-handle-make-auto-save-file-name): Let native
11936         `make-auto-save-file-name' use `auto-save-file-name-transforms',
11937         if `tramp-auto-save-directory' is not set.
11939 2015-05-27  Glenn Morris  <rgm@gnu.org>
11941         No longer set dired-directory in eshell.  (Bug#16477)
11942         * lisp/eshell/esh-mode.el (eshell-mode):
11943         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
11945         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
11947         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
11948         * lisp/progmodes/cc-mode.el (c-mode-help-address):
11949         Change to submit@debbugs.
11950         (c-mode-bug-package): New constant.
11951         (mail-position-on-field): Declare.
11952         (c-submit-bug-report): Insert X-Debbugs-Package header.
11953         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
11954         Mention debbugs.gnu.org.
11956 2015-05-26  Glenn Morris  <rgm@gnu.org>
11958         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
11959         (rmail-summary-by-recipients, rmail-summary-by-topic)
11960         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
11961         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
11963 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
11965         Handle curved quotes in info files
11966         * lisp/calc/calc-help.el (calc-describe-thing):
11967         * lisp/info.el (Info-find-index-name)
11968         (Info-try-follow-nearest-node, Info-fontify-node):
11969         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
11970         In info files, process quotes ‘like this’ the same way we process
11971         quotes `like this'.  This catches a few places we missed earlier.
11973 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
11975         xref-prompt-for-identifier: Use a list value
11976         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
11977         value, to be interpreted as a list of commands.
11978         (xref--prompt-p): New function.
11979         (xref--read-identifier): Use it.
11981 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
11983         Teach MS-Windows font back-end return per-glyph ascent/descent
11984         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
11985         values.
11986         * src/w32font.c (w32font_text_extents): Compute, cache, and
11987         accumulate per-glyph ascent and descent values, instead of copying
11988         global values from the font.  If the values are not available from
11989         the font data, i.e., non-TTF fonts, fall back on font-global values.
11990         (compute_metrics): Compute and return per-glyph ascent and descent
11991         values, if returned by GetGlyphOutlineW, falling back on
11992         font-global values.  (Bug#20628)
11993         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
11994         height of rectangle to be drawn, to be compatible with
11995         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
11996         box, when per-glyph ascent/descent values are used.
11998 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
12000         * lisp/emacs-lisp/tabulated-list.el: Don't sort without sorter
12001         (tabulated-list-print): Don't sort if sorter is nil
12003 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
12005         Fix Bug#20621
12006         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
12007         are major modes which set `auto-save-mode' on their own rules;
12008         Tramp shall not overwrite such settings.
12009         (Bug#20621)
12011 2015-05-26  Glenn Morris  <rgm@gnu.org>
12013         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
12014         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
12015         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
12016         Doc updates.
12017         (vc-dir-mode): Remove unnecessary autoload.
12019 2015-05-25  Philipp Stephani  <phst@google.com>
12021         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52
12022         (xterm--extra-capabilities-type): Add `getSelection'.
12023         (xterm--query): Add `no-async' argument.
12024         (xterm--init-activate-get-selection): New function.
12025         (terminal-init-xterm): Use it.
12026         (xterm--init-modify-other-keys): Rename from
12027         terminal-init-xterm-modify-other-keys.
12028         (xterm--init-bracketed-paste-mode): Rename from
12029         terminal-init-xterm-bracketed-paste-mode.
12030         (xterm--init-activate-set-selection): Rename from
12031         terminal-init-xterm-activate-set-selection.
12032         (xterm--selection-char): New function.
12033         (gui-backend-set-selection): Use it.  Use the &context to only apply
12034         this method in terminals where we enabled the feature.
12035         (gui-backend-get-selection): New method.
12037 2015-05-25  Daniel Colascione  <dancol@dancol.org>
12039         Add C-language keyword constants to C++
12040         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
12041         keyword constants to C++.
12043 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
12045         Make TAGS files more portable to MS-Windows
12046         * etc/NEWS: Document this.
12047         * lib-src/etags.c (readline_internal) [DOS_NT]:
12048         Don't treat CRs differently from GNUish hosts.
12049         * lisp/progmodes/etags.el (etags-goto-tag-location):
12050         Adjust STARTPOS to account for the skipped CRs in dos-style files.
12052 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
12054         Improve fix of debbugs:20634 in tramp-sh.el
12056 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
12058         Fix a typo in last commit
12059         * lib-src/etags.c (C_entries): Fix a typo.
12060         * test/etags/ETAGS.good_1:
12061         * test/etags/ETAGS.good_2:
12062         * test/etags/ETAGS.good_3:
12063         * test/etags/ETAGS.good_4:
12064         * test/etags/ETAGS.good_5:
12065         * test/etags/CTAGS.good: Update due to the change in etags.c.
12067         Fix tagging of class members in C-like OO languages
12068         * lib-src/etags.c (longopts): Add new option --class-qualify and
12069         its shorthand -Q.
12070         (print_help): Add help text for --class-qualify.
12071         (main): Add handling of -Q.
12072         (consider_token, C_entries) <omethodparm>: Append argument types
12073         to Objective C methods only if --class-qualify was specified.
12074         Qualify C++, Objective C, and Java class members with their class
12075         names only if --class-qualify was specified.
12076         (C_entries): If --class-qualify was not specified, remove the
12077         namespace and class qualifiers from tag names of C++ methods.
12078         This allows to use etags.el as xref back-end without the
12079         tag-symbol-match-p method, which greatly increases the number of
12080         potentially false positives.  (Bug#20629)
12081         * doc/man/etags.1: Update to document the new --class-qualify
12082         option.
12083         * test/etags/ETAGS.good_1:
12084         * test/etags/ETAGS.good_2:
12085         * test/etags/ETAGS.good_3:
12086         * test/etags/ETAGS.good_4:
12087         * test/etags/ETAGS.good_5:
12088         * test/etags/CTAGS.good: Update due to changes in etags.c.
12090 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
12092         (cl-generic-define-method): Side effects are evil (bug#20644)
12093         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
12094         cons-cells that might be used as keys in an `equal' hash-table.
12096 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12098         Make erc timestamps visible again
12099         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec): Make
12100         timestamps visible again (if requested).
12102 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
12104         Fix last change in etags.c that broke tagging compresed files
12105         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
12106         quoting of decompression shell command for MS-Windows/MS-DOS.
12108 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
12110         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist
12111         (Bug#20639)
12113 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
12115         Fix typo in 89035e247591c8d688fce922b7079881aa110f33
12117 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
12119         Fix IPv6 addresses in Tramp
12120         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
12121         Add sqare brackets around host name.
12123 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
12125         Inhibit `epa-file-handler' in Tramp
12126         (Bug#20634)
12127         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
12128         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
12129         `epa-file-handler'.
12131 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
12133         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring
12134         (pcase-let): Document the behavior in case the pattern doesn't match.
12136 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
12138         * lisp/emacs-lisp/tabulated-list.el: New optional print method
12139         (tabulated-list-print): New optional argument, UPDATE.  If
12140         non-nil, the list is printed by only adding and deleting the
12141         changed entries, instead of erasing the whole buffer.  This method
12142         is much faster when few or no entries have changed.
12143         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
12144         * etc/NEWS: Document it.
12146         * lisp/emacs-lisp/tabulated-list.el: Improve printing
12147         (tabulated-list--get-sorter): New function.
12148         (tabulated-list-print): Restore window-line when remember-pos is
12149         passed and optimize away the `nreverse'.
12151 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
12153         Simpilify etags TEX mode scanning
12154         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
12155         Remove static vars.
12156         (TeX_commands): Deduce escapes here instead.
12157         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
12158         This removes the need for a reset_input call.
12160         Improve etags I/O error reporting
12161         * lib-src/etags.c:
12162         Don't include sys/types.h and sys/stat.h; no longer needed.
12163         (infilename): New static var.
12164         (process_file_name): Don't call 'stat'.  Instead, just open the
12165         file for reading and report any errors.  Don't bother making
12166         a copy of the file argument; it's not needed.  Be more careful to
12167         use the failing errno when reporting an error.
12168         Quote the real name better (though no perfectly)
12169         when passing it to the shell.
12170         (reset_input): New function, which reports I/O errors.
12171         All uses of 'rewind' changed to use this function.
12172         (perhaps_more_input): New function, which also checks for
12173         I/O errors.  All uses of 'feof' changed to use this function.
12174         (analyze_regex): Report an error if fclose fails.
12175         (readline_internal): Report an error if getc fails.
12176         (etags_mktmp): Return an error if close fails.
12178         etags.c: avoid side effects in 'if'
12179         * lib-src/etags.c (process_file_name, Perl_functions)
12180         (TEX_decode_env): Hoist side effects into previous statement.
12182         .gitignore tweaks
12183         * .gitignore: Ignore all *.stamp files.  Sort.
12184         Ignore [0-9]*.txt (commonly used name for git patches)
12185         and /vc-dwim-log-* (vc-dwim temporary).
12187 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
12189         Fix last change in etags.c, which failed the test suite
12190         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
12191         before the last change.
12193 2015-05-23  Glenn Morris  <rgm@gnu.org>
12195         Remove charset map files from repository, generate in first bootstrap
12196         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
12197         (all): Create the stamp file.
12198         (extraclean): Delete the stamp file.
12199         * src/Makefile.in (lispintdir, charsets): New variables.
12200         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
12201         New rules.
12202         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
12203         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
12204         * etc/charsets/*.map: Remove from repository.
12206 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
12208         Cleanup etags.c to use locale-independent code
12209         Although this doesn't alter behavior (as etags doesn't use
12210         setlocale), the new version is more clearly locale-independent and
12211         the executable is a bit smaller on my platform.
12212         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
12213         Include <c-ctype.h> instead of <ctype.h>.
12214         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
12215         (begtk, midtk):
12216         Remove; no longer needed.
12217         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
12218         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
12219         c_islower, c_tolower, respectively.
12220         (notinname, begtoken, intoken, endtoken): Rewrite as functions
12221         instead of macros, and initialize the tables at compile-time
12222         rather than at run-time.
12224         Put default action first in src/Makefile
12225         * src/Makefile.in (all): Put this rule before lisp.mk.
12226         That way, plain 'make' works in the src directory again.
12228 2015-05-23  Glenn Morris  <rgm@gnu.org>
12230         * Makefile.in: Fix extraclean rule.
12231         (extraclean_dirs): New.
12232         (extraclean): Use it.
12234 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
12236         Avoid compiler warning in image.c on MS-Windows
12237         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
12238         warning in image.c.
12240 2015-05-23  Glenn Morris  <rgm@gnu.org>
12242         Fix --without-toolkit-scroll-bars builds.
12243         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
12244         Add new argument to x_clear_area1.
12245         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
12246         Update x_clear_area arguments.
12248         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
12249         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
12250         Change to included version.
12251         (LOCAL, local, totalclean): Remove.
12252         (extraclean): Delete all generated files.
12254 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
12256         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume CVS/Entries exists.
12258         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
12260         tags-completion-at-point-function: Don't trust the find-tag function
12261         * lisp/progmodes/etags.el (tags-completion-at-point-function):
12262         Don't trust the find-tag function.
12264 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
12266         Pacify --enable-gcc-warnings
12267         * src/frame.h (x_query_color): Remove redundant extern decl.
12268         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
12269         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
12270         (ftcrfont_text_extents, ftcrfont_draw):
12271         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
12272         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
12273         (x_ins_del_lines, frame_highlight, frame_unhighlight)
12274         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
12275         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
12276         (x_update_window_begin, x_connection_closed)
12277         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
12278         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
12279         (*x_gc_get_ext_data, x_extension_initialize)
12280         (x_cr_accumulate_data):
12281         Remove redundant static decl.  Many of these GCC doesn't complain
12282         about, but we might as well clean out the duplication while we're
12283         in the neighborhood.
12284         * src/xterm.c (x_fill_trapezoid_for_relief):
12285         Remove decl of nonexistent function.
12287 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
12289         Replace gui-method macros with cl-generic with &context
12290         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
12291         (gui-method-declare, gui-call): Remove.
12292         (frame-creation-function): Use cl-defgeneric.
12293         (make-frame): Adjust callers.
12294         * lisp/menu-bar.el (menu-bar-edit-menu):
12295         Use gui-backend-selection-exists-p.
12296         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
12297         (gui-backend-get-selection): New cl-generic to replace
12298         gui-get-selection method.
12299         (gui-backend-set-selection): New cl-generic to replace
12300         gui-set-selection method.
12301         (gui-selection-owner-p): New cl-generic to replace
12302         gui-selection-owner-p method.
12303         (gui-backend-selection-exists-p): New cl-generic to replace
12304         gui-selection-exists-p method.  Adjust all callers.
12305         * lisp/server.el (server-create-window-system-frame): Don't ignore
12306         window-system spec even when unsupported.
12307         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
12308         * lisp/startup.el (handle-args-function, window-system-initialization):
12309         Use cl-defgeneric.
12310         (command-line): Adjust calls accordingly.
12311         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
12312         a window-system-initialization method.
12313         (handle-args-function, frame-creation-function): Use cl-defmethod.
12314         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
12315         (gui-get-selection): Use cl-defmethod on the new functions instead.
12316         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
12317         a gui-backend-get-selection method.
12318         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
12319         Use cl-defmethod on the new functions instead.
12320         (msdos-window-system-initialization): Turn into
12321         a window-system-initialization method.
12322         (frame-creation-function, handle-args-function): Use cl-defmethod.
12323         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
12324         a window-system-initialization method.
12325         (handle-args-function, frame-creation-function): Use cl-defmethod.
12326         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
12327         (gui-get-selection): Use cl-defmethod on the new functions instead.
12328         * lisp/term/x-win.el (x-window-system-initialization): Turn into
12329         a window-system-initialization method.
12330         (handle-args-function, frame-creation-function): Use cl-defmethod.
12331         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
12332         (gui-get-selection): Use cl-defmethod on the new functions instead.
12333         * lisp/term/xterm.el (xterm--set-selection): Turn into
12334         a gui-backend-set-selection method.
12335         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
12336         (Fns_selection_owner_p): Remove unused arg `terminal'.
12337         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
12339 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
12341         Revert "Fix etags Bug#20629 that broke C++ support."
12342         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
12344 2015-05-23  Jan D  <jan.h.d@swipnet.se>
12346         Fix etags Bug#20629 that broke C++ support.
12347         * etags.el (etags-xref-find-definitions-tag-order): Revert commit
12348         from Sun May 10 (Bug#20629).
12350         Merge branch 'cairo'.
12351         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
12352         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
12354         Merge branch 'master' into cairo
12356         Fixes to compile cairo branch without cairo.
12357         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
12358         first argument.
12359         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
12360         USE_CAIRO.
12362 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
12364         * lisp/emacs-lisp/package.el: Always update selected-packages
12365         (package--update-selected-packages): New function.
12366         (package-menu-execute): Use it before starting the transaction,
12367         this way the list of selected packages is updated even when the
12368         transaction fails.
12369         (package-menu--perform-transaction): Don't edit selected-packages.
12371 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
12373         Fix etags reading of compressed files
12374         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
12375         Include fcntl.h, for O_CLOEXEC.
12376         (process_file_name): Don't use 'popen', whose streams cannot be
12377         rewound.  Instead, uncompress the file to a temporary file,
12378         created by 'etags_mktmp', and read from that as usual.
12379         (etags_mktmp): New function.
12380         * test/etags/ETAGS.good_1:
12381         * test/etags/ETAGS.good_2:
12382         * test/etags/ETAGS.good_3:
12383         * test/etags/ETAGS.good_4:
12384         * test/etags/ETAGS.good_5: Update to be consistent with latest
12385         changes in etags.c regarding reading compressed files.
12387         Improve documentation of 'set-fontset-font'
12388         * doc/lispref/display.texi (Fontsets): Document the value of nil
12389         for the 3rd argument of 'set-fontset-font'.
12391         Fix documentation of forward-line
12392         * src/cmds.c (Fforward_line): Clarify the return value if the line
12393         at end of accessible portion of the buffer has no newline.
12394         * doc/lispref/positions.texi (Text Lines): Document what happens
12395         if the line at end of accessible portion of buffer has no newline.
12396         (Bug#20587)
12398 2015-05-22  Glenn Morris  <rgm@gnu.org>
12400         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
12402         * admin/charsets/mapconv (LC_ALL): Set to C.
12404         * Makefile.in: Add admin/charsets into top-level clean rules.
12405         (clean): Add admin/charsets.
12406         (maybeclean_dirs): New variable.
12407         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
12409         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
12411 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
12413         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc
12415 2015-05-22  Glenn Morris  <rgm@gnu.org>
12417         Generate admin/charsets Makefile via configure, and make more portable.
12418         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
12419         (admin/charsets/Makefile): Generate it.
12420         * admin/charsets/Makefile.in: Rename from Makefile.
12421         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
12422         New variables, set by configure.
12423         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
12424         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
12425         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
12426         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
12427         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
12428         (all): Declare PHONY.
12429         (local): New PHONY target.
12430         (map_template): New template.  Use to define short PHONY aliases.
12431         (*.map): Add directory prefixes to targets and prerequisites.
12432         Respect make verbosity.
12433         (JISC6226.map): Replace non-portable sed append without newline.
12434         (install): Remove rule.
12435         (clean): Only delete temporary sedscript.
12436         (bootstrap-clean, distclean, maintainer-clean, extraclean)
12437         (totalclean): New PHONY rules.
12438         * admin/charsets/mapconv (BASE): Replace basename with expr.
12439         (FILE): Add "mapfiles" subdirectory.
12440         (AWK): New variable.  Use throughout in place of "awk".
12441         (main): Use "gunzip -c" in place of "zcat".
12442         Don't leave whitespace before "p", for older sed.
12443         * admin/charsets/mapfiles/PTCP154: Add final newline,
12444         to make older sed versions happy.
12446 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
12448         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
12449         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
12450         (auto-revert-notify-watch-descriptor): Use defvar-local.
12451         (find-file-hook, auto-revert-tail-mode, )
12452         (auto-revert-notify-add-watch): Use setq-local.
12453         (auto-revert-notify-add-watch): Don't call make-local-variable on
12454         kill-buffer-hook (bug#20601).
12456 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
12458         Change defgeneric so it doesn't completely redefine the function
12459         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
12460         previously defined methods.
12461         (cl-generic-define-method): Let-bind purify-flag instead of using `fset'.
12462         (cl--generic-prefill-dispatchers): Only define during compilation.
12463         (cl-method-qualifiers): Remove redundant alias.
12464         (help-fns-short-filename): Silence byte-compiler.
12465         * test/automated/cl-generic-tests.el: Adjust to new defgeneric semantics.
12467 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
12469         (package-menu-execute): Remove reference to remove-dups
12471 2015-05-21  kwhite  <kwhite@gnu.org>
12473         * lisp/erc/erc.el: Hide network/channel messages
12474         (erc-network-hide-list, etc-channel-hide-list): New lists to define
12475         message types per network/channel.
12476         (erc-add-targets): New function to parse list of targets
12477         (erc-hide-current-message-p): Modified to check for new targets
12479 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
12481         Don't quote nil and t in doc strings
12482         This is as per "Tips for Documentation Strings" in the elisp manual.
12483         For consistency, do the same in diagnostics and comments.
12485 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
12487         Fix a minor problem with mouse-face on mode line
12488         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
12489         mouse face also if the mouse pointer hovers above mode-line glyphs
12490         that don't come from any Lisp string.  (Bug#20620)
12492 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
12494         * lisp/emacs-lisp/package.el: Fix selected-package logic
12495         (package-menu-execute): Mark as selected all non-upgrade packages
12496         being installed.
12497         (package-menu--perform-transaction): Don't mark anything.
12499         * lisp/emacs-lisp/package.el: Mode-line progress report
12500         (package-menu--transaction-status): New variable.
12501         (package-menu-mode, package-menu--perform-transaction): Use it.
12503         * lisp/emacs-lisp/package.el: Better transaction messages
12504         (package-menu--partition-transaction): New function.
12505         (package-menu--prompt-transaction-p, package-menu-execute): Use
12506         it.
12507         (package-menu--perform-transaction): Don't do any messaging.
12509         * lisp/emacs-lisp/package.el: Revert async package transactions
12510         (package-menu-async): Update doc.
12511         (package-install-from-archive, package-download-transaction)
12512         (package-install, package-menu--perform-transaction)
12513         (package-menu-execute): Remove asynchronous functionality.
12515 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
12517         Revert doc string changes to f90.el
12518         Problem reported by Glenn Morris in:
12519         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
12520         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
12521         Revert recent changes to doc strings, as it's intended that they
12522         use grave accent, not quote.
12524 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
12526         Improve parameter name
12528         Add new inline function `hash-table-empty-p'
12530 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
12532         Don't require help-fns when not needed
12533         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
12534         * lisp/emacs-lisp/elint.el:
12535         Don't require help-fns at the top level.
12536         * lisp/emacs-lisp/advice.el (ad-arglist):
12537         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
12538         Don't require help-fns.  (Bug#17001)
12540 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
12542         Fix slash collapsing in etags on MS-Windows
12543         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
12544         MS-Windows code from the Posix code, and support collapsing both
12545         forward- and back-slashes on MS-Windows.  Fixes a regression found
12546         by the test suite.
12548         Improve documentation of glyphless-char-display
12549         * doc/lispref/display.texi (Glyphless Chars): Improve
12550         documentation of glyphless character display.
12552         Fix "acronym" display of glyphless characters on w32
12553         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
12554         ignore "acronym" substitutes of 1 character for glyphless characters.
12556 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
12558         Add an automated test for let-when-compile
12559         * test/automated/subr-tests.el (let-when-compile): New test.
12561         Add let-when-compile macro instead of using pcase-let
12562         * lisp/subr.el (let-when-compile): New let-like macro that makes its
12563         bindings known to macros like `eval-when-compile' in the body.
12564         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to a
12565           `let-when-compile'. Also comment out the unused lexical var
12566           `el-kws-re'.
12567         The change greatly improves readability, while providing almost the
12568         same (even shorter) byte code: instead of pre-evaluating 10 variables,
12569         tossing them into a list, and destructuring that list a full screen
12570         page later, the variables are simply bound as they are evaluated,
12571         wrapped individually in `eval-when-compile'.
12573 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
12575         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer
12576         (package-delete-button-action): New function.
12577         (describe-package-1): Add Delete button.
12579         * lisp/emacs-lisp/package.el: Better dependency description
12580         (package--used-elsewhere-p): New optional arg, ALL, and return
12581         package-desc objects instead of names.
12582         (package-delete): Update accordingly.
12583         (describe-package-1): Describe which packages require the package.
12585 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
12587         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
12588         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
12589         Fix doc-string (Bug#20533).
12591         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
12592         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
12593         (switch-to-buffer): If the selected window is strongly dedicated
12594         to its buffer, signal error before prompting for buffer name.  Handle
12595         `switch-to-buffer-in-dedicated-window'.  (Bug#20472)
12596         * doc/lispref/windows.texi (Switching Buffers): Document
12597         `switch-to-buffer-in-dedicated-window'.
12599 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
12601         Prefer "this" to “this” in doc strings
12602         This mostly just straightens quotes introduced in my previous patch.
12603         Suggested by Dmitry Gutov in:
12604         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
12605         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
12606         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
12607         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
12608         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
12609         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
12610         Prefer straight double quotes to curved double quotes in doc strings.
12612         Fix minor quoting problems in doc strings
12613         These were glitches regardless of how or whether we tackle the
12614         problem of grave accent in doc strings.
12615         * lisp/calc/calc-aent.el (math-restore-placeholders):
12616         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
12617         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
12618         * lisp/leim/quail/hebrew.el ("hebrew-new")
12619         ("hebrew-biblical-sil"):
12620         * lisp/leim/quail/thai.el ("thai-kesmanee"):
12621         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
12622         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
12623         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
12624         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
12625         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
12626         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
12627         (semantic-tag-components):
12628         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
12629         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
12630         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
12631         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
12632         * lisp/emacs-lisp/generator.el (iter-next):
12633         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
12634         (gnus-article-mode-syntax-table):
12635         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
12636         * lisp/net/soap-client.el (soap-wsdl-get):
12637         * lisp/net/telnet.el (telnet-mode):
12638         * lisp/org/org-compat.el (org-number-sequence):
12639         * lisp/org/org.el (org-remove-highlights-with-change)
12640         (org-structure-template-alist):
12641         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
12642         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
12643         (handwrite-12pt, handwrite-13pt):
12644         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
12645         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
12646         * lisp/progmodes/verilog-mode.el (verilog-tool)
12647         (verilog-string-replace-matches, verilog-preprocess)
12648         (verilog-auto-insert-lisp, verilog-auto-insert-last):
12649         * lisp/textmodes/makeinfo.el (makeinfo-options):
12650         * src/font.c (Ffont_spec):
12651         Fix minor quoting problems in doc strings, e.g., missing quote,
12652         ``x'' where `x' was meant, etc.
12653         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
12654         Fix minor quoting problem in other string.
12655         * lisp/leim/quail/ethiopic.el ("ethiopic"):
12656         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
12657         Omit unnecessary quotes.
12658         * lisp/faces.el (set-face-attribute, set-face-underline)
12659         (set-face-inverse-video, x-create-frame-with-faces):
12660         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
12661         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
12662         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
12663         * lisp/net/tramp.el (tramp-methods):
12664         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
12665         * lisp/textmodes/artist.el (artist-ellipse-right-char)
12666         (artist-ellipse-left-char, artist-vaporize-fuzziness)
12667         (artist-spray-chars, artist-mode, artist-replace-string)
12668         (artist-put-pixel, artist-text-see-thru):
12669         * lisp/vc/ediff-util.el (ediff-submit-report):
12670         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
12671         Use double-quotes rather than TeX markup in doc strings.
12672         * lisp/skeleton.el (skeleton-pair-insert-maybe):
12673         Reword to avoid the need for grave accent and apostrophe.
12674         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
12675         Don't use grave and acute accents to quote.
12677 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
12679         * emacs-lisp/generator.el (cps--gensym, cps--transform-1): Silence compiler
12681 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
12683         Try to port new etags tests to MS-Windows
12684         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
12685         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
12686         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
12687         Adjust to test-case changes below.
12688         * test/etags/Makefile (CSRC): Remove dostorture.c.
12689         Whatever it was trying to test, wasn't working portably.
12690         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
12691         just a line-ending problem.
12692         * test/etags/c-src/dostorture.c: Remove.
12693         * test/etags/cp-src/c.C: Remove stray CR.
12694         * test/etags/html-src/algrthms.html: Remove trailing CRs.
12695         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
12696         but if someone edits it later it should stay UTF-8-compatible.
12698 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
12700         Fix display of overlapping window-specific overlays
12701         * src/keyboard.c (adjust_point_for_property): When adjusting point
12702         due to display strings, ignore overlays that are specific to
12703         windows other than the currently selected one.
12704         * src/xdisp.c (handle_single_display_spec): If the display
12705         property comes from an overlay, arrange for buffer iteration to
12706         resume only after the end of that overlay.  (Bug#20607)
12708 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
12710         New command icomplete-force-complete-and-exit
12711         * lisp/icomplete.el (icomplete-force-complete-and-exit):
12712         New command
12713         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
12714         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
12715         (icomplete-minibuffer-map): Bind C-j to it.
12716         (icomplete-forward-completions, icomplete-backward-completions):
12717         Mention the new command in the docstring.
12718         * lisp/minibuffer.el (minibuffer-force-complete-and-exit): Revert
12719         the previous fix for bug#17545.
12721 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
12723         Fix last commit
12725         In Elisp manual explain how to override window manager positioning (Bug#20552)
12726         * doc/lispref/frames.texi (Position Parameters): Give example of
12727         how to override a window manager positioning decision.
12729         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
12730         * src/frame.c (Fdelete_frame): In doc-string mention that frame
12731         can't be deleted if it has a surrogate minibuffer.
12732         * doc/lispref/frames.texi (Minibuffers and Frames)
12733         (Deleting Frames): Explain "surrogate minibuffer frames".
12735         In w32heap.c bump DUMPED_HEAP_SIZE to 19/12 MB
12736         * emacs-git/quick/src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
12738 2015-05-18  Glenn Morris  <rgm@gnu.org>
12740         Add option to ignore commit lines matching a pattern in ChangeLog.
12741         * build-aux/gitlog-to-changelog: Add --ignore-line option.
12742         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
12744 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
12746         Don't skip new etags tests on non-UTF-8 hosts
12747         Problem reported by Eli Zaretskii for MS-Windows.
12748         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
12749         (LC_ALL): Set to C if the current locale isn't UTF-8.
12750         (.PHONY): Remove ediff_1 thru ediff_5.
12751         (check): Always run.
12753 2015-05-18  Glenn Morris  <rgm@gnu.org>
12755         * lisp/calculator.el (calculator-funcall):
12756         * lisp/textmodes/artist.el (artist-spray-random-points):
12757         Use standard degree/radian conversion utilities.
12759         Further lisp-complete-symbol related cleanup.
12760         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
12761         Unadvertise non-functional argument.  Replace obsolete alias.
12763 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
12765         Add a test case for Maven warning ouput
12766         * test/automated/compile-tests.el
12767         (compile-tests--test-regexps-data): Add a case for Maven warning
12768         ouput.
12769         (compile--test-error-line): Check the compilation message type, if
12770         it's specified in the test data.
12772 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
12774         Update Maven compilation-mode entry to distinguish warnings
12775         * lisp/progmodes/compile.el
12776         (compilation-error-regexp-alist-alist): Update Maven entry to
12777         distinguish warnings (bug#20556).
12779 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
12781         * test/automated/sgml-mode-tests.el: New file.
12783 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
12785         Improve handling of the first Git revision
12786         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
12787         there's no next entry, delete until the end of the buffer.
12788         (log-view-end-of-defun-1): Stop at eob.
12789         * lisp/vc/vc-annotate.el
12790         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
12791         when previous-revision is nil.
12792         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
12793         with `--' to avoid ambiguity.
12794         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
12795         returned revision string.
12796         (vc-git-annotate-time): Expect `^' before the first revision.
12797         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
12798         REV1 is nil, and REV2 is not.
12799         * lisp/vc/vc.el: Update the description of the `diff' function.
12801 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
12803         Allow checkdoc to be called in batch
12804         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
12805           is non-nil, echo the error with `warn'.
12806         How it can be used in -batch:
12807         (with-current-buffer (find-file "checkdoc.el")
12808           (checkdoc-current-buffer t))
12810 2015-05-18  Glenn Morris  <rgm@gnu.org>
12812         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
12814 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
12816         * admin/notes/unicode: New section "binary files".
12818         Change new etags test to use UTF-8 encoding
12819         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
12820         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
12821         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
12822         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
12823         * test/etags/html-src/softwarelibero.html:
12824         Switch to UTF-8 encoding.
12825         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
12826         Remove Makefile, as it's too incestuous to have the test input
12827         include the build procedure.
12828         (UTF8_LOCALE, UTF_ENCODING): New macros.
12829         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
12830         (check): Skip if not UTF-8.
12831         (.PHONY): New rule.
12832         (FRC): Remove, as superseded by .PHONY.  All uses removed.
12833         (regexfile): Prefer printf to echo when outputting oddball chars.
12834         (.PRECIOUS): Remove, as these files are not built.
12836         Rename 'foo-gzipped' to 'foo.gz'
12837         * test/automated/data/decompress/foo.gz:
12838         Rename from test/automated/data/decompress/foo-gzipped,
12839         to make it easier for other tools to tell that it's compressed.
12840         * test/automated/zlib-tests.el (zlib--decompress):
12841         Adjust to renamed file.
12843 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
12845         Set up default-directory
12846         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
12847         binding for `v'.
12848         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
12849         appropriate value for default-directory.
12851 2015-05-17  Samer Masterson  <samer@samertm.com>
12853         * lisp/eshell/em-term.el (eshell-term-sentinel):
12854         No-op by default, only kills term buffer if
12855         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
12856         (eshell-destroy-buffer-when-process-dies): New custom to preserve
12857         previous behavior.
12859         eshell: Introduce new buffer syntax
12860         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
12861         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
12862         needed (Bug#19319).
12863         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
12864         (eshell-get-target): Remove shorthand-specific code.
12865         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
12866         '#<buffer-name>'.
12868 2015-05-17  Jan D  <jan.h.d@swipnet.se>
12870         Merge branch 'master' into cairo
12872 2015-04-26  Jan D  <jan.h.d@swipnet.se>
12874         Merge branch 'master' into cairo
12876         Add PBM support for cairo.
12877         * src/image.c (xcolor_to_argb32): New function.
12878         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
12879         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
12880         XImagePtr if ! USE_CAIRO.
12881         (pbm_load): Add cairo support.
12883 2015-04-12  Jan D  <jan.h.d@swipnet.se>
12885         x_free_cr_resources: Renamed from x_prepare_for_xlibdraw.
12886         * src/xterm.c (x_free_cr_resources): Renamed from x_prepare_for_xlibdraw.
12887         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
12888         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
12889         x_free_cr_resources.
12891         Handle specified bg in images.  Use generic libpng code for PNG:s.
12892         * src/image.c (get_spec_bg_or_alpha_as_argb)
12893         (create_cairo_image_surface): New functions when USE_CAIRO.
12894         (xpm_load): Call the above functions.  Handle XPM without mask
12895         when USE_CAIRO.
12896         (png_load_body): Handle USE_CAIRO case.
12897         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
12898         instead.
12899         (jpeg_load_body): Call create_cairo_image_surface.
12900         (gif_load, svg_load_image): Handle specified background, call
12901         create_cairo_image_surface.
12902         * src/xterm.c (x_draw_image_glyph_string): Added missing USE_CAIRO.
12904 2015-04-11  Jan D  <jan.h.d@swipnet.se>
12906         Support GIF and Tiff with cairo.
12907         * configure.ac: Allow jpeg with cairo.
12908         Allow tiff and gif with cairo.
12909         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
12910         (tiff_load): Create cairo image surface if USE_CAIRO.
12911         (gif_load): Ditto.
12913         Support JPEG with USE_CAIRO.
12914         * configure.ac: Allow jpeg with cairo.
12915         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
12917 2015-04-05  Jan D  <jan.h.d@swipnet.se>
12919         Support RSVG and cairo.
12920         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
12921         * src/dispextern.h (struct image): add cr_data2 if cairo.
12922         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
12923         (x_clear_image): Free cr_data and cr_data2 if set.
12924         (xpm_load): Assign data to cr_data2.
12925         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
12927 2015-04-03  Jan D  <jan.h.d@swipnet.se>
12929         Introduce limited Xpm support (32 bit ZPixmap) for Cairo.
12930         * configure.ac (HAVE_RSVG): Move after cairo.
12931         (USE_CAIRO): Disable rsvg, don't disable Xpm.
12932         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
12933         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
12934         don't return early.
12935         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
12936         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
12937         and create a surface.
12939         Tool tips for menus did not show any text.
12940         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
12941         tip frames, the geometry may be wrong.
12943         Merge branch 'master' into cairo, fixes tooltips not shown.
12945         Merge branch 'master' into cairo
12947         Add CAIRO_CFLAGS to lwlib/Makefile.in
12948         * Makefile.in (CAIRO_CFLAGS): Add.
12950 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12952         * ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
12954 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12956         Draw outermost line using black relief and erase corners also for cairo.
12957         * xterm.c [USE_CAIRO]: Include math.h.
12958         (enum corners) [USE_CAIRO]: New enum.
12959         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
12960         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
12961         than 1, draw the outermost line using the black relief.
12963         * xterm.c (x_fill_trapezoid_for_relief): Remove unnecessary cairo_close_path.
12965 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12967         * xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
12969         * xterm.c (x_draw_stretch_glyph_string): Call x_reset_clip_rectangles instead of XSetClipMask.
12971         Use int instead of unsigned int for width and height args.
12972         * xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
12973         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
12974         width and height args.
12976         Modernize k&r cairo-related function declarations.
12977         * gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
12978         (xg_print_frames_dialog): Modernize k&r declarations.
12979         * xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
12980         (Fx_print_frames_dialog): Modernize k&r declarations.
12981         * xterm.c (x_gc_get_ext_data, x_extension_initialize, x_begin_cr_clip)
12982         (x_end_cr_clip, x_set_cr_source_with_gc_foreground)
12983         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
12984         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
12985         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
12986         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
12987         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
12988         (x_clear_area): Modernize k&r declarations.
12990         Implement wave-style variant of underlining for cairo.
12991         * xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
12992         (x_draw_underwave) [USE_CAIRO]: Use it.
12994         * xterm.c (x_draw_window_divider): Use x_fill_rectangle instead of XFillRectangle.
12996 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12998         Fix fringe bitmap initialization for cairo.
12999         * fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap data for
13000         cairo image surface.
13001         * xterm.c (x_cr_define_fringe_bitmap): Call cairo_surface_mark_dirty.
13003 2015-02-11  Jan D  <jan.h.d@swipnet.se>
13005         Add cairo drawing.
13006         * configure.ac (with-cairo): New option.
13007         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
13008         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
13009         Output "Does Emacs use cairo?".
13010         * lisp/version.el (emacs-version): Add cairo version.
13011         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
13012         (FONT_OBJ): Add comment about ftcrfont.
13013         (ALL_CFLAGS): Add CAIRO_CFLAGS.
13014         (LIBES): Add CAIRO_LIBS.
13015         * src/dispextern.h (struct image): Add cr_data for cairo.
13016         (x_cr_init_fringe): Declare.
13017         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
13018         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
13019         * src/fringe.c (x_cr_init_fringe): New function name that shares code
13020         with w32_init_fringe.
13021         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
13022         * src/ftfont.c (ftfont_info_size); New global variable.
13023         (ftfont_open2): New extern function almost the same as old ftfont_open,
13024         but takes the font_object as argument.
13025         (ftfont_open): Build font object and call ftfont_open2.
13026         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
13027         * src/gtkutil.c (xg_clear_under_internal_border)
13028         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos): Only
13029         queue_draw if not cairo.  Change args to x_clear_area.
13030         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
13031         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
13032         (xg_print_frames_dialog): New functions for printing.
13033         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
13034         (xg_print_frames_dialog): Declare.
13035         * src/image.c: Add defined (USE_CAIRO) for PNG.
13036         Add !defined USE_CAIRO for W32 PNG code.
13037         (x_clear_image): If cairo, destroy the surface in cr_data.
13038         (png_load): Add new cairo compatible implementation.
13039         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
13040         * src/xfns.c: New section Printing.
13041         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
13042         (x-print-frames-dialog): New printing functions.
13043         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if
13044         cairo.
13045         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
13046         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
13047         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
13048         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
13049         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
13050         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
13051         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
13052         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
13053         Declare.
13054         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
13055         (max_fringe_bmp, fringe_bmp): New variables.
13056         (x_gc_get_ext_data, x_extension_initialize)
13057         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
13058         (x_set_cr_source_with_gc_foreground)
13059         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
13060         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
13061         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
13062         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
13063         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
13064         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
13065         (x_update_begin): Create cairo surface if needed.
13066         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
13067         (x_update_end): Paint cairo drawing surface to xlib surface.
13068         (x_clear_under_internal_border, x_after_update_window_line): Adjust
13069         arguments to x_clear_area.
13070         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
13071         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
13072         of XSetClipMask.
13073         (x_set_glyph_string_clipping)
13074         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
13075         instead of XSetClipRectangles.
13076         (x_clear_glyph_string_rect, x_draw_glyph_string_background): Use
13077         x_fill_rectangle instead of XFillRectangle.
13078         (x_draw_glyph_string_foreground)
13079         (x_draw_composite_glyph_string_foreground)
13080         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle instead
13081         of XDrawRectangle.
13082         (x_draw_relief_rect): Add code for USE_CAIRO.
13083         Call x_reset_clip_rectangles instead of XSetClipMask.
13084         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
13085         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
13086         instead of XSetClipMask.
13087         (x_draw_image_foreground, x_draw_image_foreground_1):
13088         x_draw_rectangle instead of XDrawRectangle.
13089         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
13090         XFillRectangle.
13091         (x_draw_image_glyph_string): If img has cr_data, use it as
13092         a cairo surface.
13093         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
13094         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
13095         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
13096         x_reset_clip_rectangles instead of XSetClipMask.
13097         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
13098         (x_clear_area1): New function that calls XClearArea.
13099         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
13100         non-cairo.
13101         (x_clear_frame): x_clear_window instead of XClearWindow.
13102         (x_scroll_run): Set frame garbaged if cairo.
13103         (XTmouse_position): Initialize *part to 0.
13104         (x_scroll_bar_create): Adjust arguments to x_clear_area.
13105         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
13106         x_fill_rectangle instead of XFillRectangle.
13107         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
13108         arguments to x_clear_area.
13109         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
13110         (handle_one_xevent): Adjust arguments to x_clear_area.
13111         Destroy cairo surface for frame if ConfigureNotify.
13112         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
13113         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
13114         x_reset_clip_rectangles instead of XSetClipMask.
13115         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
13116         x_reset_clip_rectangles instead of XSetClipMask.
13117         (x_clear_frame_area): Adjust arguments to x_clear_area.
13118         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
13119         (x_term_init): Call x_extension_initialize if cairo.
13120         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
13121         x_cr_destroy_fringe_bitmap for cairo.
13122         (x_initialize): Call x_cr_init_fringe for cairo.
13123         * src/xterm.h: Add include of cairo header files.
13124         (x_bitmap_record): Add img if cairo.
13125         (x_gc_ext_data): New struct for cairo.
13126         (x_display_info): Add ext_codes for cairo.
13127         (x_output): Add cr_context and cr_surface for cairo.
13128         (x_clear_area): Change arguments from Display*/Window to frame pointer.
13129         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
13130         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
13131         (x_cr_draw_frame, x_cr_export_frames): Declare.
13133 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
13135         Fix integer-valued `mouse-highlight' (Bug#20590)
13136         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
13138 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
13140         MS-Windows followup for ASCIIfication of curved quotes
13141         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
13142         test for curved quotes being displayable, after switching the
13143         terminal encoding.  (Bug#20545)
13145 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
13147         Spelling fixes
13149 2015-05-17  Jan D  <jan.h.d@swipnet.se>
13151         Add comment that x_shift_glyphs_for_insert is never called.
13152         * xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface): Add
13153         comment that this function is never called.
13155 2015-05-16  Glenn Morris  <rgm@gnu.org>
13157         * src/lisp.mk: Remove from repository and generate at build-time.
13158         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
13159         (shortlisp_filter): New variable.
13160         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
13161         (distclean): Remove lisp.mk.
13162         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
13163         * lisp/loadup.el: Tweak layout to make it easier to parse.
13164         * make-dist: Do not distribute src/lisp.mk.
13166 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
13168         Display shorter dates in Git annotate output
13169         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
13170         format (when not overridden with vc-git-annotate-switches).
13171         (vc-git-annotate-time): Support the short format, as well as ISO
13172         8601 that has been used until now (bug#5428).
13174 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
13176         ASCIIfy curved quotes on displays lacking them
13177         * lisp/international/mule-cmds.el (set-locale-environment):
13178         If curved quotes don't work, display straight ASCII approximations
13179         (Bug#20545).
13181 2015-05-16  Glenn Morris  <rgm@gnu.org>
13183         Small src/Makefile simplification.
13184         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
13185         * src/Makefile.in (lisp): Derive from shortlisp.
13186         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
13188 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
13190         * lisp/help-mode.el (help-go-forward): Doc fix.
13191         (Bug#20577)
13193         * doc/lispref/debugging.texi (Profiling): Improve indexing.
13194         (Bug#20576)
13196 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
13198         Use `unless' to have one fewer `not'
13199         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
13200         have one fewer `not'.
13202         Remove redundant :group declarations from vc-git.el
13203         * lisp/vc/vc-git.el (vc-git-diff-switches)
13204         (vc-git-annotate-switches, vc-git-resolve-conflicts)
13205         (vc-git-program, vc-git-root-log-format): Remove the redundant
13206         :group declarations.
13208 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
13210         Removes the predicate from lisp-complete-symbol (Bug#20456)
13211         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
13212         and remove it from the docstring.
13214 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
13216         Add new option vc-git-resolve-conflicts
13217         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
13218         (vc-git-find-file-hook): Add to after-save-hook only when the
13219         above is non-nil.
13220         (vc-git-resolve-when-done): Update to honor the new variable.
13221         (Bug#20292)
13223 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
13225         * lisp/emacs-lisp/tabulated-list.el: Don't error on nil header-string
13226         (tabulated-list-init-header): Document new behavior.
13227         (tabulated-list-print-fake-header): No nothing if
13228         `tabulated-list--header-string' is nil.
13229         (tabulated-list--header-string): Add a docstring.
13230         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
13231         * etc/NEWS: Document it.
13233 2015-05-15  Leo Liu  <sdl.web@gmail.com>
13235         Revert "Fix cps--gensym"
13236         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
13237           fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
13239 2015-05-15  Glenn Morris  <rgm@gnu.org>
13241         Replace AC_SUBST_FILE in configure with include in Makefiles.
13242         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
13243         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
13244         (AUTO_DEPEND): New output variable.
13245         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
13246         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
13247         (lwlib_deps_frag): Replace by conditional include.
13248         * lwlib/autodeps.mk: Remove file.
13249         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
13250         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
13251         (oldxmenu_deps_frag): Replace by conditional include.
13252         * oldXMenu/autodeps.mk: Remove file.
13253         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
13254         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
13255         (lisp_frag): Replace by an include.
13256         (deps_frag): Replace by conditional include.
13257         * src/autodeps.mk: Remove file.
13259         Tweak japanese.el's loading of dependencies.
13260         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
13261         * lisp/language/japanese.el: Use require rather than load.
13262         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
13263         Provide a feature.
13264         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
13265         Provide a feature in the generated file.
13267 2015-05-15  Jan D  <jan.h.d@swipnet.se>
13269         Fix NS warnings.
13270         * nsmenu.m (ns_popup_dialog)
13271         * nsimage.m (initFromXBM:width:height:fg:bg:)
13272         * nsfns.m (Fx_create_frame): Remove unused variables.
13273         (Fns_read_file_name): Initialize fname, remove ret.
13274         * nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
13275         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown): Remove unused
13276         variable.
13277         (init): Add parantesis in if.
13278         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
13280 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
13282         Fix a enum conversion warning in macfont.m
13283         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
13284         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
13286 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
13288         Support de-alt dictionary with Aspell.
13289         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
13290         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
13292 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
13294         cus-start.el: Add ns-confirm-quit.
13295         * cus-start.el: Add ns-confirm-quit.
13297         Fix warnings on OSX 10.10.
13298         * nsfns.m (MODAL_OK_RESPONSE): New define for different OSX versions.
13299         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
13300         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
13301         * nsmenu.m (initWithContentRect:styleMask:backing:defer:)
13302         * nsimage.m (allocInitFromFile, setPixmapData): Only call
13303         setScalesWhenResized for OSX < 10.6.
13304         * nsterm.h (EmacsScroller): Declare scrollerWidth.
13305         * nsterm.m (ns_copy_bits): New function that does not use deprecated
13306         NSCopyBits.
13307         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
13308         (runAlertPanel): New function.
13309         (applicationShouldTerminate:): Call runAlertPanel.
13310         (initFrameFromEmacs, toggleFullScreen:): Only call useOptimizedDrawing
13311         for OSX < 10.10.
13312         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
13313         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
13314         (draggingEntered:): Returns NSDragOperation.
13315         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
13317 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
13319         * lisp/emacs-lisp/package.el: Don't ensure-init during startup
13320         (package--init-file-ensured): New variable.
13321         (package-initialize, package--ensure-init-file): Use it.
13323 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
13325         Honor :fore/background for XBM on NS (Bug#14969).
13326         * nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
13327         initFromXBM takes bg, fg args, remove flip arg.
13328         (ns_image_from_XBM): Add bg, fg args.
13329         * image.c (x_create_bitmap_from_data)
13330         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
13331         * nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to initFromXBM.
13332         Remove flip arg.
13333         (initFromSkipXBM): Move code to initFromXBM.
13334         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
13335         Use fg, bg from args (Bug#14969).  Remove if (length) section, was always
13336         false.
13337         Remove bit flipping (bitPat, swt), generated incorrect images when
13338         width/height wasn't a multiple of 8.
13339         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
13340         * nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args, remove
13341         flip arg.
13343 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
13345         * lisp/emacs-lisp/package.el: Be more careful with the init file
13346         (package--ensure-init-file): Check that user-init-file is set,
13347         exists, is readable, and is writable.  (Bug#20584)
13348         Also expand the docstring.
13350 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
13352         Sync with upstream verilog-mode revision 6232468
13353         * lisp/progmodes/verilog-mode.el (verilog-font-lock-grouping-keywords-face)
13354         (verilog-highlight-grouping-keywords): Fix use of face when
13355         `verilog-highlight-grouping-keywords' set.  Reported by Jeff
13356         Pompa.
13357         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
13358         parent is reset, bug906. Reported by Ken Schmidt.
13359         (verilog-auto-inout-module): Add fourth regexp argument to
13360         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match,
13361         bug856. Reported by John Tillema.
13362         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
13363         modport if signal attachment is itself a modport.  Reported by
13364         Matthew Lovell.
13365         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
13366         always_comb and always_latch, bug844.  Reported by Greg Hilton.
13367         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
13368         with many curly-bracket pairs, bug663.
13369         (verilog-set-auto-endcomments): Fix end comments for functions of
13370         type void, etc.  Reported by Alex Reed.
13371         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
13372         caused by indent-line-to deleting tabls pre 24.5.
13373         (verilog-nameable-item-re): Fix nameable items that can have an
13374         end-identifier to include endchecker, endgroup, endprogram,
13375         endproperty, and endsequence.  Reported by Alex Reed.
13376         (verilog-label-be): When auto-commenting a buffer, consider
13377         auto-comments on all known keywords (not just a subset thereof).
13378         Reported by Alex Reed.
13379         (verilog-auto-end-comment-lines-re)
13380         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
13381         Automatically comment property/endproperty blocks to match other
13382         similar blocks like sequence/endsequence, function/endfunction,
13383         etc. Reported by Alex Reed.
13384         (verilog-set-auto-endcomments): Detect the function- or task-name
13385         when auto-commenting blocks that lack an explicit
13386         portlist. Reported by Alex Reed.
13387         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
13388         allow post-AUTO user fixups, bug826. Reported by Dennis
13389         Muhlestein.
13390         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
13391         is nil, fix indenting initial/final to match always statements,
13392         bug825. Reported by Tim Clapp.
13393         (verilog-extended-complete-re): Fix indentation of DPI-C imports
13394         with c_identifiers, and DPI-C imports, bug557. Reported by ZeDong
13395         Mao and Jason Forkey.
13396         (verilog-read-decls): Fix parsing typed interfaces.  Fix
13397         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
13398         Fix localparam not being ignored in AUTOINSTPARAM,
13399         bug889. Reported by Shannon Hill.
13400         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
13401         bug793.  Reported by Pierre-David Pfister.
13402         (verilog-auto-arg-format, verilog-auto-arg-ports): Add
13403         verilog-auto-arg-format to support newlines in AUTOARG. Reported
13404         by Jie Xiao.
13405         (verilog-batch-execute-func): Do not batch re-auto files loaded by
13406         Local Variables. Fix printing "no changes to be saved" with
13407         verilog-batch. Reported by Dan Dever.
13408         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
13409         interface-only modules, bug721.  Reported by Dean Hoyt.
13410         Author: Alex Reed <acreed4@gmail.com>
13411         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement): Don't
13412         treat '<keyword>:<identifier>' as the start of a labeled
13413         statement, bug905.  Reported by Enzo Chi.
13414         (verilog-directive-re, verilog-compiler-directives)
13415         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
13416         directives (plus some extras) when determining indentation, bug
13417         901.  Reported by Bernd Beuster.
13418         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
13419         iff expression doesn't start with word-character, bug900.
13420         (verilog-optional-signed-range-re, verilog-optional-signed-re):
13421         Fix incorrect indentation/alignment of unsigned declarations,
13422         bug897.
13423         (verilog-looking-back, verilog-in-attribute-p): Fix labling of
13424         always constructs, bug895.
13425         (verilog-calc-1): Fix verilog-mode constraint indentation,
13426         bug324. Reported by Eric Mastromarchi.
13427         (verilog-beg-of-statement): Fix indenting for some forms of
13428         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
13429         continued assignment incorrect if first line ends with ']',
13430         bug437. Reported by Dan Dever.  Fix indention of cover inside an
13431         ifdef, bug 862. Reported by Bernd Beuster Fix labeling do-while
13432         blocks, bug842.
13433         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning,
13434         bug859. Reported by Kaushal Modi.
13435         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
13436         (verilog-backward-token): Fix indenting sensitivity lists with
13437         named events, bug840.  Reed.
13438         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
13439         nil not honoring 'forever', 'foreach', and 'do' keywords.
13441 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
13443         Check for invalid GTK+ monitor scales
13444         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
13445         INT_MAX for too-large scales.  All callers changed to assume the
13446         result is valid (Bug#20432).
13447         (xg_frame_set_char_size, xg_update_scrollbar_pos):
13448         Calculate scale only if needed.
13449         show ASCII approximations instead.
13451 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
13453         Fix daemon crashes when linum-mode is turned on early on
13454         * src/window.c (Fwindow_end): Don't try calling display engine
13455         functions on initial-frame frame.  (Bug#20565)
13457         Fix selective diff browsing in Ediff
13458         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches): Go to the
13459         beginning of the region before searching for the
13460         ediff-regexp-focus-* regexps.  (Bug#20568)
13462 2015-05-14  Jan D  <jan.h.d@swipnet.se>
13464         Fixes Bug#20142.
13465         * gtkutil.c (delete_cb): Don't send delete event here, it does arrive
13466         in the main loop, even for Gtk 3 (Bug#20142).
13468         Don't access display after i/o error (Bug#19147).
13469         * xterm.c (x_connection_closed): Add third arg ioerror.
13470         If ioerror, set display to 0 (Bug#19147).
13471         (x_error_quitter): Call x_connection_closed with third arg false.
13472         (x_io_error_quitter): Call x_connection_closed with third arg true.
13474         Handle GTK_SCALE, fixes Bug#20432.
13475         * gtkutil.c (xg_get_gdk_scale): New function.
13476         (xg_frame_set_char_size)
13477         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
13478         (xg_get_default_scrollbar_height)
13479         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
13480         when setting sizes (Bug#20432).
13482 2015-05-13  Leo Liu  <sdl.web@gmail.com>
13484         Fix cps--gensym
13485         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
13487 2015-05-13  Glenn Morris  <rgm@gnu.org>
13489         Fix bootstrap (void function cl-member).
13490         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
13491         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
13493 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
13495         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
13496         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
13497         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
13498         Avoid defalias for closures which are not immutable.
13499         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill the
13500         dispatchers table with various entries.
13501         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
13502         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
13504 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
13506         Improve tagging of C bindings in DEFVAR_*
13507         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
13508         from DEFVAR_*.
13510 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
13512         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
13514 2015-05-12  Glenn Morris  <rgm@gnu.org>
13516         * lisp/progmodes/tcl.el (tcl-filter):
13517         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
13519         Add basic VC push support.
13520         * lisp/vc/vc.el (vc-push): New autoloaded command.
13521         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
13522         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
13523         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
13524         (vc-bzr-push): New.
13525         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
13526         (vc-git-pull): Reimplement using vc-git--pushpull.
13527         (vc-git-push): New.
13528         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
13529         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
13530         * doc/emacs/maintaining.texi (Pulling / Pushing):
13531         Rename from "VC Pull".  Mention pushing.
13532         (VC With A Merging VCS, VC Change Log): Update xrefs.
13533         (Branches): Update menu.
13534         * doc/emacs/emacs.texi: Update menu.
13535         * etc/NEWS: Mention this.
13537 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
13539         Improve the seq pcase pattern and the `seq-let' macro
13540         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
13541         object is a sequence, and binds each element of ARGS to the
13542         corresponding element of the sequence.
13544 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
13546         Fix tags created from DEFVAR_* declarations in C
13547         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
13548         to make tags extracted from DEFVAR_* declarations more accurate.
13550         Add a test suite for etags
13551         * test/etags/: New test suite, adapted from
13552         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
13553         whose original author is Francesco Potortì <pot@gnu.org>.
13555         Fix tagging of symbols in C enumerations
13556         * lib-src/etags.c (consider_token): Don't tag symbols in
13557         expressions that assign values to enum constants.  See
13558         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
13559         for details.
13560         (C_entries): Reset fvdef to fvnone after processing a preprocessor
13561         conditional and after a comma outside of parentheses.
13563 2015-05-12  Glenn Morris  <rgm@gnu.org>
13565         * lisp/url/url-handlers.el (url-file-name-completion)
13566         (url-file-name-all-completions): Silence compiler.
13568         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
13570         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
13572 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
13574         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
13575         (cl--generic-mandatory-args): Remove.
13576         (cl--generic-split-args): New function.
13577         (cl-generic-define, cl--generic-lambda): Use it.
13578         (cl-generic-define-method): Use it as well, and add support for
13579         context args.
13580         (cl--generic-get-dispatcher): Handle &context dispatch.
13581         (cl--generic-cache-miss): `dispatch-arg' can now be a context expression.
13582         (cl--generic-dispatchers): Pre-fill.
13583         * test/automated/cl-generic-tests.el (sm-generic-test-12-context): New test.
13585 2015-05-11  Glenn Morris  <rgm@gnu.org>
13587         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
13589 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
13591         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
13592         * lisp/term/rxvt.el: Require term/xterm.
13593         (rxvt-function-map): Use xterm-rxvt-function-map.
13594         (rxvt-standard-colors): Move before first use.
13595         (terminal-init-rxvt): Use xterm--push-map and xterm-register-default-colors.
13596         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
13597         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
13598         Move shared bindings between rxvt and xterm to it.
13599         (xterm-function-map): Use it.  Move the xterm-paste binding to
13600         xterm-rxvt-function-map (bug#20444).
13601         (xterm-standard-colors): Move before first use.
13602         (xterm--push-map): New function.
13603         (xterm-register-default-colors): Take standard colors as argument.
13604         (terminal-init-xterm): Use it.  Adjust call to
13605         xterm-register-default-colors.
13607 2015-05-11  Glenn Morris  <rgm@gnu.org>
13609         * lisp/term/x-win.el: Quieten --without-x compilation.
13610         (x-own-selection-internal, x-disown-selection-internal)
13611         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
13612         Declare.
13614         * Makefile.in (emacslog): Remove srcdir.
13615         (ChangeLog): Update for the above.
13617 2015-05-11  Paul Eggert  <eggert@cs.ucla.edu>
13619         Spelling fix
13621 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
13623         python.el: better limit for looking-back calls
13624         * lisp/progmodes/python.el (python-shell-accept-process-output):
13625         Use last comint prompt start as limit for looking-back.
13627 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
13629         CEDET (srecode-insert-fcn): Fix use of oref on a class
13630         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref on
13631         a class.  Reported by Pierre Lorenzon.
13632         (srecode-template-inserter-point): Remove declaration.
13634         CEDET (srecode-create-dictionary): Avoid obsolete object name
13635         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
13636         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
13638 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
13640         C-x 8 shorthands for curved quotes, Euro, etc.
13641         Although C-x 8 lets you insert arbitrary Unicode characters,
13642         it's awkward to use this to insert commonly used symbols such as curved
13643         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
13644         characters commonly found in English text and in basic math.
13645         For example, assuming the Alt key works on your keyboard and iso-transl
13646         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
13647         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
13648         (Bug#20499)
13649         * doc/emacs/mule.texi (Unibyte Mode):
13650         A few other printing characters now work too.
13651         * etc/NEWS: Document this.
13652         * lisp/international/iso-transl.el (iso-transl-char-map):
13653         Also support the following characters:
13654         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
13656 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
13658         Add xref-find-regexp
13659         * lisp/progmodes/xref.el (xref-find-function): Describe the
13660         `matches' action.
13661         (xref-find-regexp): New command, using it.
13662         (xref-collect-references): Rename to xref-collect-matches.
13663         (xref--collect-reference): Rename to xref--collect-match.
13664         (xref-collect-matches, xref--collect-match): Accept new argument,
13665         KIND.  Update accordingly.
13666         (xref--regexp-to-extended): New function.
13667         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
13668         `matches' action.
13669         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
13670         * lisp/progmodes/etags.el (etags-xref-find):
13671         Support the `matches' action.
13672         (etags--xref-find-matches): New function.
13674 2015-05-10  Glenn Morris  <rgm@gnu.org>
13676         * Makefile.in: Fixes for recent change-history changes.
13677         (change-history-nocommit): Update footer regexp.
13678         Ensure output script stays executable.
13680 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
13682         New version of `seq-let' based on a pcase pattern
13683         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
13684         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
13686 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
13688         Add basic HTML5 tags and a template
13689         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
13690         (html-tag-alist): Add HTML5 tags.
13691         (html-tag-help): Add new tags descriptions.
13692         (html-navigational-links): Template for nav links.
13693         (html-html5-template): Template for a HTML5 page.
13695 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
13697         semantic/symref/grep: Don't use word boundaries
13698         * lisp/cedet/semantic/symref/grep.el
13699         (semantic-symref-perform-search): Instead of wrapping input in
13700         word boundaries, check that the characters before and after are
13701         not word constituents.
13703         semantic/symref/grep: Support regexp search
13704         * lisp/cedet/semantic/symref.el
13705         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
13706         the search type is regexp.
13707         * lisp/cedet/semantic/symref/grep.el
13708         (semantic-symref-perform-search): Support the regexp search type.
13709         Pass -E to Grep when it's used.
13711         semantic-symref-regexp: Allow to input an arbitrary string
13712         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
13713         Allow to input an arbitrary string interactively.
13715         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
13716         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
13717         Remove tag-symbol-match-p from the default value
13718         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
13720         Declare find-tag obsolete
13721         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
13722         xref-find-definitions.
13724 2015-05-10  Jan D  <jan.h.d@swipnet.se>
13726         Draw composite string correctly (Bug#20537).
13727         * nsterm.m (ns_draw_composite_glyph_string_foreground): New function.
13728         (ns_draw_glyph_string): Call it (Bug#20537).
13730 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
13732         Avoid infloop in ERC
13733         * lisp/simple.el (line-move-to-column): Ignore field boundaries
13734         while computing line beginning position.  (Bug#20498)
13736 2015-05-08  Glenn Morris  <rgm@gnu.org>
13738         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
13739         * build-aux/gitlog-to-emacslog: Check called from right directory.
13740         (srcprefix): Remove.
13742         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
13743         * Makefile.in (ChangeLog): No longer pass "distprefix".
13744         * make-dist: Update "make ChangeLog" syntax for the above change.
13746         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
13747         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
13749         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
13751         Add command-line option-parsing to gitlog-to-emacslog.
13752         * build-aux/gitlog-to-emacslog: Add command-line options.
13753         By default, refuse to remove an existing output file.
13754         * Makefile.in (CHANGELOG): Update default.
13755         (ChangeLog): Do not test for existing file.
13756         (change-history-nocommit): Ensure temp file does not exist.
13758         Quieten --without-x compilation.
13759         * lisp/term/common-win.el: Provide a feature.
13760         * lisp/term/x-win.el (term/common-win): Require it.
13762         * lisp/dired-aux.el (dired-do-print): Require lpr.
13764         Quieten compilation, eg in --without-x builds.
13765         * lisp/dired-aux.el (lpr-printer-switch):
13766         * lisp/frame.el (tool-bar-height):
13767         * lisp/linum.el (font-info):
13768         * lisp/window.el (font-info, overflow-newline-into-fringe)
13769         (tool-bar-height):
13770         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
13771         * lisp/gnus/gnus-util.el (iswitchb-mode):
13772         * lisp/mail/rmailmm.el (libxml-parse-html-region):
13773         * lisp/net/nsm.el (gnutls-peer-status)
13774         (gnutls-peer-status-warning-describe):
13775         * lisp/net/shr.el (libxml-parse-xml-region):
13776         * lisp/url/url-http.el (gnutls-peer-status): Declare.
13778 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
13780         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
13781         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
13782         `subclass' since they're never called with a class.
13783         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
13784         srecode-dictionary-child-p.
13786 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
13788         help--binding-locus: Document argument POSITION.
13789         * lisp/help.el (help--binding-locus): Document argument POSITION. (bug#20530)
13791 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
13793         Merge from gnulib.
13794         * doc/misc/texinfo.tex: Get latest version.
13796 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
13798         ffap.el (ffap-read-file-or-url): Fix completing-read call
13799         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
13800           `completing-read' should be a symbol.
13802 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
13804         Verify file modifications by other programs
13805         * src/filelock.c (lock_file): Check whether the file was modified
13806         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
13808         Fix keyboard macros that include function keys
13809         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
13810         keys in the macro before returning.  (Bug#20454)
13812 2015-05-08  Glenn Morris  <rgm@gnu.org>
13814         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
13815         "Copyright-paperwork-exempt".  (Bug#20324)
13817         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
13818         (log-edit-rewrite-tiny-change): New variable.
13819         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
13820         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
13821         * etc/NEWS: Mention this.
13823         * lisp/calc/calc.el (math-zerop): Declare.
13825         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
13827 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
13829         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec
13830         Support the case when BINDINGS is a single tuple.  (Bug#20525)
13832         * etc/NEWS: Fix typo in commit 14bb519
13834 2015-05-07  Jan D  <jan.h.d@swipnet.se>
13836         Warn for multiple display crash for all Gtk+ versions.
13837         * configure.ac: Warn for multiple display crash for all Gtk+
13838         versions.  Output URL to Gtk+ bug (Bug#20452).
13840         ns-win.el (ns-paste-secondary): Use gui-get-selection.
13841         * ns-win.el (ns-paste-secondary): Use gui-get-selection.
13843 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
13845         * lisp/emacs-lisp/package.el: New "external" package status
13846         An external package is any installed package that's not built-in
13847         and not from `package-user-dir', which usually means it's from an
13848         entry in `package-directory-list'.  They are treated much like
13849         built-in packages, in that they cannot be through the Package Menu
13850         deleted and are not considered for upgrades.
13851         (package-desc-status): Identify if a package is installed outside
13852         `package-user-dir'.
13853         (package-menu--print-info-simple)
13854         (package-menu--status-predicate): Add support for it.
13855         * etc/NEWS: Document it.
13857 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
13859         * lisp/mail/rmail.el: Use lexical-binding
13860         (rmail-bury): Remove unused var `buffer-to-bury'.
13861         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
13862         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
13863         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
13864         (rmail-insert-inbox-text): Remove unused var `movemail'.
13865         (rmail-add-mbox-headers): Remove unused var `limit'.
13866         (rmail-undelete-previous-message): Remove unused var `value'.
13867         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
13868         `resent-reply-to'.
13869         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
13870         (rmail-restore-desktop-buffer): Rename arguments.
13872 2015-05-06  Glenn Morris  <rgm@gnu.org>
13874         * Makefile.in (change-history-commit): Add missing piece of previous.
13876         Avoid unnecessary bumping of Makefile.in's timestamp.
13877         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
13878         (emacslog): New variable.
13879         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
13880         (unchanged-history-files): Use $emacslog rather than Makefile.in.
13881         (change-history-nocommit): Store hash in $emacslog.
13882         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
13883         * admin/update_autogen (changelog_files): Update for the above.
13885         * Makefile.in: Don't always insist on removing existing "ChangeLog".
13886         (CHANGELOG): New variable.
13887         (no-ChangeLog): Remove.
13888         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
13889         (change-history-nocommit): Use a temp file rather than insisting
13890         on deletion of any existing "ChangeLog".
13892         * build-aux/gitlog-to-emacslog: Allow specification of output.
13894         * admin/update_autogen: Add option to update ChangeLog.
13895         (usage): Mention -H.
13896         (changelog_flag, changelog_n, changelog_files): New variables.
13897         (main): Check for -H, and maybe run change-history-nocommit.
13899 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
13901         * lisp/subr.el (delete-dups): Pre-size the hashtable.
13903         (define-modify-macro): Make sure cl--arglist-args is defined
13904         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
13905         cl--arglist-args is defined (bug#20517).
13907 2015-05-06  Glenn Morris  <rgm@gnu.org>
13909         * Makefile.in (change-history-nocommit): New.
13911 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
13913         Only cancel timer when it is non-nil
13914         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
13915         timer when it is non-nil
13916         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
13918 2015-05-06  Glenn Morris  <rgm@gnu.org>
13920         Quieten cedet compilation
13921         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
13922         Invert fboundp test to quieten on current Emacs.
13923         * lisp/cedet/ede/config.el (ede-shell-run-something)
13924         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
13925         (semanticdb-refresh-table): Declare.
13926         (ede-preprocessor-map): Require semantic/db.
13928         Quieten cc-mode compilation
13929         * lisp/progmodes/cc-awk.el (c-forward-sws):
13930         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
13931         Declare.
13933 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
13935         lisp/subr.el (delete-dups): Avoid nreverse.
13937 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
13939         * lisp/subr.el (delete-dups): Make it destructive again.
13941 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
13943         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
13945 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
13947         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487)
13948         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
13949         (testcover--read): Rename from testcover-read.  Change calling convention.
13950         Use edebug-read-and-maybe-wrap-form now that edebug-read is gone.
13951         (testcover-start): Use add-function.  Move edebug-all-defs binding to
13952         testcover--read.
13953         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
13954         (testcover-mark): Remove unused var `item'.
13955         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
13957 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
13959         lisp/subr.el (delete-dups): Use a hash table
13960         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
13961           use a hash table. This can result in ~500 times speed-up for typical
13962           collections of size 5000, like that of `load-library'.
13964 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
13966         CEDET: Avoid `oref' on classes in a few more cases
13967         * lisp/cedet/ede/generic.el (ede-find-target):
13968         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
13969         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
13970         var `prefix'.
13972         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings
13973         * lisp/cedet/semantic/symref/grep.el (grepflags, greppattern): Declare.
13974         (semantic-symref-perform-search): Remove unused var `pat'.
13976         CEDET (srecode-compile-inserter): Avoid `oref' on classes
13977         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
13978         Avoid `oref' on classes (bug#20491).
13979         (srecode-compile-split-code): Remove unused var `key'.
13981 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
13983         Clean up pulse.el a little
13984         * lisp/cedet/pulse.el (pulse): Remove.
13985         (pulse-momentary-timer): Save instead of the stop time.
13986         (pulse-momentary-highlight-overlay): Call
13987         pulse-momentary-unhighlight first thing. Treat
13988         pulse-momentary-overlay as a single value, not a list. Save the
13989         created timer. Only pass the stop time to the timer.
13990         (pulse-tick): Update accordingly.
13991         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
13992         single value. Cancel the timer.
13994 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
13996         Support the biblatex journaltitle field
13997         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
13998         Support the biblatex journaltitle field.
14000 2015-05-05  Glenn Morris  <rgm@gnu.org>
14002         Minor declare-function improvement
14003         * lisp/emacs-lisp/bytecomp.el
14004         (byte-compile-macroexpand-declare-function):
14005         Handle declarations after calls.  (Bug#20509)
14007         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
14009         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
14011 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
14013         Pulse using a timer
14014         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
14015         (pulse-momentary-highlight-overlay): Set up the timer instead of
14016         calling `pulse'
14017         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
14018         (pulse-tick): New function.
14019         (pulse-momentary-unhighlight): Cut off the stop time.
14020         (pulse-delay): Update the docstring WRT to not using sit-for.
14022         Add semantic/symref/grep file patterns for ruby-mode
14023         * lisp/cedet/semantic/symref/grep.el
14024         (semantic-symref-filepattern-alist): Add patterns for
14025         ruby-mode. Clarify the docstring.
14027         Don't require match
14028         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
14029         match. That doesn't work for every command, and some identifier
14030         completion tables are bound to be imperfect anyway.
14032 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
14034         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505)
14035         (semantic-grammar--template-expand): New function.
14036         (semantic-grammar-header, semantic-grammar-footer): Use it.
14037         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
14038         (semantic-grammar-file-regexp): Refine regexp.
14039         (semantic-grammar-eldoc-get-macro-docstring):
14040         Use elisp-get-fnsym-args-string when available.
14041         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
14042         instead of the old eldoc-* names.
14043         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
14044         from elisp-mode.el.  Tweak calling convention.
14045         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
14046         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
14047         elisp--get-fnsym-args-string.
14048         (elisp--highlight-function-argument): Add `prefix' arg.
14049         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
14050         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
14052 2015-05-05  Glenn Morris  <rgm@gnu.org>
14054         * lisp/help-fns.el (describe-function-1):
14055         Handle builtins with advertised calling conventions.  (Bug#20479)
14057 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
14059         Merge branch 'seq-let'
14061         Update `seq-let' documentation
14062         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
14063         with the support of  `&rest'.
14065         Add support for &rest in `seq-let'
14066         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
14067         in the argument list.
14068         * test/automated/seq-tests.el: Add a test for parsing and binding
14069         `&rest' in `seq-let'.
14071 2015-05-05  Paul Eggert  <eggert@cs.ucla.edu>
14073         Spelling fixes
14075 2015-05-05  (tiny change) Pierre Lorenzon  <devel@pollock-nageoire.net>
14077         * eieio-custom.el (eieio-object-value-get): Add missing increment
14078         (Bug#20467)
14080         (eieio-object-value-create): Adjust to new slots representation
14081         (Bug#20467)
14082         * eieio-custom.el (eieio-object-value-create):
14083         Fix missed adjustment to new representation of slots metadata.
14085 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
14087         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
14089 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
14091         Work around "Attempt to modify read-only object"
14092         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
14093         elisp--xref-find-definitions, to work around "Attempt to modify
14094         read-only object" error.
14096         Only skip some variables that have function counterparts
14097         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
14098         Only skip minor-mode-named variable if it's defined in a Lisp
14099         file, and it's in minor-mode-list (bug#20506).
14100         * test/automated/elisp-mode-tests.el
14101         (elisp-xref-finds-both-function-and-variable)
14102         (elisp-xref-finds-only-function-for-minor-mode): New tests.
14104 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
14106         Buttonize the whole line, including the number at the beginning
14107         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
14108         previous change.
14109         (xref--insert-xrefs): Buttonize the whole line, including the
14110         number at the beginning.
14112         Make sure we're inside the let bindings
14113         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
14114         Make sure we're inside the let bindings.
14115         * test/automated/elisp-mode-tests.el
14116         (elisp-completes-functions-after-let-bindings): New test.
14118 2015-05-04  Glenn Morris  <rgm@gnu.org>
14120         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
14121         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
14122         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
14123         Remove outdated declarations.
14125         Replace instances of "(eval-when-compile (autoload ...))"
14126         * lisp/gnus/gnus-art.el (nneething-get-file-name):
14127         Declare rather than autoload.
14128         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
14129         Remove pointless autoload.
14130         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
14131         (gnus-topic-create-topic, gnus-topic-enter-dribble):
14132         Declare rather than autoload.
14133         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
14134         (mailcap-extension-to-mime): Autoload at run-time.
14135         * lisp/gnus/mm-util.el (latin-unity-massage-name)
14136         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
14137         (latin-unity-representations-present-region):
14138         Declare rather than autoload.
14139         * lisp/gnus/mml-smime.el (epg-make-context)
14140         (epg-passphrase-callback-function): Autoload at run-time.
14141         (epg-context-set-signers, epg-context-result-for)
14142         (epg-new-signature-digest-algorithm)
14143         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
14144         (epg-sign-string, epg-encrypt-string)
14145         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
14146         (epg-configuration, epg-expand-group, epa-select-keys):
14147         Declare rather than autoload.
14148         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
14149         Autoload at run-time.
14150         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
14151         (gnus-registry-get-id-key, gnus-registry-action):
14152         Declare rather than autoload.
14153         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
14154         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
14155         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
14156         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
14157         (spam-stat-split-fancy): Remove pointless autoloads.
14158         * lisp/net/mairix.el: Load gnus-util when compiling.
14159         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
14160         (message-field-value): Declare rather than autoload.
14161         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
14162         Check gnus-alive-p is fbound.
14163         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
14164         (vm-check-for-killed-summary, vm-error-if-folder-empty)
14165         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
14166         Declare rather than autoload.
14168         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
14170         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
14171         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
14173         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
14175         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
14177         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
14178         * lisp/emacs-lisp/package.el (epg-signature-status):
14179         Fix declarations.
14181         * lisp/play/gametree.el (gametree-show-children-and-entry)
14182         (gametree-apply-layout, gametree-mouse-show-subtree)
14183         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
14185         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
14186         Handle cl-defgeneric, cl-defmethod.
14188 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
14190         Highlight both type and symbol name
14191         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
14192         Highlight both type and symbol name.
14194         Insert, highlight and align line numbers in xref output
14195         * lisp/progmodes/etags.el (xref-location-line): Specialize for
14196         xref-etags-location.
14197         * lisp/progmodes/xref.el (xref-location-line): New generic method.
14198         (xref-file-location): Add reader for the line slot.
14199         (xref--location-at-point): Skip to the `xref-location' property.
14200         (xref--collect-reference): Drop the line number from description.
14201         (xref--insert-xrefs): Insert, highlight and align line numbers.
14203 2015-05-04  Daniel Colascione  <dancol@dancol.org>
14205         Fix previous commit
14207 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
14209         Don't pulse the indentation, or the newline
14210         * lisp/cedet/pulse.el (pulse-lighten-highlight)
14211         (pulse-reset-face): Fall back to the inherited background
14212         attribute in FACE.
14213         (pulse-momentary-highlight-region): Add autoload cookie.
14214         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
14215         indentation, or the newline, if the line's non-empty
14216         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
14218 2015-05-04  Daniel Colascione  <dancol@dancol.org>
14220         Add `save-mark-and-excursion', which has the old `save-excursion' behavior
14221         * doc/lispref/positions.texi (Excursions): Document
14222         `save-mark-and-excursion'.
14223         * lisp/font-lock.el (font-lock-fontify-block): Use
14224         `save-mark-and-excursion' instead of `save-excursion', restoring
14225         Emacs 24 behavior.
14226         * lisp/simple.el (save-mark-and-excursion--save)
14227         (save-mark-and-excursion--restore): New functions.
14228         (save-mark-and-excursion): New user macro.
14229         * src/editfns.c (Fsave_excursion): Mention
14230         `save-mark-and-excursion' in `save-excursion' documentation.
14232 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
14234         Classify lone symbol inside let varlist as variable
14235         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
14236         Classify lone symbol inside let varlist as variable.
14237         * test/automated/elisp-mode-tests.el (completest-variables-in-let-bindings):
14238         New test.
14240         Add xref-pulse-on-jump
14241         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
14242         Add autoload cookie.
14243         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
14244         (xref--maybe-pulse): New function.
14245         (xref-pop-marker-stack, xref--pop-to-location)
14246         (xref--display-position): Use it.
14247         (xref--location-at-point): Use back-to-indentation.
14249 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14251         * lisp/org/org-{macs,list}.el: Fix lexical warnings
14252         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
14253         (org-list-get-next-item, org-list-get-prev-item)
14254         (org-list-get-children): Mark unused arg `struct'.
14255         (org-list-use-alpha-bul-p): Remove unused var `bul'.
14256         (org-toggle-checkbox): Mark unused var.
14257         (org-update-checkbox-count): Remove unused var `box-num'.
14258         (org-adapt-indentation): Declare.
14259         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
14260         (org-list-send-list): Remove unused var `txt'.
14261         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
14262         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
14263         * lisp/org/org-macs.el: Use `declare'.
14264         (org-with-limited-levels): Declare dyn-bound vars.
14266 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
14268         Fix minor issues with CEDET on MS-Windows
14269         * lisp/cedet/semantic/symref/idutils.el
14270         (semantic-symref-parse-tool-output-one-line): Fix the search
14271         regexp to match MS-Windows file names with drive letters.
14272         (Bug#19468)
14273         * lisp/cedet/semantic/symref/grep.el
14274         (semantic-symref-grep-use-template): Remove "--color=always" from
14275         Grep switches on MS-Windows.
14276         (semantic-symref-grep-shell): Use shell-file-name as the default
14277         value, so this works not only on Posix platforms.
14278         (semantic-symref-perform-search): Use shell-quote-argument instead
14279         of literal '..' for portable quoting of Grep command-line
14280         argument.  Use shell-command-switch instead of a literal "-c".
14281         * lisp/cedet/semantic/bovine/gcc.el
14282         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
14283         for an absolute file name in a portable way.
14285 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
14287         * lisp/emacs-lisp/package.el: Remove `package--silence' variable
14288         (package-import-keyring, package-refresh-contents)
14289         (package-compute-transaction, package--save-selected-packages)
14290         (package-install-from-archive, package-delete)
14291         (package-menu--perform-transaction): Use `inhibit-message'
14292         instead.
14293         (package--compile): Set `warning-minimum-level' to :error.
14295 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
14297         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom
14298         (terminal-init-screen): Use it (bug#20356).
14299         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
14300         (xterm--extra-capabilities-type): New const.
14301         (xterm-extra-capabilities): Use it.
14302         (xterm--version-handler): Lower the pseudo-version for `screen'.
14304 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
14306         xref--insert-xrefs: Tweak the faces
14307         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
14308         Always insert a newline at the end (to avoid mouse-face background
14309         tail at the last line).
14311         elisp-completion-at-point: Prioritize being quoted over funpos
14312         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
14313         Only consider function position when not inside quoted form
14314         (bug#20425).
14315         * test/automated/elisp-mode-tests.el: New file.
14317         Stop vc-print-log from jumping to the top
14318         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
14319         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
14320         is not specified.
14321         (vc-incoming-outgoing-internal): Always pass nil.
14322         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
14323         call it, and don't set vc-sentinel-movepoint (bug#15322).
14324         (vc-print-root-log): Don't fetch the root working revision, nor
14325         pass it to vc-print-log-internal.
14327 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
14329         Fix display of keyboard layouts for right-to-left scripts
14330         * lisp/international/quail.el (quail-insert-kbd-layout): Force
14331         left-to-right paragraph direction.
14333 2015-05-02  K. Handa  <handa@gnu.org>
14335         * cmds.c (internal_self_insert): When we insert spaces for
14336         padding, set point before the padding spaces, not after them.
14338 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
14340         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
14342 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
14344         Fix etags-xref-find for references
14345         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): Use `cl-mapcan'.
14346         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
14347         directory if no tags tables are loaded (bug#19468).
14349 2015-05-02  Philipp Stephani  <phst@google.com>
14351         Update the options in whitespace-style defcustom
14352         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
14353         `repeat' because the option is really set-like.  Add missing
14354         options.  Reorder options to match the order in the
14355         documentation.  (Bug#20346)
14357 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
14359         Fix error diagnostics of c-macro-expand
14360         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
14361         too early if no start-marker string was found -- that generally
14362         means cpp exited abnormally, and we still want to show its error
14363         messages to the user.
14365         Don't require Texinfo 5.0 for Emacs documentation
14366         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
14367         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
14368         "@codequoteundirected on", respectively, to avoid requiring
14369         Texinfo 5.x for Emacs documentation.
14371 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
14373         * lisp/files.el (pwd):
14374         When called with a prefix argument, insert the current default
14375         directory at point.
14377 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
14379         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
14380         * lisp/isearch.el (isearch-mode-map): Don't inhibit
14381         function-key-map remapping for backspace (bug#20466).
14383 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
14385         Implement xref-find-references in etags and elisp-mode
14386         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
14387         (elisp-xref-find): Use it.
14388         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
14389         * lisp/progmodes/xref.el (xref-collect-references):
14390         (xref--collect-reference): New functions.
14392 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
14394         Prefer plain characters to Texinfo circumlocutions
14395         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
14396         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
14398         Fix single-quoting style in PDF manuals
14399         The PDF versions of the GNU manuals used curved single quotes to
14400         represent grave accent and apostrophe, which made it a pain to cut
14401         and paste code examples from them.  Fix the PDF versions to use
14402         grave accent and apostrophe for Lisp source code, keystrokes, etc.
14403         This change does not affect the info files, nor does it affect
14404         ordinary uses of curved single quotes in PDF.
14405         * doc/emacs/docstyle.texi: New file, which specifies treatment for
14406         grave accent and apostrophe, as well as the document encoding.
14407         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
14408         * doc/lispintro/emacs-lisp-intro.texi:
14409         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
14410         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
14411         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
14412         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
14413         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
14414         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
14415         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
14416         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
14417         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
14418         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
14419         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
14420         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
14421         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
14422         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
14423         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
14424         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
14425         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
14426         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
14427         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
14428         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
14429         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
14430         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
14431         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
14432         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
14433         * doc/misc/woman.texi:
14434         Use it instead of '@documentencoding UTF-8', to lessen the need for
14435         global changes like this in the future.
14436         * doc/emacs/Makefile.in (EMACS_XTRA):
14437         * doc/lispintro/Makefile.in (srcs):
14438         * doc/lispref/Makefile.in (srcs):
14439         Add dependency on docstyle.texi.
14440         * doc/misc/Makefile.in (style): New macro.
14441         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
14442         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
14443         Use it.
14445 2015-05-01  Glenn Morris  <rgm@gnu.org>
14447         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
14449         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
14450         (help-fns--signature): Declare.
14452         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
14454 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
14456         New macro seq-let, providing destructuring support to seq.el
14457         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
14458         to `cl-destructuring-bind' but works on all sequence types supported
14459         by `seq.el'.  Bump version number to 1.6.
14460         * test/automated/seq-tests.el: Add tests for seq-let.
14461         * doc/lispref/sequences.texi: Add documentation for seq-let.
14463 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
14465         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer
14467 2015-05-01  Glenn Morris  <rgm@gnu.org>
14469         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
14471 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
14473         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
14474         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
14475         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
14476         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
14477         (Bug#20445).
14479 2015-05-01  K. Handa  <handa@gnu.org>
14481         * mule-cmds.el (input-method-use-echo-area): Change :type to
14482         'boolean.
14484 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14486         Start using proportional fonts in eww by default
14487         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
14488         it seems to work well.
14490         Fix links in tables in shr
14491         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
14492         makes (some) links in tables not work.
14494 2015-05-01  Jan D  <jan.h.d@swipnet.se>
14496         (ns-get-cut-buffer-internal): Remove this alias.
14497         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
14499 2015-04-30  Glenn Morris  <rgm@gnu.org>
14501         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
14502         Update for 2015-02-08 change to indirect-function.
14504         * lisp/term/ns-win.el (ns-get-selection-internal):
14505         Remove declaration for function deleted 2014-10-21.
14507         * lisp/dom.el: Load subr-x when compiling, for when-let.
14509         Silence some compilation warnings
14510         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
14511         * lisp/emulation/cua-base.el (delete-active-region):
14512         * lisp/net/net-utils.el (w32-get-console-output-codepage):
14513         * lisp/term/ns-win.el (ns-own-selection-internal)
14514         (ns-disown-selection-internal, ns-selection-owner-p)
14515         (ns-selection-exists-p, ns-get-selection):
14516         Declare for compiler..
14518         Function declaration updates prompted by 'make check-declare'
14519         * lisp/emacs-lisp/package.el (lm-homepage):
14520         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
14521         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
14522         * lisp/gnus/mml.el (libxml-parse-html-region):
14523         * lisp/gnus/nnrss.el (libxml-parse-html-region):
14524         * lisp/net/eww.el (libxml-parse-html-region):
14525         * lisp/net/shr.el (libxml-parse-html-region):
14526         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
14527         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
14528         * lisp/vc/vc-git.el (vc-annotate-convert-time):
14529         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
14530         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
14531         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
14532         Update declaration.
14534         Remove compatibility code for 20-year old function renaming
14535         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
14536         Make it an obsolete alias.
14537         (idlwave-shell-filter): Change all uses to comint-output-filter.
14539 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
14541         Add ace-window face config
14542         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
14543         configuration.
14545 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
14547         Unclutter 'make doc' output a bit
14548         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
14549         Use make subst rather than sh IFS to split target string apart.
14550         This makes 'make' output easier to follow.
14552         Merge from gnulib
14553         * doc/misc/texinfo.tex: Update from gnulib.
14555 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14557         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh
14558         (package-menu--print-info): Obsolete.
14559         (package-menu--print-info-simple): New function.
14560         (package-menu--refresh): Use it, simplify code, and improve
14561         performance.
14562         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
14563         Tiny performance improvement.
14565         * lisp/emacs-lisp/package.el (package--message): inhibit-message
14567 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
14569         Omit -Wstrict-overflow workaround in GCC 5
14570         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
14571         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
14573         Merge from gnulib
14574         This incorporates:
14575         2015-04-29 extern-inline: no need for workaround in GCC 5.1
14576         2015-04-26 file-has-acl: port to CentOS 6
14577         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
14579 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
14581         Set next-error-* in xref--xref-buffer-mode
14582         * xref.el (xref--xref-buffer-mode): Set `next-error-function' and
14583         `next-error-last-buffer'.
14584         (xref--next-error-function): New function.
14585         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
14587 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
14589         python.el: Fix warnings on looking-back calls missing LIMIT
14590         * lisp/progmodes/python.el (python-shell-accept-process-output):
14591         Pass LIMIT arg to looking-back.
14593 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14595         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress
14596         (package--download-and-read-archives): Use pushnew instead of
14597         append.  If something terrible happened during a previous
14598         download, simply refreshing should now make things work again.
14600 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
14602         Introduce etags-xref-find-definitions-tag-order
14603         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
14604         New variable.
14605         (etags--xref-find-definitions): Use it (bug#19468).
14607 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
14609         PATH- and completion-related fixes in Eshell on MS-Windows
14610         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
14611         MS-Windows, prepend "." to list of directories produced from PATH,
14612         as Windows always implicitly searches the current directory first.
14613         (eshell-force-execution): Make it have a non-nil default value on
14614         MS-Windows and MS-DOS.
14615         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
14616         eshell-force-execution is non-nil, complete on readable files and
14617         directories, not only executables.  When running on MS-Windows,
14618         prepend "." to list of directories produced from PATH, as Windows
14619         always implicitly searches the current directory first.
14621 2015-04-29  Sam Steingold  <sds@gnu.org>
14623         bury RCIRC buffers when there is no activity
14624         lisp/net/rcirc.el (rcirc-non-irc-buffer): remove
14625         (rcirc-bury-buffers): new function
14626         (rcirc-next-active-buffer): when there is no new activity, use
14627         `rcirc-bury-buffers' to hide all RCIRC buffers
14629 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
14631         Fix DBUS query result parsing for secrets-search-items
14632         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
14633         parsing.  The function assumed that return value of the
14634         SearchItems method called on a collection is a list of two lists,
14635         however this is true only when no collection is specified.  GNOME
14636         had used to incorrectly return a list of two lists in both cases,
14637         but this was already fixed:
14638         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
14639         incorrect information in the secrets-search-items’ docstring.
14640         (Bug#20449)
14642 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14644         * lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'
14645         (byte-compile--message): Use `inhibit-message' instead of hiding
14646         the previous message with (message nil).
14648 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
14650         Remove the deprecated INTERNAL_FIELD macro by expanding it
14651         * src/lisp.h (INTERNAL_FIELD): Remove.
14652         (DEFVAR_KBOARD): Modify accordingly.
14653         * alloc.c, buffer.c, buffer.h, category.c, keyboard.c, keyboard.h:
14654         * syntax.c: Adjust users.
14655         * src/buffer.c (compact_buffer): Use BVAR.
14657 2015-04-29  Glenn Morris  <rgm@gnu.org>
14659         Replace an obsolete function alias
14660         * lisp/isearch.el (isearch-yank-x-selection):
14661         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
14662         (mouse-drag-secondary-moving):
14663         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
14664         Replace obsolete alias x-get-selection with gui-get-selection.
14666 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14668         * lisp/mail/rmailsum.el: Use lexical-binding.
14670 2015-04-29  Glenn Morris  <rgm@gnu.org>
14672         * test/automated/package-test.el (package-test-update-archives-async):
14673         Skip test on hydra.nixos.org.
14675 2015-04-28  Glenn Morris  <rgm@gnu.org>
14677         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
14678         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
14679         (foldout-mouse-hide-or-exit): Use new names for outline functions.
14681         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
14682         Update for 2014-06-26 hideif.el change.
14684         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
14685         (rmail--decode-and-apply): New function.
14686         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
14688         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
14690 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14692         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
14693         (package-menu--refresh): Delegate obsolete-hiding to
14694         `package--remove-hidden'.
14695         (package--remove-hidden): Disregard high-priority package if it is
14696         older than the installed one.
14698 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
14700         Update source file encoding list
14701         Update admin/notes/unicode, along with coding system cookies in
14702         other files, so that the two match each other better.
14703         * admin/notes/unicode: lisp/language/ethio-util.el and
14704         lisp/language/ethiopic.el also use utf-8-emacs.
14705         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
14706         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
14707         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
14708         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
14709         * etc/refcards/sk-survival.tex:
14710         Add "coding: utf-8" so that this file is not mishandled in a
14711         Latin-1 or Big-5 locale.
14712         * lisp/international/robin.el, lisp/org/ox-ascii.el:
14713         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
14714         * lisp/language/ethio-util.el: Fix trailer.
14716 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
14718         Fix synchronous invocation of Ispell
14719         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
14720         value to ispell-process-directory before calling ispell-init-process.
14721         Don't call set-process-coding-system if ispell-async-processp is nil.
14722         (Bug#20448)
14724 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14726         * lisp/emacs-lisp/package.el: Skip space and comments in init file
14727         (package--ensure-init-file): Insert snippet at first
14728         non-whitespace non-comments line.  Respects local-vars at the top
14729         of the file.
14731 2015-04-28  Glenn Morris  <rgm@gnu.org>
14733         * lisp/mail/rmail.el (rmail-copy-headers):
14734         Handle rmail-nonignored-headers being nil.  (Bug#18878)
14736         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
14738         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
14739         Don't get confused by a bzrlib version mismatch warning.
14741 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14743         Change default location of EUDC options file
14744         * NEWS: Document change to EUDC options file's default location.
14745         * lisp/net/eudc-vars.el (eudc-options-file): Use
14746         `locate-user-emacs-file' to change default options file location.
14748 2015-04-27  Glenn Morris  <rgm@gnu.org>
14750         * test/automated/package-test.el (package-test-update-archives-async):
14751         Try to handle the test server script dying.
14753 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14755         * lisp/saveplace.el (save-place-mode): New minor mode.
14756         (save-place): Redefine as an obsolete alias.
14758         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
14759         * lisp/midnight.el: Use lexical-binding.
14760         (midnight-mode): Make it a proper minor mode.
14761         (midnight-buffer-display-time): Make arg non-optional.
14762         (midnight-find): Remove.
14763         (clean-buffer-list-kill-never-regexps)
14764         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
14765         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
14766         contain functions.
14767         (clean-buffer-list): Use cl-find.
14768         Allow clean-buffer-list-kill-never-regexps to contain functions.
14770 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
14772         Bump version of seq.el to 1.5
14773         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
14774           from seq-doseq.  Bump version number of seq.el.
14776 2015-04-27  Glenn Morris  <rgm@gnu.org>
14778         * lisp/mail/rmail.el (rmail-reply):
14779         Decode subject before matching "Re:" prefix.  (Bug#20396)
14781 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14783         * lisp/emacs-lisp/package.el: Small improvements
14784         (package--with-work-buffer-async): More informative error.
14785         (package-install-user-selected-packages): Rename to
14786         `package-install-selected-packages'.
14788 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14790         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
14791         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
14792         (eieio--class-make): Remove leftover `tag'.
14794 2015-04-27  Glenn Morris  <rgm@gnu.org>
14796         * lisp/gnus/message.el (gnus-extract-address-components):
14797         Remove bogus declaration that was masking previous problem.
14799 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
14801         * lisp/gnus/message.el (message-insert-formatted-citation-line):
14802         Fix typo.  (Bug#20318)
14804 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14806         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
14808         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
14809         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
14810         the buffer in yet another frame.
14811         (reftex-toc-visit-location): Make sure toc-window has focus at the end
14812         when `final' is nil.
14813         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
14814         silence warnings.  Use `--' to clarify that it's internal.
14815         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
14816         (reftex-toc-promote): Clarify unused argument.
14817         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
14818         Add `reftex--' prefix.  Fix all users.
14819         (reftex-toc-promote-prepare): Use _ for dummy variable.
14820         (reftex-toc-restore-region): Rename `m
14822 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
14824         Fix a typo in bibtex.el
14825         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
14826         last change.  (Bug#20429)
14828         Fix redisplay of frame after loading new fonts
14829         * src/xdisp.c (redisplay_internal): When retrying redisplay of a
14830         frame because new fonts were loaded, disable all redisplay
14831         optimizations on that frame by calling SET_FRAME_GARBAGED.
14832         (Bug#20410)
14834 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14836         * lisp/info.el (Info-menu): Properly provide the `default'
14837         (Bug#20391)
14839         * elisp-mode.el: Catch errors from `documentation'
14840         (Bug#20418)
14841         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
14842         Catch errors from documentation.
14843         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
14845 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
14847         lisp/emacs-lisp/package.el: Move variables to silence byte-compiler
14848         Remove redundant ":group 'package".
14850 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
14852         Fix a typo in rmail.el
14853         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
14854         last commit.  (Bug#20429)
14856 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
14858         Introduce xref-prompt-for-identifier
14859         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
14860         (xref--read-identifier): Use it
14861         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
14863 2015-04-26  João Távora  <joaotavora@gmail.com>
14865         `tex-insert-quote' after single `'' opens quotes instead of closing
14866         Without this, it's very hard to precede double quotes with the
14867         apostrophe character, i.e. insert the sequence '``
14868         (quote-backquote-backquote), commonly useful in portuguese, for
14869         instance.
14870         * tex-mode.el (tex-insert-quote): Add ?' to the list of preceding
14871         chars making `tex-insert-quote' be in the "opening" context.
14873 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
14875         Pass `id' to `completing-read' as def instead of initial input
14876         * xref.el (xref--read-identifier): Pass `id' to `completing-read'
14877         as the default value instead of initial input
14878         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
14880 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
14882         Don't freeze with unreadable processes
14883         Don't freeze if an exiting process can't be read from. (Bug#19860).
14884         This fixes a bug I introduced in
14885         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
14886         "* process.c: Add sanity checks for file descriptors."
14887         Dmitry Gutov did most of the legwork in finding the problem.
14888         * src/process.c (wait_reading_process_output):
14889         Treat non-running processes that can't be read from
14890         the same as other non-running processes.
14892 2015-04-25  Alan Mackenzie  <acm@muc.de>
14894         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
14895         * lisp/subr.el (remove-yank-excluded-properties): put
14896         `with-silent-modifications' around only the last three lines of code.
14898 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
14900         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
14901         (package--all-keywords): Deleted variable.
14903         * etc/NEWS: Document package-hiding functionality
14905 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
14907         lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
14909         Clarify the doc string of 'replace-regexp-in-string'
14910         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
14912         Improve doc string of 'insert-buffer-substring'
14913         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
14915         MS-Windows followup for the recent gnulib update
14916         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
14917         acl-internal.c.
14919 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
14921         Spelling fixes
14923         Merge from gnulib
14924         This incorporates:
14925         2015-04-24 file-has-acl: new module, split from acl
14926         2015-04-24 manywarnings: add GCC 5.1 warnings
14927         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
14928         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
14929         2015-04-15 acl: On Linux, check for acls without libacl
14930         2015-04-14 tempname: avoid unused parameter warnings (trivial)
14931         * lib/acl-internal.c: New file, from gnulib.
14932         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
14933         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
14934         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
14935         Update from gnulib.
14937         Port --enable-gcc-warnings to GCC 5.1 x86-64
14938         * lib-src/ebrowse.c (dump_sym):
14939         * lib-src/hexl.c (main):
14940         * src/ccl.c (ccl_driver):
14941         * src/character.c (string_escape_byte8):
14942         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
14943         * src/gnutls.c (Fgnutls_boot):
14944         * src/gtkutil.c (xg_check_special_colors):
14945         * src/image.c (x_build_heuristic_mask):
14946         * src/print.c (safe_debug_print, print_object):
14947         * src/term.c (produce_glyphless_glyph):
14948         * src/xdisp.c (get_next_display_element)
14949         (produce_glyphless_glyph):
14950         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
14951         Don't use a signed format to print an unsigned integer, or vice
14952         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
14953         * src/image.c (png_load_body, jpeg_load_body):
14954         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
14956 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
14958         Add new faces to tsdh-light-theme
14959         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
14960         definitions for Info-quoted, ace-jump-face-foreground,
14961         hl-paren-face, show-paren-match, and show-paren-mismatch.
14963 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
14965         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
14967 2015-04-24  Glenn Morris  <rgm@gnu.org>
14969         * build-aux/gitlog-to-emacslog:
14970         Use raw log format rather than wrapped one.
14972 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
14974         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code
14975         (seq-doseq): Fix out-of-scope binding.
14976         Don't call `seq-length at every iteration.
14977         Reduce `if's from 3 to 2 per iteration.
14978         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
14980 2015-04-24  Glenn Morris  <rgm@gnu.org>
14982         * lisp/textmodes/text-mode.el (text-mode-hook):
14983         Move text-mode-hook-identify to default.
14985         * lisp/mouse.el (minor-mode-menu-from-indicator):
14986         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
14988         * lisp/help-fns.el (describe-function): More type checking.
14989         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
14991         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
14992         (Bug#20325)
14994 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
14996         shr: strip leading whitespace when expanding URLs
14997         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
14999 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
15001         Clarify "co-authored" some more
15003         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
15005         Clarify doc strings of functions that search for properties
15006         * src/textprop.c (Fnext_char_property_change)
15007         (Fprevious_char_property_change)
15008         (Fnext_single_char_property_change)
15009         (Fprevious_single_char_property_change, Fnext_property_change)
15010         (Fnext_single_property_change, Fprevious_property_change)
15011         (Fprevious_single_property_change): Clarify doc strings wrt return
15012         value and the optional LIMIT argument.  (Bug#20411)
15014 2015-04-24  Glenn Morris  <rgm@gnu.org>
15016         * test/automated/message-mode-tests.el (message-mode-propertize):
15017         Handle non-writable HOME; eg on hydra.nixos.org.
15019 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
15021         Avoid starting threads by w32-shell-execute
15022         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
15023         local file names, before invoking ShellExecute.  (Bug#20220)
15025 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
15027         Fix following doc-links in `widget-documentation-link-action'
15028         * lisp/wid-edit.el (widget-documentation-link-action): Make
15029         following doc-links less simplistic (Bug#20398).
15031 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15033         Improve EUDC manual
15034         * eudc.texi (Troubleshooting): New LDAP troubleshooting subsection.
15036 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
15038         Omit needless "\ " after multibyte then newline
15039         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
15040         (print_object): When print-escape-multibyte is non-nil and a
15041         multibyte character is followed by a newline or formfeed, followed
15042         by a hex digit, don't output a needless "\ " before the hex digit.
15043         * test/automated/print-tests.el (print-hex-backslash): New test.
15045 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
15047         Add a new `inhibit-message' variable
15048         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
15049         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
15050         `inhibit_message' is non-zero.
15051         * etc/NEWS: Add an entry.
15052         * doc/lispref/display.texi: Add an entry for `inhibit-message',
15053           mention it in `message'.
15055 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
15057         Fix last fix in `display-buffer-record-window'.
15058         * lisp/window.el (display-buffer-record-window): Fix last fix.
15060 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
15062         Minor edits in CONTRIBUTE
15063         * CONTRIBUTE: Rearrange instructions about log messages.
15064         Use "Git" capitalized all over.
15065         Use 2 spaces between sentences.
15067 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
15069         * lisp/files.el (basic-save-buffer): Fix argument
15071         * lisp/cus-edit.el (custom-file): Consider init-file-had-error
15072         In case `(and (null custom-file) init-file-had-error)' do the same
15073         thing we'd do if `(null user-init-file)', which is to either error out
15074         or return nil.  This is in line with `custom-save-all' which would
15075         throw an error in that situation. (bug#20355)
15077         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu
15078         (package-menu-hide-low-priority): New variable, see its doc.
15079         (package-archive-priorities): Update doc.
15080         (package-desc-priority): New function.
15081         (package-desc-priority-version): Use it.
15082         (package--remove-hidden): New function.
15083         (package-menu--refresh): Use it.
15085         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages
15086         (package-menu--hide-obsolete): New variable.
15087         (package--remove-hidden): Use it.
15088         (package-menu-hide-obsolete): New interactive function to toggle
15089         the variable.
15090         (package--quick-help-keys): Document it.
15091         (package-menu-async): Add :version tag.
15092         (package-menu-mode-map): Bind package-menu-hide-obsolete.
15093         (package-desc-status): Indicate non-installed obsolete packages as
15094         avail-obso.
15095         (package-menu-mark-install): Allow installation of avail-obso.
15096         (package-menu--status-predicate): Sort avail-obso with available.
15098 2015-04-22  Alan Mackenzie  <acm@muc.de>
15100         On C-y, stop some text property entries being written into buffer-undo-list
15101         lisp/subr.el (remove-yank-excluded-properties): enclose the code in
15102         `with-silent-modifications'.
15104 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
15106         In display-buffer-record-window record selected window if necessary.
15107         * lisp/window.el (display-buffer-record-window): Store selected window
15108         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
15110 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
15112         Fix reftex-citation bug
15113         * reftex-cite.el (reftex-extract-bib-entries): Fix
15114         `wrong-type-argument stringp nil' error that occurs when AUCTeX
15115         integration is enabled and there are no citations in the document
15116         so far.
15118 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
15120         Add or reset based on the presence of MERGE_HEAD
15121         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
15122         `vc-git-resolve-when-done' to `after-save-hook' in either case.
15123         (vc-git-conflicted-files): Add a TODO.
15124         (vc-git-resolve-when-done): Depending on the presence of
15125         MERGE_HEAD, either update the resolved file in the index, or
15126         remove it from there.  (Bug#20292)
15128 2015-04-21  Glenn Morris  <rgm@gnu.org>
15130         * lisp/custom.el (custom-declare-group): No need to purecopy
15131         custom-current-group-alist members following recent change to set
15132         it to nil before dumping.
15134         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
15135         (Bug#20399)
15137 2015-04-21  Daniel Colascione  <dancol@dancol.org>
15139         Unbreak no-op buffer save message
15140         * lisp/files.el (save-buffer): Pass interactive flag to `basic-save-buffer`
15141         (basic-save-buffer): Accept called-interactively as an argument instead of
15142         directly invoking called-interactively-p, which will always yield nil
15143         in that context.
15145 2015-04-21  Alan Mackenzie  <acm@muc.de>
15147         CC Mode: Do nothing in before/after-change-functions for text property changes
15148         Fixes bug#20266.
15149         lisp/progmodes/cc-mode.el (c-basic-common-init): Make
15150         yank-handled-properties buffer local, and remove 'category from it.
15151         (c-called-from-text-property-change-p): New function.
15152         (c-before-change): Don't do anything if a call of the new function
15153         returns non-nil.
15154         (c-after-change): Don't do much if a call of the new function returns
15155         non-nil.
15156         (c-extend-after-change-region): Put changes to text property 'fontified
15157         inside c-save-buffer-state.
15159 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
15161         Fix byte-compiler warnings about looking-back.
15162         * lisp/vc/log-view.el (log-view-end-of-defun-1):
15163         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
15164         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
15165         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
15166         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
15167         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
15168         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
15169         * lisp/org/org.el (org-insert-heading, org-sort-entries):
15170         * lisp/org/org-mouse.el (org-mouse-end-headline)
15171         (org-mouse-context-menu):
15172         * lisp/org/org-clock.el (org-clock-cancel):
15173         * lisp/man.el (Man-default-man-entry):
15174         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
15175         (rmail-ensure-blank-line):
15176         * lisp/mail/footnote.el (Footnote-delete-footnote):
15177         * lisp/mail/emacsbug.el (report-emacs-bug):
15178         * lisp/info.el (Info-follow-reference, Info-fontify-node):
15179         * lisp/info-look.el (info-lookup-guess-custom-symbol):
15180         * lisp/help-fns.el (help-fns--key-bindings):
15181         * lisp/files.el (hack-local-variables):
15182         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
15183         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
15184         (viper-complete-filename-or-exit):
15185         * lisp/emulation/viper-cmd.el (viper-backward-indent):
15186         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
15187         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
15188         * lisp/cus-edit.el (custom-face-edit-value-create):
15189         * lisp/calendar/todo-mode.el (todo-set-item-priority)
15190         (todo-filter-items-1, todo-convert-legacy-files)
15191         (todo-prefix-overlays): Add explicit second arg to looking-back.
15193 2015-04-20  Glenn Morris  <rgm@gnu.org>
15195         Avoid non-nil current-load-list at startup
15196         * src/process.c (init_process_emacs): Move Fprovide statement...
15197         (syms_of_process): ... to here.
15199         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
15201         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value in emacs -Q.
15203 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
15205         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
15206         (Bug#20330)
15208 2015-04-20  Glenn Morris  <rgm@gnu.org>
15210         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
15212         Tweak exec-path in uninstalled case
15213         * src/callproc.c (init_callproc): If running uninstalled, do not
15214         include eventual installation libexec directory in exec-path.
15216 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
15218         * lisp/emacs-lisp/package.el: Filter by multiple keywords and cache keywords
15219         (package-menu-filter): Accept a list of keywords.
15220         (package--all-keywords): New variable to cache known keywords.
15221         (package-all-keywords): Populate it if necessary.
15222         (package-refresh-contents): Reset it.
15224         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
15225         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
15226         as special keywords which match agains package archive and status
15227         respectively.
15228         * etc/NEWS: Document it.
15230 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
15232         Describe and index "empty overlays".
15233         * doc/lispref/display.texi (Overlays): Improve indexing.
15234         (Managing Overlays): Describe "empty" overlays.
15235         (Overlay Properties, Finding Overlays): Add cross-reference to
15236         where empty overlays are described.
15238 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
15240         Spelling fixes
15242         Quote 'like this' in top-level files
15243         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
15244         Prefer to single-quote 'like this' (instead of the older style
15245         `like this').
15246         * configure.ac: Fix some space-before-tab problems that 'git commit'
15247         complained about.
15249         Use bool for boolean in textprop.c, undo.c
15250         * src/textprop.c (soft, hard): Now constants instead of macros.
15251         (validate_plist): Rewrite to avoid need for boolean local.
15252         (interval_has_all_properties, interval_has_some_properties)
15253         (interval_has_some_properties_list, add_properties)
15254         (remove_properties, get_char_property_and_overlay)
15255         (Fnext_single_char_property_change)
15256         (Fprevious_single_char_property_change, add_text_properties_1)
15257         (Fremove_text_properties, Fremove_list_of_text_properties)
15258         (copy_text_properties):
15259         * src/tparam.c (tparam1):
15260         * src/undo.c (record_change, record_property_change)
15261         (syms_of_undo):
15262         Use 'true' and 'false' for booleans.
15264 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
15266         Call `smerge-start-session' even when dealing with a stash conflict
15267         * lisp/vc/vc-git.el (vc-git-find-file-hook):
15268         Call `smerge-start-session' even when dealing with a stash
15269         conflict (bug#20292).
15271 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
15273         Add option to eshell/clear to clear scrollback.
15274         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
15275         (eshell/clear): Add an optional SCROLLBACK argument. If non-nil,
15276         scrollback contents are cleared.
15277         * etc/NEWS: Describe change.
15278         * doc/misc/eshell.texi: Add entry for `clear'.
15280 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
15282         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
15283         where either will do.
15285 2015-04-19  Steve Purcell  <steve@sanityinc.com>
15287         Assume package archive-contents are UTF8-encoded
15288         * lisp/emacs-lisp/package.el (package--read-archive-file):
15289         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
15290         downloaded and cached archive-contents files, so that non-ASCII
15291         characters in package descriptions are displayed correctly in the
15292         `list-packages' menu. (Bug#20231)
15294 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
15296         Abort when looking at stashed changes
15297         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
15298         stashed changes (bug#20292).
15300 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
15302         Refactor low-level printing for simplicity
15303         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
15304         PRINTPREPARE; doable now that we assume C99.  All callers changed.
15305         (PRINTCHAR): Remove, as it adds more mystery than clarity.
15306         All callers changed.
15307         (strout): Assume that caller computes length.  All callers changed.
15308         (print_c_string): New function.
15309         (write_string, write_string_1): Compute length instead of asking
15310         the caller to compute it.  All callers changed.
15311         (write_string): Simplify by using write_string_1.
15312         (write_string_1): Simplify by using print_c_string.
15313         (Fterpri): Compute default val more clearly.
15314         (Fprin1_to_string, print_object):
15315         Assume C99 to avoid unnecessary nesting.
15316         (print_object): Prefer print_c_string to multiple printchar, or
15317         to calling strout with -1 length.  Coalesce into sprintf when
15318         this is easy.
15320 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
15322         Prefer "Bug#1234" in commit messages (Bug#20325)
15323         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
15324         as this isn't useful for Git.
15325         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
15327 2015-04-18  Glenn Morris  <rgm@gnu.org>
15329         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
15330         (Bug#19506)
15332 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
15334         * lisp/elec-pair.el (electric-pair-post-self-insert-function): Do not use `chomp' as a function.
15335         (Bug#19505)
15337 2015-04-18  Glenn Morris  <rgm@gnu.org>
15339         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
15341         * doc/emacs/misc.texi (Sorting): Small edit.
15342         (Bug#19896)
15344         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
15346 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
15348         css-mode.el: Support multi-line comment filling
15349         (Bug#20256)
15350         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
15351         comment filling.
15352         (css-adaptive-fill): New function.
15353         (css-mode): Set `adaptive-fill-function'.
15354         (scss-mode): Set `comment-continue'.
15356 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
15358         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into): Better error messages.
15360 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
15362         Minor improvements in Bulgarian input methods
15363         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
15364         Replace U+042C with U+045D, as the former character is not used in
15365         the modern Bulgarian language.
15366         (Bug#20350)
15368 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15370         Improve EUDC manual
15371         * eudc.texi (LDAP Configuration): Mention simple and SASL
15372         authentication schemes.  Add index items.  Shorten example server
15373         name.
15375 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
15377         Don't show both feature and function with the same name
15378         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
15379         Don't show both feature and function with the same name.
15381         (elisp--xref-identifier-location): Skip variable, if it's also a functiong
15382         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
15383         Avoid returning both the variable and the function for the same
15384         minor mode.
15386 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
15388         Fix fontification of keywords clobbered by the prompt.
15389         * lisp/comint.el (comint-output-filter): Remove the uses of
15390         with-silent-modifications I introduced as part of the last change.
15391         This fixes, e.g., erratically missing highlighting when running
15392         ./configure --help; ./configure in a shell-mode buffer with
15393         compilation-shell-minor-mode turned on.
15395 2015-04-17  Glenn Morris  <rgm@gnu.org>
15397         * admin/authors.el (authors-valid-file-names, authors-renamed-files-alist): Additions.
15399 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
15401         * lisp/indent.el (indent-region): Don't deactivate the mark
15402         (Bug#20357)
15404 2015-04-17  Sam Steingold  <sds@gnu.org>
15406         lisp/net/rcirc.el (defun-rcirc-command): mark `target' as ignorable
15408 2015-04-16  Leo Liu  <sdl.web@gmail.com>
15410         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
15412 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
15414         * lisp/erc/erc-pcomplete.el (erc-pcomplete): Don't use `pcomplete' any more.
15416 2015-04-16  Glenn Morris  <rgm@gnu.org>
15418         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
15420 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
15422         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
15423         * configure.ac (LIBJPEG): Leave it empty for MinGW.
15425 2015-04-16  Glenn Morris  <rgm@gnu.org>
15427         * lisp/replace.el (query-replace-from-to-separator): Delay initialization
15428         to avoid rogue setting after startup.
15430 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
15432         Pre-4.6 GCC succeeds with unknown option
15433         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
15434         (Bug#20338)
15436 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
15438         '[:graph:]' now excludes whitespace, not just ' '
15439         * doc/lispref/searching.texi (Char Classes):
15440         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
15441         sans whitespace (not sans space).
15442         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
15443         not just space.
15444         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
15446 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
15448         (looking-back): Make the second arg non-optional.
15449         * lisp/subr.el (substitute-key-definition-key, special-form-p)
15450         (macrop): Drop deprecated second arg to indirect-function.
15451         (looking-back): Make the second arg non-optional.
15453         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
15454         command is actually sent to the shell.
15456 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
15458         Port jpeg configuration to Solaris 10 with Sun C
15459         * configure.ac: Check for jpeglib 6b by trying to link it, instead
15460         of relying on cpp magic that has problems in practice.  Check for
15461         both jpeglib.h and jerror.h features.  Remove special case for
15462         mingw32, which should no longer be needed (and if it were needed,
15463         should now be addressable by hotwiring emacs_cv_jpeglib).
15464         (Bug#20332)
15466 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
15468         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
15469         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
15470         Move to elisp-mode.el.
15471         (lisp-mode-variables): (Re)move elisp-specific settings.
15472         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
15473         from lisp-mode-variables.
15474         (elisp--font-lock-flush-elisp-buffers): New function, moved from
15475         lisp-mode.el.
15477         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
15478         Avoid pathological slowdown at top-level in large file.
15480 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
15482         Standardize names of ChangeLog history files
15483         Suggested by Glenn Morris in:
15484         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
15485         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
15486         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
15487         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
15488         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
15489         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
15490         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
15491         Remove.
15493         Split top-level entries into pre- and post-April 7
15494         This more clearly distingiushes pre-April-7 ChangeLog entries (which
15495         are for top-level files only) from post-April-7 entries (which are
15496         about files at all levels.  Problem reported by Glenn Morris in:
15497         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
15498         * ChangeLog.1: Move post-April-7 entries from here ...
15499         * ChangeLog.2: ... to this new file.
15500         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
15502 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
15504         Fix recent cus-start changes that added customize-rogues
15505         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
15506         vars early.
15507         * lisp/loadup.el ("cus-start"): Move to the end to reduce customize-rogue.
15509 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
15511         Define cl-concatenate as an alias to seq-concatenate
15512         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
15513           code by making cl-concatenate an alias to seq-concatenate.
15515 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
15517         * src/lread.c (intern_1): Make sure we'd find the symbol we add
15518         (Bug#20334)
15519         * src/xfaces.c (resolve_face_name): Don't use `intern' with Lisp_Strings.
15521 2015-04-15  Glenn Morris  <rgm@gnu.org>
15523         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
15525 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15527         Clean up gnus-uu saving code slightly
15528         * gnus-uu.el (gnus-uu-save-article): Make the
15529         save-restriction/widen calls make more sense.
15531 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
15533         Make [:graph:] act like [:print:] sans space
15534         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
15535         [:graph:] so that it matches everything that [:print:] does,
15536         except for space.
15537         * doc/lispref/searching.texi (Char Classes):
15538         * etc/NEWS:
15539         * lisp/emacs-lisp/rx.el (rx):
15540         Document [:graph:] to be [:print:] sans ' '.
15541         * src/character.c, src/character.h (graphicp): New function.
15542         * src/regex.c (ISGRAPH) [emacs]: Use it.
15543         (BIT_GRAPH): New macro.
15544         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
15545         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
15546         Return BIT_GRAPH for RECC_GRAPH.
15547         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
15548         and ISPRINT if BIT_PRINT.
15550 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
15552         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
15553         Don't use call-next-method in a cl-defmethod.
15555         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
15556         (eieio--class-p): Remove, provided by cl-defstruct.
15558 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
15560         Add seq-intersection and seq-difference to the seq library
15561         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference): New
15562         functions.
15563         * test/automated/seq-tests.el: Add tests for seq-intersection and
15564         seq-difference.
15565         * doc/lispref/sequences.texi: Add documentation for seq-intersection
15566         and seq-difference.
15568 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
15570         * eieio-core.el (class-abstract-p): Don't inline, to avoid leaking internals
15572 2015-04-14  Sam Steingold  <sds@gnu.org>
15574         package--ensure-init-file: widen requires save-restriction
15576 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
15578         Improve the commit-msg Git hook for unibyte environments
15579         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
15580         in unibyte environments.  (Suggested by Paul Eggert
15581         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
15582         [:print:], based on UTF-8 sequences of the unprintable characters.
15584         Describe problems with cursor caused by Windows Magnifier
15585         * etc/PROBLEMS: Describe the problem with cursor shape on
15586         MS-Windows due to Windows Magnifier.
15587         (Bug#20271)
15589         Make [:print:] support non-ASCII characters correctly
15590         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
15591         (BIT_PRINT): New bit mask.
15592         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
15593         * src/character.c (printablep): New function.
15594         * src/character.h (printablep): Add prototype.
15595         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
15596         of 'print', 'alnum', and 'alphabetic'.
15597         * doc/lispref/searching.texi (Char Classes): Document the new
15598         behavior of [:print:].
15599         * etc/NEWS: Mention the new behavior of [:print:].
15601         Assign correct general-category and names to surrogates
15602         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
15603         surrogates.  This avoids assigning them the default
15604         general-category of 'Cn', i.e. unassigned codepoints.
15605         (unidata-get-name): Give surrogates synthetic names.
15607 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
15609         Assume C89 offsetof in xterm.c, xlwmenu.c
15610         * lwlib/xlwmenu.c (offset):
15611         * src/xterm.c (cvt_string_to_pixel_args):
15612         Use offsetof, not XtOffset.
15614 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
15616         Assume C89 offsetof in widget.c
15617         * src/widget.c (XtOffset): Remove; no longer needed.
15618         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
15620         Fix think-o in previous patch
15621         * src/window.c (count_windows, get_leaf_windows):
15622         Don't optimize count_windows incorrectly.
15624 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
15626         Avoid some int overflows in window.c
15627         * src/print.c (print_object):
15628         * src/window.c (sequence_number):
15629         * src/window.h (struct window.sequence_number):
15630         Don't assume window sequence number fits in int.
15631         * src/window.c (window_select_count):
15632         * src/window.h (struct window.use_time, window_select_count):
15633         Don't assume window use time fits in int.
15634         * src/window.c (Fsplit_window_internal):
15635         Don't assume user-supplied integer, or sum, fits in int.
15636         (Fset_window_configuration, count_windows, get_leaf_windows)
15637         (save_window_save, Fcurrent_window_configuration):
15638         Use ptrdiff_t for object counts.
15639         (Fset_window_configuration): Omit unused local 'n'.
15640         (count_windows): Simplify by writing in terms of get_leaf_windows.
15641         (get_leaf_windows): Don't store through FLAT if it's null.
15642         (extract_dimension): New static function.
15643         (set_window_margins, set_window_fringes, set_window_scroll_bars):
15644         Use it to avoid undefined behavior when converting user-supplied
15645         integer to 'int'.
15647 2015-04-13  Glenn Morris  <rgm@gnu.org>
15649         Minor doc copyedits
15650         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
15651         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
15653 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
15655         [Gnus] Catch the invalid-operation that idna.el will issue
15656         * lisp/gnus/gnus-art.el (gnus-use-idna):
15657         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
15658         * lisp/gnus/message.el (message-use-idna):
15659         Catch the invalid-operation that idna.el will issue.
15661 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
15663         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
15665 2015-04-13  Sam Steingold  <sds@gnu.org>
15667         package--ensure-init-file: widen before looking for "(package-initialize)"
15669 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
15671         Change diff-switches default to `-u'
15672         (Bug#20290)
15673         * doc/emacs/files.texi (Comparing Files): Document the new default
15674         value of `diff-switches'.
15675         * doc/emacs/trouble.texi (Sending Patches): Document the preference
15676         for unified diff format.  Escape the plus in the suggested `-F' regexp
15677         value.
15678         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
15680 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
15682         (gnus-group--setup-tool-bar-update): Fix last change
15683         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
15684         cursor-sensor-functions should be a list of functions.
15686 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
15688         Use gmm-called-interactively-p in Gnus
15689         * lisp/gnus/gnus-topic.el (gnus-topic-mode): Use gmm-called-interactively-p.
15691 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
15693         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
15694         (Bug#20321)
15695         * lisp/cus-start.el (read-buffer-function): Don't advertize
15696         iswitchb-read-buffer any more.
15697         (iswitchb): Don't tweak this obsolete group any more.
15699 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
15701         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file
15703         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings
15704         Adding a string after a constructor's argument list will use
15705         that string as the constructor function docstring.  If this string
15706         is absent but the struct itself was given a docstring, use that as
15707         the constructor's docstring.
15708         Fixes (bug#17284).
15710 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
15712         Deprecate `intangible' and `point-entered' properties
15713         * lisp/emacs-lisp/cursor-sensor.el: New file.
15714         * lisp/simple.el (pre-redisplay-functions): New hook.
15715         (redisplay--pre-redisplay-functions): New function.
15716         (pre-redisplay-function): Use it.
15717         (minibuffer-avoid-prompt): Mark obsolete.
15718         (redisplay--update-region-highlight): Adapt it to work as a function on
15719         pre-redisplay-functions.
15720         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
15721         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
15722         than point-entered to make the prompt intangible.
15723         * lisp/forms.el: Move `provide' calls to the end.
15724         (forms-mode): Don't use `run-hooks' on a local var.
15725         (forms--make-format, forms--make-format-elt-using-text-properties):
15726         Use cursor-intangible rather than `intangible'.
15727         (forms-mode): Enable cursor-intangible-mode.
15728         * lisp/isearch.el (isearch-mode): Use defvar-local.
15729         (cursor-sensor-inhibit): Declare.
15730         (isearch-mode): Set cursor-sensor-inhibit.
15731         (isearch-done): Set it back.
15732         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
15733         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
15734         any more.
15735         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
15736         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
15737         Add Edebug spec.
15738         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
15739         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
15740         inhibit-point-motion-hooks any more.
15741         (ses--cell-at-pos, ses--curcell): New functions, extracted from
15742         ses-set-curcell.
15743         (ses-set-curcell): Use them.
15744         (ses-print-cell, ses-setup): Use cursor-intangible instead of
15745         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
15746         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
15747         Use ses--cell-at-pos.
15748         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
15749         extracted from ses-command-hook.  Make them work with multiple windows
15750         displaying the same buffer.
15751         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
15752         Enable cursor-intangible-mode.
15753         (ses-command-hook): Remove cell highlight and mode-line update code.
15754         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
15755         Update for new name of text-property holding the cell name.
15756         (ses-rename-cell): Don't mess with mode-line-process.
15757         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
15758         cursor-sensor-functions property instead of point-entered.
15759         (erc-insert-timestamp-right, erc-format-timestamp):
15760         Use cursor-intangible rather than `intangible'.
15761         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
15762         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
15763         cursor-sensor-mode if needed.
15764         (erc-echo-timestamp): Adapt to calling convention of
15765         cursor-sensor-functions.
15766         (erc-insert-timestamp-right): Remove unused vars `current-window' and
15767         `indent'.
15768         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
15769         (gnus-update-group-mark-positions): Remove unused `topic' var.
15770         (gnus-group-insert-group-line): Remove unused var `header'.
15771         (gnus-group--setup-tool-bar-update): New function.
15772         (gnus-group-insert-group-line): Use it.
15773         (gnus-group-update-eval-form): Declare local
15774         dynamically-bound variables.
15775         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
15776         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
15777         (gnus-group-prepare-topics, gnus-topic-update-topic)
15778         (gnus-topic-change-level, gnus-topic-catchup-articles)
15779         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
15780         Use inhibit-read-only.
15781         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
15782         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
15783         * lisp/textmodes/reftex-index.el (reftex-display-index):
15784         Use cursor-intangible-mode if available.
15785         (reftex-index-post-command-hook): Check cursor-intangible.
15786         * lisp/textmodes/reftex-toc.el (reftex-toc):
15787         Use cursor-intangible-mode if available.
15788         (reftex-toc-recenter, reftex-toc-post-command-hook):
15789         Check cursor-intangible.
15790         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
15791         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
15792         (sgml-tags-invisible): Use with-silent-modifications and
15793         inhibit-read-only.  Enable cursor-sensor-mode.
15794         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
15795         calling convention of cursor-sensor-functions.
15796         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
15797         (table-point-entered-cell-hook, table-point-left-cell-hook):
15798         Don't autoload.
15799         (table-cell-entered-state): Remove var.
15800         (table--put-cell-point-entered/left-property)
15801         (table--remove-cell-properties):
15802         Use cursor-sensor-functions rather than point-entered/left.
15803         (table--point-entered/left-cell-function): Merge
15804         table--point-entered-cell-function and table--point-left-cell-function
15805         and adjust to calling convention of cursor-sensor-functions.
15807         Update ldef-boots.el
15809         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
15811         * doc/misc/eieio.texi: Don't advertize now obsolete constructs
15813         Collapse successive char deletions in the undo log
15814         * src/cmds.c (remove_excessive_undo_boundaries): New function,
15815         extracted from Fself_insert_command.
15816         (Fdelete_char, Fself_insert_command): Use it.
15817         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
15818         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
15820         xterm and OSC 52: Add NEWS entry, and tweak the code
15821         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition to
15822         top-level.
15823         (terminal-init-xterm-activate-set-selection): Set a terminal property.
15824         (xterm--set-selection): Use it instead of checking the value of
15825         `terminal-initted'.  Don't use string-bytes.
15827 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
15829         xterm.el: Implement OSC-52 functionality for setting the X selection
15830         * lisp/term/xterm.el (xterm-max-cut-length): New var.
15831         (xterm--set-selection, terminal-init-xterm-activate-set-selection): New funs.
15832         (terminal-init-xterm, xterm--version-handler): Use them.
15834 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
15836         Remove left over code from when we used an obsolete/loaddefs.el file
15837         * lisp/subr.el (do-after-load-evaluation): Remove left over code from when
15838         we used an obsolete/loaddefs.el file.
15840         * cedet/semantic/fw.el: Use declare.
15841         * cedet/semantic/fw.el (semantic-exit-on-input)
15842         (semanticdb-without-unloaded-file-searches): Use declare.
15843         (semantic-fw-add-edebug-spec): Remove.
15845         (completion-lisp-mode-hook): Use completion-separator-chars
15846         * lisp/completion.el (completion-lisp-mode-hook):
15847         Use completion-separator-chars rather than local key binding.
15849         * src/*.c: Set deactivate_mark buffer-locally
15850         (Bug#20260)
15851         * src/insdel.c (prepare_to_modify_buffer_1):
15852         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
15853         buffer-locally.
15855 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
15857         python.el: Keep symmetry on sexp navigation with parens
15858         (Bug#19954)
15859         * lisp/progmodes/python.el
15860         (python-nav--forward-sexp): Add argument skip-parens-p.
15861         (python-nav-forward-sexp, python-nav-backward-sexp)
15862         (python-nav-forward-sexp-safe)
15863         (python-nav-backward-sexp-safe): Use it.
15864         * test/automated/python-tests.el
15865         (python-nav-forward-sexp-1): Fix test.
15867 2015-04-12  João Távora  <joaotavora@gmail.com>
15869         Don't use `setq-local' in Gnus code
15870         This might break upstream builds with older Emacsen
15871         * lisp/gnus/message.el (message-mode): Use `set' and
15872         `make-local-variable' instead of `setq-local'.
15874 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
15876         Update Makefile.in's .PHONY dependencies
15877         * Makefile.in (change-history-commit, master-branch-is-current)
15878         (no-ChangeLog): Now phony.
15880         Remove configure's --with-mmdf option
15881         * configure.ac (MAIL_USE_MMDF): Remove.
15882         * etc/NEWS: Document this.
15883         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
15884         (Bug#20308)
15886         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
15887         That way, 'make install' won't think it's a man page.
15888         Reported by Ashish SHUKLA in:
15889         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
15891         Improve 'make change-history' prereq tests
15892         * Makefile.in (gen_origin): Fix to match what's in the master branch.
15893         (no-ChangeLog, master-branch-is-current): New rules.
15894         (change-history): Depend on them, to avoid similar future problems.
15895         Escape the local-variables string to pacify Emacs when editing
15896         Makefile.in.
15898 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
15900         * test/automated/package-test.el (with-package-test): Kill Packages buffer
15902         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt
15903         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
15904         "Upgrade" last, and use capitalized instead of all-caps.
15906         * lisp/emacs-lisp/package.el: Completely silence async operations
15907         (package--make-autoloads-and-stuff): Silence autoloads.
15908         (package--save-selected-packages): New function, silences
15909         `customize-save-variable'.
15910         (package--user-selected-p, package-install-from-buffer)
15911         (package-delete, package-install): Use it.
15912         (package-install-from-archive)
15913         (package-menu--perform-transaction): Silence.
15914         (package-menu-execute): Feedback when operation starts.
15916         Use delay-mode-hooks when visiting the init-file
15917         * lisp/emacs-lisp/package.el (package--ensure-init-file):
15918         delay-mode-hooks
15919         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks
15921         * lisp/files.el: Only message when saving if save-silently is nil
15922         (save-silently): New variable.
15923         (files--message): New function.
15924         (find-file-noselect, save-buffer, basic-save-buffer)
15925         (basic-save-buffer-2, save-some-buffers, not-modified)
15926         (append-to-file): Use them.
15928 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
15930         Support debug declarations in pcase macros
15931         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
15932         (pcase-UPAT): Use it.  Remove "`".
15933         (pcase--edebug-match-macro): New function.
15934         (pcase-defmacro): Support debug declarations.
15935         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
15936         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
15937         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>: Add debug declaration.
15939         pcase.el: Edebug support for `app' and vector patterns
15940         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
15941         (pcase-UPAT): Use it. Support `app' patterns.
15942         (pcase-QPAT): Support vector patterns.
15944         edebug.el: Disambiguate vector specifications
15945         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
15946         `(vector ...)' as a vector specification, not as a sublist.
15948         (gnus-summary-refer-thread): Don't clobber unread articles
15949         This fixes a bug where `A T' causes "random" articles to become marked
15950         as read.
15951         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
15952         gnus-newsgroup-unreads remains sorted.
15954         mouse-sel.el: Fix mouse-sel-get-selection-function
15955         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
15956         Use gui--last-selected-text-primary instead of no longer existing
15957         gui-last-selected-text.
15959         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
15961         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
15963 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
15965         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate
15967         * lisp/emacs-lisp/package.el (list-packages): Call refresh in right buffer
15969         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations
15970         (byte-compile--interactive): New var.
15971         (byte-compile--message): New function.
15972         (byte-compile-log-1, byte-force-recompile)
15973         (byte-recompile-directory, byte-recompile-file)
15974         (byte-compile-file, compile-defun)
15975         (byte-compile-file-form-defmumble, byte-compile)
15976         (byte-compile-file-form-defalias, display-call-tree): Use it.
15978         * lisp/files.el: Don't message when nothing happened
15979         (save-some-buffers, basic-save-buffer): Before messaging to say
15980         "nothing was saved" check if (called-interactively-p 'any).
15982 2015-04-12  João Távora  <joaotavora@gmail.com>
15984         Summary: Improve sexp-based movement in message-mode
15985         Works by giving citations and smileys a different syntax.  This helps
15986         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
15987         sexp-based movement.
15988         * lisp/gnus/message.el (message--syntax-propertize): New function.
15989         (message-mode): Set syntax-related vars.
15990         (message-smileys): New variable.
15991         * test/automated/message-mode-tests.el: New file
15993 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
15995         Use bool for boolean in window.c
15996         * src/window.c: Omit unnecessary static function decls.
15997         (adjust_window_count, select_window, Fselect_window)
15998         (window_body_width, Fwindow_body_height, Fwindow_body_width)
15999         (set_window_hscroll, check_window_containing, Fwindow_at)
16000         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
16001         (unshow_buffer, replace_window, recombine_windows)
16002         (add_window_to_list, candidate_window_p, next_window)
16003         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
16004         (Fget_buffer_window, Fdelete_other_windows_internal)
16005         (replace_buffer_in_windows_safely, set_window_buffer)
16006         (Fset_window_buffer, Fforce_window_update)
16007         (temp_output_buffer_show, make_parent_window)
16008         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
16009         (resize_frame_windows, Fsplit_window_internal)
16010         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
16011         (Fresize_mini_window_internal, mark_window_cursors_off)
16012         (window_scroll, window_scroll_pixel_based)
16013         (window_scroll_line_based, scroll_command, Fscroll_other_window)
16014         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
16015         (Fmove_to_window_line, Fset_window_configuration)
16016         (delete_all_child_windows, apply_window_adjustment)
16017         (set_window_fringes, set_window_scroll_bars)
16018         (Fset_window_vscroll, foreach_window, foreach_window_1)
16019         (compare_window_configurations, Fcompare_window_configurations):
16020         Prefer 'bool', 'true', and 'false' for booleans.
16021         * src/window.h (WINDOW_MODE_LINE_LINES)
16022         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
16024 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
16026         Speed up byte-compilation and autoload generation by avoiding mode-hooks
16027         This prevents emacs-lisp-mode-hook from being run everytime an
16028         autoload file is generated, which can account for a fraction of
16029         package installation time depending on the hooks the user has
16030         configured.
16031         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
16032         * lisp/emacs-lisp/autoload.el (autoload-find-file)
16033         (autoload-find-generated-file): Use delay-mode-hooks.
16035         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'
16036         (package-menu-refresh): Respect async and do new package checking.
16037         (list-packages): Use `package-menu-refresh' instead of repeating code.
16039         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help
16040         (package--quick-help-keys): New variable.
16041         (package--prettify-quick-help-key): New function.
16042         (package-menu-quick-help): Use it.
16044         * lisp/emacs-lisp/package.el: Fix initially wrong compat table
16045         (package--build-compatibility-table): require finder
16047         * test/automated/package-test.el: Fix new test
16049         * lisp/emacs-lisp/package.el: Silence async operations
16050         (package--silence): New variable.
16051         (package--message): New function.
16052         (package-import-keyring, package-refresh-contents)
16053         (package-compute-transaction, package-install, package-delete)
16054         (package-menu--perform-transaction, package-menu-execute): Use it.
16056         * test/automated/package-test.el: Test async functionality
16057         (package-test-update-archives-async): New test
16059 2015-04-11  Daiki Ueno  <ueno@gnu.org>
16061         Utilize `make-process' in epg.el
16062         * lisp/epg.el (epg-error-output): Abolish.
16063         (epg-context): New slot `error-buffer'.
16064         (epg--start): Use `make-process' and `make-pipe-process'.
16065         (epg--process-filter): Remove code separating stderr from stdout.
16066         (epg-wait-for-completion): Simplify `error-output' handling.
16067         (epg-reset): Dispose error buffer.
16069 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
16071         * .gitignore: Ignore doc temps and outputs.
16073         Port commit-msg to MSYS Bash+Gawk
16074         See Eli Zaretskii in:
16075         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
16076         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
16077         (cent_sign, print_at_sign, at_sign): Revert previous change.
16078         (print_at_sign): Prepend "BEGIN".
16079         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
16081         Port commit-msg to broken MS-Windows shell
16082         * build-aux/git-hooks/commit-msg (cent_sign):
16083         Just use UTF-8 here rather than ASCII + printf, as the latter fails
16084         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
16085         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
16087 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
16089         Support GnuTLS v3.4 and later on MS-Windows
16090         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
16091         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
16092         GnuTLS DLL to load according to value of libgnutls-version.
16093         (Bug#20294)
16095 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
16097         Minor quoting etc. fixes to misc manuals
16098         Fix some minor quoting and spacing issues.  Distinguish more
16099         clearly among grave accent and apostrophe (which are ASCII) and
16100         single quote (which is not).  Prefer the standard terms
16101         "apostrophe" and "grave accent" to alternative names that can be
16102         confusing.  Use apostrophes to single-quote ASCII text.
16103         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
16104         rather than approximating it in ASCII with grave accent.
16106 2015-04-11  Daiki Ueno  <ueno@gnu.org>
16108         Respect more keyword args in `make-process'
16109         * process.c (Fmake_process): Respect `:sentinel' and `:filter'
16110         keywords as documented.
16112 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
16114         Extract ChangeLog entries when committing a directory
16115         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
16116         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
16117         Add a FIXME comment.
16118         (log-edit-changelog-entries): Extract from
16119         `log-edit-changelog-entries', handle FILE being a directory
16120         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
16122 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
16124         Fix problems found by --enable-gcc-warnings
16125         * src/process.c (create_process, Fmake_pipe_process)
16126         (Fmake_network_process): Omit unused locals.
16128         Fix commit-msg to handle scissors lines
16129         * build-aux/git-hooks/commit-msg:
16130         Ignore every line after a scissors line, such as a line generated
16131         by 'git commit -v'.  Problem reported by Johan Bockgård in:
16132         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
16134         port commit-msg to Gawk 3.0.4 (1999)
16135         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
16136         (print_at_sign, at_sign): New vars.  Use them to avoid problems
16137         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
16138         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
16140         Have commit-msg report commit failure
16141         * build-aux/git-hooks/commit-msg: If the commit is aborted,
16142         say so.  Simplify by doing this at the end.  Problem reported
16143         by Eli Zaretskii in:
16144         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
16146 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16148         Clean up LDAP Configuration section of EUDC manual
16149         * doc/misc/eudc.texi: Combine indices.
16150         (LDAP Configuration): Use command markup.  Add index entries.
16151         Change formatting.  Wrap long lines.  Add noindent markup.
16153 2015-04-10  Daiki Ueno  <ueno@gnu.org>
16155         Add facility to collect stderr of async subprocess
16156         * src/w32.h (register_aux_fd): New function declaration.
16157         * src/w32.c (register_aux_fd): New function.
16158         * src/process.h (struct Lisp_Process): New member stderrproc.
16159         * src/process.c (PIPECONN_P): New macro.
16160         (PIPECONN1_P): New macro.
16161         (Fdelete_process, Fprocess_status, Fset_process_buffer)
16162         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
16163         (Fcontinue_process): Handle pipe process specially.
16164         (create_process): Respect p->stderrproc.
16165         (Fmake_pipe_process): New function.
16166         (Fmake_process): Add new keyword argument :stderr.
16167         (wait_reading_process_output): Specially handle a pipe process when
16168         it gets an EOF.
16169         (syms_of_process): Register Qpipe and Smake_pipe_process.
16170         * doc/lispref/processes.texi (Asynchronous Processes): Document
16171         `make-pipe-process' and `:stderr' keyword of `make-process'.
16172         * lisp/subr.el (start-process): Suggest to use `make-process' handle
16173         standard error separately.
16174         * test/automated/process-tests.el (process-test-stderr-buffer)
16175         (process-test-stderr-filter): New tests.
16176         * etc/NEWS: Mention new process type `pipe' and its usage with the
16177         `:stderr' keyword of `make-process'.
16179 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
16181         Minor quoting etc. fixes to lispref manual
16182         * doc/lispref/tips.texi (Documentation Tips):
16183         Distinguish more clearly among grave accent, apostrophe,
16184         and single quote.
16185         * doc/lispref/README, doc/lispref/buffers.texi:
16186         * doc/lispref/commands.texi, doc/lispref/control.texi:
16187         * doc/lispref/customize.texi, doc/lispref/display.texi:
16188         * doc/lispref/elisp.texi, doc/lispref/files.texi:
16189         * doc/lispref/frames.texi, doc/lispref/hash.texi:
16190         * doc/lispref/help.texi, doc/lispref/internals.texi:
16191         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
16192         * doc/lispref/markers.texi, doc/lispref/modes.texi:
16193         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
16194         * doc/lispref/os.texi, doc/lispref/positions.texi:
16195         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
16196         * doc/lispref/text.texi, doc/lispref/tips.texi:
16197         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
16198         Use American-style double quoting in ordinary text,
16199         and quote 'like this' when single-quoting in ASCII text.
16200         Also, fix some minor spacing issues.
16202 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
16204         Handle symlinked test directory in tramp-tests.el
16205         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
16206         (tramp--test-check-files): Use `file-truename' for directories.
16208 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
16210         Fix 'recenter' when visual-line-mode is turned on
16211         * src/window.c (Frecenter): Use the same code for GUI and TTY
16212         frames alike; use vmotion only for "initial" frames.  This is
16213         because vmotion doesn't support visual-line-mode.  Rewrite the
16214         'iarg >= 0' case to use move_it_* functions instead of using
16215         vmotion, for the same reason.  Fix the clipping of the argument
16216         value to support scroll-margin in all cases and avoid unwarranted
16217         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
16218         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
16219         which see.
16221 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
16223         * abbrev.el (define-abbrev-table): Refine last change.
16225         cl-lib.el: Partial revert of "2015-04-05 Rationalize c[ad]+r"
16226         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
16227         use of c[ad]+r", so as to keep the "cl-" prefix on all
16228         cl-lib definitions.
16230         * vhdl-mode.el (vhdl-prepare-search-2): Use inhibit-point-motion-hooks
16232         * lisp/cedet/semantic: Remove some dead code
16233         * lisp/cedet/semantic/util-modes.el
16234         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
16235         any more.
16236         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
16237         not supported any more.
16238         (semantic-safe): Use `declare'.
16239         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
16240         (semantic-tag-intangible-p): Remove unused functions.
16241         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
16242         Remove unused function.
16244         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
16245         (gnus-article-hide-text, gnus-article-unhide-text)
16246         (gnus-article-unhide-text-type): Remove special handling of
16247         `intangible' since that property is not used any more.
16248         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
16250 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
16252         Use the VC root in `log-edit-listfun'
16253         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
16254         `log-edit-listfun'.
16256 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
16258         Fix description of Unix time, mention new function.
16259         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
16260         Unix time.
16261         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
16262         (Basic Operations on Units): Mention `calc-convert-exact-units'.
16264 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
16266         * lisp/emacs-lisp/package.el: Use mode-line-process for notification
16268 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
16270         (log-edit-insert-changelog-entries): Don't add newline after the last entry
16271         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
16272         Don't add newline after the last entry.
16274 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
16276         css-mode.el: Add "not" pseudo-class
16277         (Bug#20267)
16278         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
16279         list of CSS pseudo-classes.
16281 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
16283         etc/NEWS: Add missing entry for "Stop messing with the EMACS env var"
16285 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
16287         Stop messing with the EMACS env var
16288         * misc.texi (Interactive Shell): Remove description of EMACS env var.
16290 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
16292         Adapt 'make change-history' to coding cookie
16293         * Makefile.in (change-history): Adjust to change of format of
16294         ChangeLog file, which now has a coding cookie before an indented
16295         copyright notice.
16297 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
16299         Adapt 'make change-history' to coding cookie
16300         * Makefile.in (change-history): Adjust to change of format of
16301         ChangeLog file, which now has a coding cookie before an indented
16302         copyright notice.
16304         gitlog-to-changelog coding cookie and mv -i
16305         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
16306         for copyright notice prototype, so that we get a proper "coding:"
16307         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
16308         existing ChangeLog.  Problems reported by Eli Zaretskii in:
16309         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
16311         Merge from gnulib
16312         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
16313         2015-04-09 gitlog-to-changelog: port to MS-Windows
16315 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
16317         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
16318         (Bug#20212)
16320 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
16322         Stop messing with the EMACS env var
16323         (Bug#20202)
16324         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
16325         * lisp/comint.el (comint-exec-1):
16326         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
16327         * lisp/progmodes/compile.el (compilation-start): Same and bring
16328         INSIDE_EMACS's format in line with other users.
16330         css-mode.el (css-smie-rules): Fix indentation after complex selectors
16331         (Bug#20282)
16332         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
16333         inner structure of selectors.
16335 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
16337         python.el: Indent docstring lines to base-indent
16338         (Bug#19595)
16339         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
16340         an initial patch.
16341         * lisp/progmodes/python.el
16342         (python-indent-context): Add :inside-docstring context.
16343         (python-indent--calculate-indentation): Handle :inside-docstring.
16344         (python-indent-region): Re-indent docstrings.
16345         * test/automated/python-tests.el (python-indent-region-5)
16346         (python-indent-inside-string-2): Fix tests.
16348         python.el: Increase native completion robustness
16349         (Bug#19755)
16350         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
16351         this and providing useful ideas.
16352         * lisp/progmodes/python.el
16353         (python-shell-completion-native-output-timeout): Increase value.
16354         (python-shell-completion-native-try-output-timeout): New var.
16355         (python-shell-completion-native-try): Use it.
16356         (python-shell-completion-native-setup): New readline setup avoids
16357         polluting current context, ensures output when no-completions are
16358         available and includes output end marker.
16359         (python-shell-completion-native-get-completions): Trigger with one
16360         tab only.  Call accept-process-output until output end is found or
16361         python-shell-completion-native-output-timeout is exceeded.
16363 2015-04-08  Samer Masterson  <samer@samertm.com>
16365         * lisp/eshell: Make backslash a no-op in front of normal chars
16366         (Bug#8531)
16367         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
16368         (eshell-parse-backslash): Return escaped character after backslash
16369         if it is special.  Otherwise, if the backslash is not in a quoted
16370         string, ignore the backslash and return the character after; if
16371         the backslash is in a quoted string, return the backslash and the
16372         character after.
16373         * test/automated/eshell.el (eshell-test/escape-nonspecial)
16374         (eshell-test/escape-nonspecial-unicode)
16375         (eshell-test/escape-nonspecial-quoted)
16376         (eshell-test/escape-special-quoted): Add tests for new
16377         `eshell-parse-backslash' behavior.
16379 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
16381         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
16382         after the file name.
16383         (Bug#20276)
16385 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
16387         Minor quoting etc. fixes to Emacs manual
16388         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
16389         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
16390         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
16391         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
16392         * doc/emacs/indent.texi, doc/emacs/macos.texi:
16393         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
16394         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
16395         * doc/emacs/search.texi, doc/emacs/trouble.texi:
16396         * doc/emacs/vc1-xtra.texi:
16397         Use American-style double quoting in ordinary text,
16398         and quote 'like this' when single-quoting in ASCII text.
16399         Also, fix some minor spacing issues.
16401         Minor quoting etc. fixes to elisp intro
16402         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
16403         American-style double quoting in ordinary text.  In ASCII text,
16404         consistently quote 'like this' instead of `like this', unless
16405         Emacs requires the latter.
16407 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
16409         * CONTRIBUTE: Mention log-edit-insert-changelog.
16411         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
16413 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
16415         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
16417 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
16419         (eieio-copy-parents-into-subclass): Fix inheritance of initargs
16420         (Bug#20270)
16421         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
16422         Fix inheritance of initargs.
16424 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
16426         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
16427         while dowloading information.
16429         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
16430         (package--ensure-init-file): Check file contents before visiting.
16431         (package-initialize): Call it.
16432         (package-install-from-buffer, package-install): Don't call it.
16434 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
16436         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800
16437         (Bug#17517)
16439 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
16441         Fix nasty scoping bug in tramp-cache.el
16442         * lisp/net/tramp-cache.el (tramp-flush-file-property): Fix nasty scoping bug.
16444 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
16446         Add notice to visual commands section
16447         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
16448         such as git call less with its -F option which omits pagination if
16449         the contents is less than one page long.  This interferes with
16450         eshell's visual (sub-)commands.
16452 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
16454         ffap: Support environment variable expansion in file names
16455         (Bug#19839)
16456         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
16457         environment variable expansion in file names.
16459 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
16461         Prefer double-quote to accent-grave in man pages
16463 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
16465         (Bug#20257)
16466         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
16468 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
16470         Update etc/PROBLEMS.
16471         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
16472         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
16473         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
16474         respectively); other minor updates and tweaks.  (Bug#20011)
16476 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
16478         Add doc strings for some Isearch state vars
16479         * lisp/misearch.el (multi-isearch-buffer-list)
16480         (multi-isearch-file-list): Add doc strings.
16481         (Bug#20232)
16483 2015-04-07  Alan Mackenzie  <acm@muc.de>
16485         Always mark "<" and ">" in #include directives with text properties.
16486         * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock "anchored
16487         matcher" with an invocation of c-make-font-lock-search-function to allow
16488         fontification when there's no trailing space on an "#include <..>" line.
16490 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
16492         Generate a ChangeLog file from commit logs
16493         * .gitignore: Add 'ChangeLog'.
16494         * build-aux/gitlog-to-changelog: New file, from Gnulib.
16495         * build-aux/gitlog-to-emacslog: New file.
16496         * CONTRIBUTE: Document the revised workflow.
16497         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
16498         instead of just special cases.
16499         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
16500         (ChangeLog, unchanged-history-files, change-history)
16501         (change-history-commit): New rules.
16502         * admin/admin.el (make-manuals-dist--1):
16503         Don't worry about doc/ChangeLog.
16504         * admin/authors.el: Add a FIXME.
16505         * admin/make-tarball.txt:
16506         * lisp/calendar/icalendar.el:
16507         * lisp/gnus/deuglify.el:
16508         * lisp/obsolete/gulp.el:
16509         * lwlib/README:
16510         Adjust to renamed ChangeLog history files.
16511         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
16512         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
16513         Remove obsolete discussion of merging ChangeLog files.
16514         New section "Maintaining ChangeLog history".
16515         * build-aux/git-hooks/pre-commit:
16516         Reject attempts to commit files named 'ChangeLog'.
16517         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
16518         * make-dist: Make and distribute top-level ChangeLog if there's a
16519         .git directory.  Distribute the new ChangeLog history files
16520         instead of scattered ChangeLog files.  Distribute the new files
16521         gitlog-to-changelog and gitlog-to-emacslog.
16522         (Bug#19113)
16524         Rename ChangeLogs for gitlog-to-changelog
16525         This patch was implemented via the following shell commands:
16526         find * -name ChangeLog |
16527         sed 's,.*,git mv & &.1,
16528         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
16529         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
16530         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
16531         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
16532         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
16533         sh
16534         git commit -am"[this commit message]"
16536 This file records repository revisions from
16537 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
16538 commit 0afbc5b2a2cda9fe12246bf62567162ae2577160 (inclusive).
16539 See ChangeLog.1 for earlier changes.
16541 ;; Local Variables:
16542 ;; coding: utf-8
16543 ;; End:
16545   Copyright (C) 2015 Free Software Foundation, Inc.
16547   This file is part of GNU Emacs.
16549   GNU Emacs is free software: you can redistribute it and/or modify
16550   it under the terms of the GNU General Public License as published by
16551   the Free Software Foundation, either version 3 of the License, or
16552   (at your option) any later version.
16554   GNU Emacs is distributed in the hope that it will be useful,
16555   but WITHOUT ANY WARRANTY; without even the implied warranty of
16556   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16557   GNU General Public License for more details.
16559   You should have received a copy of the GNU General Public License
16560   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.